Salesforce 테스팅 초보자용 튜토리얼

⚡ 스마트 요약

Salesforce Testing에서는 QA 팀이 세계 최고의 클라우드 CRM 내에서 사용자 지정 Apex 코드, Lightning UI 흐름, 통합 및 Einstein AI 기능을 검증하는 방법을 설명하고, 샌드박스 환경에서 플랫폼의 기본 동작을 테스트하는 함정을 피하는 방법을 안내합니다.

  • ☁️ 무엇이다 : 기본 Salesforce를 기반으로 구축된 구성, Apex 클래스 및 Lightning 구성 요소의 유효성을 검사합니다.
  • 🎯 왜 문제 : Apex 배포에는 75%의 코드 커버리지가 필요하며, Lightning 재작성은 기존 Classic 테스트 스위트를 무력화시킵니다.
  • 🧪 레벨 : 단위 테스트, 시스템 테스트, 사용자 승인 테스트(UAT), 운영 환경 테스트, 회귀 테스트, 그리고 샌드박스 전반에 걸친 통합 테스트를 수행합니다.
  • 🛠️ 주요 도구: Tricentis Salesforce, Testsigma, Provar, Copado 등을 위한 테스트 자동화 Selenium 맞춤형 위치 지정 장치 포함.
  • 🤖 AI 관점: 자가 복구 로케이터, Einstein 1 플랫폼 유효성 검사 및 Agentforce 워크플로가 이제 차세대 테스트 자동화를 주도합니다.

Salesforce 테스트 튜토리얼

Salesforce 란 무엇입니까?

Salesforce는 세계 최초의 클라우드 기반 CRM 시스템입니다. 1999년 3월, 마크 베니오프와 파커 해리스가 설립했습니다. 이 CRM 플랫폼의 목적은 사용자들이 모든 채널에서 고객에게 합리적인 가격으로 제품을 판매하고, 서비스를 제공하고, 마케팅하고, 분석하고, 소통할 수 있도록 지원하는 것입니다.

SFDC(Sales Force Dot Com)는 잠재 고객 및 기존 고객과의 관계를 관리할 수 있는 표준 기능을 제공합니다. 또한 직원 및 파트너와 소통하고 협업하는 동시에 멀티테넌트 클라우드에 데이터를 안전하게 저장할 수 있습니다. 현재 SFDC는 Sales Cloud, Service Cloud, Marketing Cloud, Data Cloud, 그리고 생성형 AI 기능을 지원하는 Einstein 1 플랫폼을 포괄합니다.

탑픽
세일즈 포스

Salesforce CRM은 APEX라는 플랫폼 개발 언어에 기반을 두고 있습니다. Salesforce 테스트를 통해 구성과 코드가 작동하는지 확인할 수 있습니다. 이 CRM을 통해 고객 충성도, 유지율, 만족도를 개선하여 지속적인 관계를 구축할 수 있었습니다.

Salesforce 방문

Salesforce 테스트란 무엇입니까?

Salesforce의 가장 큰 장점 중 하나는 대부분의 기본 기능을 기업의 요구 사항에 맞게 사용자 정의할 수 있다는 것입니다. Salesforce 테스트는 Apex 클래스, Lightning Web Components, Flow, Process Builder 및 통합을 포함하여 기본 Salesforce 환경에서 수행된 구성 및 사용자 정의를 검증하는 것입니다.

SalesForce 테스트

핵심 과제는 테스터가 Salesforce가 이미 자체적인 검증 및 릴리스 파이프라인에서 다루는 내장 기능이 아닌, 사용자 정의 코드를 검사하도록 하는 것입니다.

Salesforce CRM은 플랫폼 언어를 기반으로 구축되었습니다. Apex프런트엔드에는 Lightning Web Components(LWC)가 함께 제공됩니다. 이 플랫폼에는 내장된 단위 테스트 프레임워크가 포함되어 있어 개발자는 배포 전에 코드를 검증할 수 있습니다.

왜 Salesforce 테스트를 해야 합니까?

