분리된 테스트 데이터로 플로 테스트
테스트 설정 방법을 포함하는 Apex 클래스의 전용, 재사용 가능한 테스트 데이터를 사용하여 레코드 트리거 및 자동 실행 플로를 테스트합니다. 테스트 시나리오가 실행되면 분리된 테스트 데이터가 Apex 단위 테스트처럼 롤백되므로 조직의 실시간 데이터는 그대로 유지됩니다.
필수 Edition
| 지원되는 Edition 보기. |
| 필요한 사용자 권한 | |
|---|---|
| Einstein 및 Agentforce for Flow를 포함하여 Flow Builder에서 사용할 수 있는 모든 플로 유형, 요소 및 기능을 사용하여 플로를 열고, 편집하고, 만들고, 활성화하거나 비활성화하려면 다음을 수행합니다. | 플로 관리 |
테스트를 위해 조직 데이터를 사용할 경우 누구나 해당 데이터를 변경할 수 있으며 테스트가 실패할 수 있습니다. 레코드 ID는 Sandbox와 프로덕션 간에 다르므로 한 환경에서 전달되는 테스트는 다른 환경에 배포할 때 실패할 수 있습니다. Apex Test Setup이 런타임 시 데이터를 생성하는 것처럼 테스트 시나리오 실행 시 분리된 테스트 데이터를 생성합니다. 테스트 데이터는 일관되게 유지되므로 환경 전체에서 배포할 수 있습니다.
테스트 모드에서 플로를 열려면 테스트 시나리오 설정 및 실행(베타)을 참조하십시오.
-
테스트 시나리오 동안 사용 가능한 레코드를 삽입하는
@isTest주석과@testSetup방법을 사용하여 Apex 클래스를 만듭니다.예를 들어, 이 Apex 클래스는 테스트 계정을 만듭니다. Apex 테스트 설정 방법 사용을 참조하십시오.
@isTest global class CommonTestSetup { @testSetup global static void setup() { List<Account> accts = new List<Account>(); for (Integer i = 1; i <= 2; i++) { accts.add(new Account(Name = 'Test Account ' + i)); } insert accts; } }데이터 사일로에 있는 분리된 테스트 데이터를 사용할 경우 입력 레코드에서 분리된 테스트 데이터에서 만든 레코드를 참조해야 합니다. 해당 데이터에 레코드가 없는 경우 오류 메시지가 표시됩니다. 조직 데이터를 사용하는 테스트 시나리오와 달리 Flow Builder의 분리된 테스트 데이터에서 입력 레코드의 필드 값을 사용자 정의할 수 없습니다. 레코드는 키 필드별로 분리된 테스트 데이터에서 선택되고 그대로 사용됩니다. Apex
@testSetup메서드에서 모든 키 필드를 채웁니다. 나중에 다음 단계에서 키 필드를 선택합니다. - 레코드 트리거 플로 또는 자동 실행 플로를 엽니다.
- Test 를 클릭하여 테스트 모드(베타)를 입력합니다.
-
시나리오 테스트 자동화를 켜고 데이터 소스 선택에서 Data Silo에서 실행을 선택합니다.
필수 Apex 테스트 설정 필드가 표시됩니다. 만든 Apex
@testSetup클래스를 선택합니다. 테스트 시나리오에서는 Apex 클래스를 데이터 소스로 사용하며, 롤백을 통해 조직 데이터가 변경되지 않습니다.
-
테스트 시나리오에서 사용되는 각 개체에 대한 키 필드를 선택합니다.
분리된 개체 외부 키 필드는 분리된 테스트 데이터에서 고유한 레코드를 식별합니다. 테스트 레코드 ID는 매번 실행 후에 변경되므로 해당 키 필드는 입력 레코드를 런타임 시 분리된 테스트 데이터에 일치시킵니다. 예를 들어,
Phone필드를 키 필드로 사용하여 계정 레코드를 식별합니다.
- 트리거 레코드 또는 입력 값을 분리된 테스트 데이터의 레코드와 일치하도록 설정합니다.
-
예상 결과(어설션)에 대해 어설션을 구성한 다음, 시나리오 저장 및 시나리오 실행을 클릭합니다.
테스트 시나리오는 실시간 조직 데이터 대신 데이터 사일로의 분리된 테스트 데이터에 대해 실행됩니다.
