AEM Adaptive Forms에서 자동화된 테스트 사용

Calvin SDK를 사용한 적응형 Forms의 자동화된 테스트

Calvin SDK는 응용 Forms 개발자가 응용 Forms을 테스트할 수 있는 유틸리티 API입니다. Calvin SDK는 Hobbes.js 테스트 프레임워크 맨 위에 빌드되어 있습니다. Calvin SDK는 AEM Forms 6.3 이상에서 사용할 수 있습니다.

이 자습서에서는 다음 내용을 만듭니다.

  • 테스트 세트
  • 테스트 세트에는 하나 이상의 테스트 사례가 포함됩니다
  • 테스트 사례에 하나 이상의 작업이 포함됩니다

시작하기

패키지 관리자를 사용하여 자산 다운로드 및 설치이 패키지에는 샘플 스크립트와 여러 개의 응용 Forms이 들어 있습니다.이러한 응용 Forms은 AEM Forms 6.3 버전을 사용하여 빌드됩니다. AEM Forms 6.4 이상에서 테스트하는 경우 AEM Forms 버전과 관련된 새 양식을 만드는 것이 좋습니다. 샘플 스크립트는 적응형 Forms을 테스트하는 데 사용할 수 있는 다양한 Calvin SDK API를 보여 줍니다. AEM Adaptive Forms을 테스트하는 일반적인 단계는 다음과 같습니다.

  • 테스트해야 하는 양식으로 이동합니다
  • 필드 값 설정
  • 적응형 양식 제출
  • 오류 메시지 확인

패키지의 샘플 스크립트는 위의 모든 작업을 보여 줍니다.
mortgageForm.js 코드를 살펴보겠습니다

var mortgageFormTS = new hobs.TestSuite("Mortgage Form Test", {
        path: '/etc/clientlibs/testingAFUsingCalvinSDK/mortgageForm.js',
        register: true
})

위의 코드는 새 테스트 세트를 만듭니다.

  • 이 경우 TestSuite의 이름은 ' Mortgage Form Test '입니다.
  • 테스트 세트가 포함된 js 파일에 대한 AEM의 절대 경로가 제공됩니다.
  • register 매개 변수를 ' true '로 설정하면 테스트 UI에서 테스트 세트를 사용할 수 있습니다.
.addTestCase(new hobs.TestCase("Calculate amount to borrow")
        // navigate to the mortgage form  which is to be tested
        .navigateTo("/content/forms/af/cal/mortgageform.html?wcmmode=disabled")
  .asserts.isTrue(function () {
            return calvin.isFormLoaded()
        })
노트

AEM Forms 6.4 이상에서 이 기능을 테스트하는 경우 새 적응형 양식을 만들어 테스트하기 위해 사용하십시오.패키지와 함께 제공된 적응형 양식을 사용하지 않는 것이 좋습니다.

적응형 양식에 대해 실행할 테스트 세트에 테스트 사례를 추가할 수 있습니다.

  • 테스트 사례를 테스트 세트에 추가하려면 TestSuite 개체의 addTestCase 메서드를 사용하십시오.
  • addTestCase 메서드는 TestCase 개체를 매개 변수로 사용합니다.
  • TestCase를 만들려면 hobs.TestCase(..) 메서드를 사용합니다.
  • 참고: 첫 번째 매개 변수는 UI에 표시되는 테스트 사례 의 이름입니다.
  • 테스트 사례를 만들고 나면 테스트 사례에 작업을 추가할 수 있습니다.
  • navigateTo, asserts.isTrue을 포함하는 작업은 테스트 사례에 작업으로 추가할 수 있습니다.

자동화된 테스트 실행

🔗Openthetestsuite테스트 세트를 확장하고 테스트를 실행합니다. 모든 것이 성공적으로 실행되면 다음 출력이 표시됩니다.

calvinsdk

샘플 테스트 세트 시도

샘플 패키지의 일부로 세 개의 추가 테스트 세트가 있습니다. 아래 그림과 같이 clientlibrary의 js.txt 파일에 적절한 파일을 포함하여 시도할 수 있습니다.

#base=.

scriptingTest.js
validationTest.js
prefillTest.js
mortgageForm.js

이 페이지에서는