Salesforce 테스트가 필요한 주요 이유는 다음과 같습니다.

  • 샌드박스를 새로 고칠 때마다 구성 및 Apex 코드가 제대로 작동하는지 확인합니다.
  • 이는 완성된 시스템이 고객의 비즈니스 프로세스를 처음부터 끝까지 지원하는지 검증합니다.
  • 이는 시스템 가동 전에 초기 빌드가 합의된 요구 사항을 충족하는지 확인하는 절차입니다.
  • 문제를 조기에 발견하여, 해결이 쉽고 비용도 절감할 수 있도록 해줍니다.
  • 테스트 케이스 상태를 기반으로 한 기능 흐름 보고서는 팀이 애플리케이션 기능을 파악하는 데 도움이 됩니다.
  • 플로우 빌더와 프로세스 빌더 기능은 작동 조건 및 동작에 대해 검증할 수 있습니다.
  • 워크플로우를 사용하면 에스컬레이션 규칙과 같은 시간 기반 이벤트의 기능을 검증할 수 있습니다.

Salesforce 용어

  • 번개처럼 빠른 경험: 현재 Salesforce의 기본 UI는 Lightning Web Components를 기반으로 구축되었으며, Salesforce Classic은 단계적으로 폐지되고 대부분의 조직이 Lightning으로 마이그레이션하고 있습니다.
  • 비주얼포스: HTML과 유사한 태그 기반 마크업 언어를 사용하여 사용자 지정 UI를 구축하기 위한 기존 프레임워크로, 이전 사용자 지정 기능에 대해서는 여전히 지원됩니다.
  • 앱교환: Salesforce의 온라인 마켓플레이스로, 사용자는 맞춤형 애플리케이션과 확장 프로그램을 검색하고 설치할 수 있습니다.
  • 꼭대기: Salesforce 플랫폼에서 흐름 및 트랜잭션 제어문을 실행하는 데 사용되는 강력한 형식의 객체 지향 언어입니다.
  • 아인슈타인 1 플랫폼 / 에이전트포스: Salesforce의 예측 및 생성 기능과 자율 에이전트를 위한 AI 레이어는 QA의 검증도 거쳐야 합니다.

Salesforce 테스트 유형

수동 테스트

수동 소프트웨어 테스트는 기존 방식을 사용하여 Salesforce.com 앱을 테스트합니다. QA 팀은 수동 테스트를 통해 Lightning Experience와 Salesforce Mobile 모두에서 기능 테스트, 정상 작동 경로 테스트, 통합 테스트, 회귀 테스트 및 시스템 테스트를 실행할 수 있습니다.

자동화 테스트

자동화 테스트는 프로그램을 사용하여 Salesforce.com 또는 Force.com 앱을 테스트합니다. 일반적인 자동화 도구에는 다음과 같은 것들이 있습니다. Selenium, Provar, Copado 로봇 테스트, Tricentis Salesforce 및 Testsigma용 테스트 자동화. 최신 스택은 Lightning DOM 변경 사항을 처리하기 위해 AI 기반 자가 복구 로케이터를 점점 더 많이 추가하고 있습니다.

Salesforce의 테스트 수준

이 Salesforce 테스트 튜토리얼에서는 일반적으로 다음과 같은 수준이 적용됩니다.

Salesforce의 테스트 수준

단위 테스트

  • Apex 개발자들이 클래스와 트리거를 테스트하는 테스트 메서드를 작성하여 수행합니다.
  • 이는 대상 환경에서 코드가 안정적으로 실행되도록 영향을 받는 데이터 레코드 수를 평가합니다.
  • Apex 코드를 프로덕션 환경에 배포하려면 전체 코드 커버리지가 최소 75% 이상이어야 하며, 모든 트리거의 커버리지가 최소 1% 이상이어야 합니다.

시스템 테스트:

  • Salesforce 컨설턴트 팀이 수행했습니다.
  • 시스템의 기술적 프로세스를 처음부터 끝까지 테스트합니다.
  • 특정 예상 출력값을 기반으로 테스트 스크립트를 사용합니다.
  • 워크플로, 유효성 검사, 할당 및 승인 프로세스와 같은 자동화된 규칙의 문제를 해결합니다.

