2017-11-14 1 views
0

나는 Codeception을 사용하는 법을 배우고 있습니다. Writing a Sample Scenario 설명서에는 $scenario 변수가 나와 있습니다.

MyAcceptanceTester 클래스를 구현한다고 말하면 내 액터의 동작을 제어하는 ​​데 사용할 수있는 일종의 매개 변수 변수입니까? 아니면 예약 코드 패러다임에서 변수를 예약 했습니까? 그렇다면 어떻게 작동합니까?

테스트 요구 사항은 다음과 같습니다. 여러 도메인 이름에서 동일한 동작 순서를 실행해야합니다. 하나의 도메인 이름이 언어별로 사용되는 경우이지만 모든 코드는 동일한 코드베이스에 있으며 동일한 Apache 서버에서 제공됩니다. 각 도메인은 자체 PHP 코드를 가질 수 있지만 다른 도메인과 공통 코드를 공유합니다. 따라서, Codeception 테스트 코드는 고유 한 코드 기반에 위치하게됩니다.

$scenario 변수를 통해 MyAcceptanceTester에서 테스트 할 각 URL/URI를 전달할 생각이었습니다. 이것이 올바른 진행 방법입니까? 또는 $scenario이 예약 되었기 때문에 각 도메인에 대해 MyAcceptanceTester을 서브 클래 싱해야합니까?

답변

1

*Cept.php 파일의 $scenario 변수는 실제로 AcceptanceTester 클래스를 구성하기 위해 할당 된 변수입니다. 어떻게 작동하는지 검사하기 위해 AcceptanceTester 클래스 파일을 test/_support/AcceptanceTester.php에 열 수 있습니다. AcceptanceTester 클래스가 표시되면 Codeception\Actor 클래스에서 확장됩니다. 이 source을 따라 Actor에 의해 사용 된 변수 $scenario을 읽으십시오.

사례 정보.

여러 도메인 이름에서 동일한 동작 순서를 실행해야합니다.

StepObject (documentation)이라는 기술을 구현할 수 있습니다. 따라서 각 웹 사이트의 테스트는 최근에 만든 StepObjet에서 연장됩니다.

는 도움이되기를 바랍니다.

관련 문제