UAT 테스트:

  • 애플리케이션을 매일 사용할 비즈니스 사용자들이 실시합니다.
  • 시스템이 비즈니스 프로세스를 지원하는 능력을 테스트합니다.
  • 실제 비즈니스 시나리오를 기반으로 한 테스트 스크립트를 따릅니다.
  • 최종 목표는 시스템이 목적에 적합하다는 고객의 승인을 받는 것입니다.

생산 테스트:

  • 실제 운영 환경에서 시스템 테스트를 반복합니다.
  • 샌드박스 환경에서 프로덕션 환경으로 설정 파일과 코드가 올바르게 배포되었는지 확인합니다.
  • 출시 전에 시간이 허락한다면, 클라이언트는 배포 후 UAT 스크립트를 다시 실행해야 합니다.

회귀 테스트 :

  • 의 주요 목표 회귀 테스트 새로운 릴리스가 기존 사용자 프로세스에 영향을 미치는지 여부를 확인하는 것입니다.
  • 이 기능은 모든 기능 개선, 버그 수정 또는 Salesforce 시즌별 릴리스(봄, 여름, 겨울) 후에 실행됩니다.
  • 사용자가 현재 프로세스에 영향을 미칠 수 있는 변경 사항 목록을 제공하면 영향을 받는 흐름을 다시 검증할 수 있습니다.

Salesforce 테스트 프로세스

Salesforce 테스트 프로세스는 다른 웹 기반 애플리케이션 테스트와 유사합니다. 테스터는 프로젝트 중에 구축된 사용자 정의 가능한 기능에 대한 명확한 관점을 가져야 하며, Salesforce의 내장 기능보다는 사용자 정의 코드에 초점을 맞춰야 합니다.

개발자와 테스터는 각자의 목적에 맞게 샌드박스 환경(Developer, Developer Pro, Partial Copy, Full)을 사용해야 합니다. 샌드박스에서 테스트된 코드는 변경 세트, Salesforce DX 또는 Copado 및 Gearset과 같은 DevOps 도구를 통해 프로덕션 환경으로 배포됩니다. QA 테스터는 프로젝트 참여 전에 Salesforce의 핵심 용어를 이해하고 있어야 합니다.

Salesforce 테스트 과제

Salesforce 테스트는 쉬운 과정이 아닙니다. 테스터는 다음과 같은 여러 가지 어려움에 직면합니다.

  • Lightning Web Components, Visualforce, Service Cloud Console 및 Experience Cloud 사이트와 같은 고급 기능을 테스트하는 것은 복잡합니다.
  • 팀은 종종 Lightning Experience 및 Salesforce 모바일 앱에 맞게 기존 Classic 테스트를 다시 만들거나 리팩토링해야 합니다.
  • 일부 표준 기능은 사용하지 않더라도 제거할 수 없습니다.
  • 샌드박스가 새로 고쳐지거나 시즌별 릴리스가 배포될 때 UI 테스트가 중단될 수 있습니다.
  • 자동화된 테스트는 모든 샌드박스 환경에서 일관되게 실행되어야 합니다.
  • Salesforce 요소 ID는 조직마다 다르고 릴리스마다 변경되기 때문에 안정적인 필드 로케이터를 구축하는 것은 어렵습니다.
  • 아인슈타인 예측 및 에이전트포스 에이전트와 같은 AI 기능을 검증하려면 새로운 데이터 기반 및 프롬프트 기반 접근 방식이 필요합니다.

최고의 Salesforce 테스트 연습

  • 실제 사용자 프로필 및 권한 세트로 테스트를 실행하세요.
  • 보고서 및 대시보드 기능의 유효성을 검증하는 테스트 데이터를 준비하십시오.
  • 모든 릴리스 주기에서 기능 테스트, UI 테스트, 회귀 테스트 및 시스템 통합 테스트를 결합하십시오.
  • Lightning 및 Visualforce 페이지의 동적인 특성에 특히 주의해야 합니다. 요소들이 동시에 로드되지 않을 수 있으므로 명시적인 대기 시간을 사용해야 합니다.
  • 자동화는 다음과 같은 도구를 사용하여 수행해야 합니다. Selenium, 프로바르, Tricentis또는 Testsigma는 자가 복구 위치 탐지기와 함께 사용됩니다.
  • 모든 테스트 시나리오에서 양의 흐름과 음의 흐름을 모두 고려하십시오.
  • 테스트 데이터에서 사용자 역할, 프로필 및 권한 집합을 구축하여 각 페르소나에 대해 워크플로를 검증할 수 있도록 합니다.

Salesforce 테스터의 역할 및 책임

Salesforce 테스터의 중요한 역할과 책임은 다음과 같습니다.

  • 모든 주요 기능이 요구 사항에 따라 작동하는지 확인하기 위해 스모크 테스트를 실시합니다.
  • 긍정적 및 부정적 테스트 시나리오를 모두 생성합니다.
  • 동등분할 및 경계값 분석을 수행합니다.
  • 애플리케이션을 사용하여 기능을 이해하고 기능 맵을 구축합니다.
  • 개발팀과 원활한 소통 채널을 유지합니다.
  • Salesforce 조직을 위해 구축된 사용자 지정 가능한 기능들을 이해합니다.
  • 데이터 일관성을 보장하기 위해 역할 기반 테스트 케이스를 실행합니다.
  • Salesforce를 타사 애플리케이션과 통합할 때 호환성 테스트를 수행합니다.
  • 부하 테스트 도구에 익숙해지기 JMeter 결과가 일관되지 않을 수 있는 복잡한 흐름을 검증하기 위해.
  • Apex, SOQL 및 Lightning 구성 요소에 대한 실무 지식.

Salesforce 테스트 자동화 도구

Salesforce에서 자동화된 기능 테스트를 수행하는 것은 대부분의 테스트 페이지가 동적이기 때문에 어렵습니다. 테스터는 현재 유용하면서도 향후 릴리스에도 견딜 수 있는 견고한 자동화 프레임워크를 구축해야 합니다.

아래에는 제가 추천하는 널리 사용되는 Salesforce 테스트 도구가 나열되어 있습니다.

1) Tricentis Salesforce용 테스트 자동화

특히 감사합니다. Tricentis Salesforce용 테스트 자동화 Salesforce 환경을 위한 탄력적인 UI 테스트 개발을 가속화합니다. AI 기반의 스마트 로케이터는 자체 복구 및 자동 개선 기능을 제공하여 유지 관리를 최소화하고 Lightning 릴리스 전반에 걸쳐 테스트 안정성을 보장합니다.

Tricentis

특징:

  • 엔드투엔드 시나리오 검증: 고객은 웹 애플리케이션에서 Salesforce로, 그리고 다시 웹 애플리케이션으로 이어지는 완전한 엔드투엔드 시나리오를 검증할 수 있습니다.
  • 민첩한 팀 확장성: 다양한 기술 수준을 가진 애자일 팀은 테스트 및 팀 규모의 성장을 제어하고 관리하는 데 도움이 되는 기능을 통해 테스트 운영을 효율적으로 확장할 수 있습니다.
  • Apex Code 유효성 검사를 위한 실행: 테스트 단계에서 Apex 코드를 실행하여 쿼리 결과를 검증합니다.
  • API 테스트 통합: API 테스트를 UI 흐름과 원활하게 통합하세요.

방문 Tricentis >>


2) 시그마 테스트

시그마 테스트 이 플랫폼은 Apex에 대한 깊은 지식 없이도 Salesforce 테스트를 간소화하는 코드 없는 테스트 자동화 플랫폼입니다. Selenium 전문성이 뛰어납니다. 특히 표준 및 사용자 지정 Salesforce 구성을 변경 또는 배포 후 검증하는 팀에 직관적인 테스트 설계 방식이 매우 효과적이며, 기존 스크립팅 프레임워크의 복잡성을 없애준다는 것을 알게 되었습니다.

시그마 테스트

특징:

  • CodeSalesforce UI 플로우 자동화 감소: Apex 코드를 작성하지 않고도 일반적인 영어 표현과 유사한 단계로 Salesforce 테스트를 구축할 수 있습니다. Selenium 코드입니다. 저는 이 코드를 사용하여 기술적 배경이 다양한 팀원들을 온보딩했습니다.
  • 사용자 정의 개체 및 워크플로 테스트: 사용자 정의 개체, 워크플로 및 통합 테스트에 대한 포괄적인 지원을 제공했습니다. 이를 통해 플랫폼 업데이트 후 조직별 구성이 올바르게 작동하는지 확인할 수 있었습니다.
  • 데이터 기반 테스트 기능: 다양한 사용자 역할, 프로필 및 데이터 세트를 체계적으로 테스트하세요. 저는 이것이 다양한 권한 수준에서 동작을 검증하는 데 매우 유용하다는 것을 알았습니다.
  • 엔드투엔드 시나리오 지원: Salesforce와 외부 애플리케이션 또는 API를 포함하는 포괄적인 엔드투엔드 시나리오를 지원합니다.
  • 상세 보고서 및 디버깅 로그: Salesforce 변경으로 인해 발생하는 문제를 신속하게 파악할 수 있도록 포괄적인 보고서와 로그를 생성합니다.

Testsigma 웹사이트 방문하기 >>

14 일 무료 평가판

Salesforce 테스트 도구를 사용하는 이유

  • 이 도구들을 사용하면 테스트 시간을 최대 75%까지 절약하고 자동화 비용도 상당 부분 절감할 수 있습니다.
  • 이들은 향상된 Apex 테스트 실행, 상세한 테스트 범위 및 클래스 범위 보고서를 제공합니다.
  • 다음과 같은 업계 최고의 자동화 도구를 활용할 수 있습니다. Selenium JMeter.
  • 다양한 환경과 여러 브라우저에 대한 테스트 시나리오를 자동으로 생성합니다.
  • 테스트 케이스를 끊김 없이 기록하고 재생하세요.
  • 배포 전후의 모든 유형의 작업을 자동화합니다.
  • 테스트 스크립트에서 데이터를 분리하고 여러 데이터 세트를 사용하여 보강합니다.

샘플 Salesforce 테스트 시나리오

  • 테스트 케이스 01: 잠재 고객 또는 기존 고객의 연락처 정보를 수집하세요.
  • 테스트 케이스 02: 연락처는 활성 또는 비활성으로 표시할 수 있습니다.
  • 테스트 케이스 03: 기업은 고객 또는 잠재 고객으로 표시될 수 있습니다.
  • 테스트 케이스 04: 웹 기반 리드 생성 양식을 통해 잠재 고객 정보를 수집할 수 있습니다.
  • 테스트 케이스 05: 견적서상의 가격은 0일 수 없습니다.
  • 테스트 케이스 06: 거래가 성사되면 이메일이 발송되며, 반송된 이메일은 처리됩니다.
  • 테스트 케이스 07: 타사 소프트웨어와의 연동이 정상적으로 작동합니다.
  • 테스트 케이스 08: Bill서비스는 예상대로 작동합니다.
  • 테스트 케이스 09: 연락처, 영업 기회, 리드 관리에 기록 중복이 발생하지 않습니다.
  • 테스트 케이스 10: Salesforce 모바일 앱에서 모바일 워크플로는 예상대로 작동합니다.
  • 테스트 케이스 11: 권한이 없는 사용자는 파일이나 접근이 제한된 기록에 접근할 수 없습니다.

AI와 아인슈타인은 어떻게 레샤인가?ping 세일즈포스 테스트

이제 AI는 Salesforce에서 최우선 테스트 고려 사항입니다. Einstein 1 플랫폼은 예측 점수, 생성형 답변, Agentforce 자율 에이전트를 Sales 및 Service Cloud에 통합하며, 이러한 각 기능에는 고유한 검증 전략이 필요합니다. 테스터는 기존 UI 흐름과 함께 예측 정확도, 프롬프트 근거, 가이드라인을 확인하는 데이터 기반 테스트 케이스를 설계해야 합니다.

툴링 측면에서 최신 Salesforce 자동화 프레임워크는 릴리스 간 Lightning DOM 변경 사항을 감지하고 선택기를 자동으로 복구하는 AI 기반 자체 복구 로케이터를 사용합니다. TricentisProvar, Copado Robotic Testing, Testsigma는 모두 이러한 기능을 다양하게 제공합니다. 이러한 도구들을 합성 테스트 데이터 및 시각적 회귀 검사와 함께 사용하면 유지 관리 비용을 급증시키지 않고도 높은 테스트 커버리지를 유지할 수 있습니다.

Salesforce 테스트: 클라이언트 과제

고객들은 Salesforce 테스트를 제대로 수행하는 방법을 잘 몰라서 불안해하는 경우가 많으며, 이로 인해 현실과 동떨어진 잘못된 정보들이 생겨나기도 합니다.

여기에 그들 중 일부는 다음과 같습니다

클라이언트 문제 해법
저는 Salesforce 시스템 사용법을 모릅니다. 클라이언트는 시스템 기능이 아닌 프로세스를 테스트해야 합니다.
시스템에 모든 데이터가 없으면 테스트를 진행할 수 없습니다. 테스트에는 몇 개의 샘플 레코드만 있으면 됩니다.
저는 일상 업무를 테스트하고 관리할 여유 시간이 없습니다. 프로젝트 관리자와 지속적으로 연락하고 설계 및 시공 단계 동안 정기적인 진행 상황 보고 통화에 참여하세요.

자주 묻는 질문

Salesforce는 프로덕션 환경에 배포하기 위해 전체 Apex 코드 커버리지가 최소 75% 이상이어야 하며, 모든 트리거에 대해 최소 1%의 커버리지가 필요합니다. 테스트는 성공적으로 실행되어야 하며, 새 코드에 대해 seeAllData=true 설정을 사용할 수 없습니다.

대부분의 새로운 개발은 기본 UI인 Lightning Experience를 대상으로 합니다. Salesforce는 여러 기능에 대해 Classic 버전을 점진적으로 지원 종료하고 있으므로, 고객 조직이 Classic 버전을 계속 사용하는 경우가 아니라면 테스트 계획에서 Lightning Web Components, Flow 및 Salesforce Mobile을 우선적으로 고려해야 합니다.

예. Selenium Salesforce에서는 작동하지만 Lightning DOM의 불안정성 때문에 순수 XPath 로케이터는 취약합니다. 일반적으로 팀은 여러 방법을 결합합니다. Selenium Lightning Testing Service, 사용자 지정 대기 시간 및 AI 자체 복구 로케이터를 사용하거나 Provar와 같은 Salesforce 전용 도구를 사용할 수 있습니다. Tricentis.

레이블이 지정된 데이터 세트를 사용하여 Einstein 예측을 검증한 다음 예측 범위와 설명을 확인합니다. Agentforce의 경우 프롬프트 근거, 안전장치, 액션 호출 및 대화 흐름을 테스트합니다. 기능 검사와 함께 편향, 오류 및 보안 검토를 수행합니다.

Tricentis Salesforce용 테스트 자동화 도구인 Provar, Copado Robotic Testing, Testsigma는 모두 AI 기반 자가 복구 로케이터와 스마트 테스트 생성 기능을 제공합니다. 이러한 기능은 시즌별 릴리스 기간 동안 Lightning DOM 변경 사항을 반영하고 스크립트 유지 관리 부담을 크게 줄여줍니다.

개발자 및 개발자 프로 샌드박스에는 메타데이터만 저장됩니다. 부분 복사 샌드박스에는 샘플 데이터가 포함되고, 전체 샌드박스에는 프로덕션 데이터와 메타데이터가 모두 저장됩니다. 사용자 승인 테스트(UAT) 및 회귀 테스트에는 전체 또는 부분 복사 샌드박스를 사용하고, 단위 테스트 및 통합 테스트에는 개발자 샌드박스를 사용하십시오.

매 스프린트 배포 후, Salesforce 시즌별 릴리스(봄, 여름, 겨울) 전, 그리고 주요 샌드박스 업데이트 후에 회귀 테스트를 실행하십시오. 핵심 영업, 서비스 및 통합 흐름에 우선순위를 두고, 그 다음 AI 기능 및 사용자 지정 Lightning 구성 요소로 테스트 범위를 확장하십시오.

이 게시물을 요약하면 다음과 같습니다.