2016-07-26 6 views
1

php 프로젝트를 구성 할 수있는 방법이 있습니까? (PHP 5.3), PHP 5.4, PHP 5.5, PHP 5.6 및 PHP 7 ?phpunit을 사용하여 PHP 5.3/5.4의 설계 테스트를

프로젝트 5.4에서 PHP 5.4, PHP 5.5, PHP 5.6 및 PHP 7을 테스트하도록 travis를 구성한 후 내 프로젝트에서 phpunit require-dev 종속성을 5.4로 설정했을 때이 문제가 발생했습니다. phpunit 5.4는 PHP 5.6 및 PHP 7에서만 작동하기 때문에 실패합니다. 그러나 phpunit 4.8은 PHP 7에서 작동하지 않습니다. *으로 종속성을 설정하면 phpunit 5.4가 이름 공간을 사용하고 phpunit 4.8에서 밑줄 이름을 사용하므로 도움이되지 않습니다.

동일한 코드 기반에서 모든 버전 (PHP 5.3), PHP 5.4, PHP 5.5, PHP 5.6 및 PHP 7에서 phpunit 테스트를 실행할 수 있도록 프로젝트를 구성하는 방법이 있습니까? (네임 스페이스는 5.3.0에서 소개되었습니다.)

답변

1

모든 PHP 5.x의 경우, \PHPUnit_Framework_TestCase으로 확장하도록 테스트 케이스를 구성 할 수 있습니다. PHPUnit 5.7은 밑줄 이름과 네임 스페이스 이름 모두와 호환되지만, 최신 버전의 PHPUnit에서 글로벌 밑줄 이름을 삭제하여 PHP 7에서 작동합니다.

더 이상 PHP 5.5 이전 버전을 테스트하지 않으려면 \PHPUnit\Framework\TestCase으로 전환하는 것이 안전합니다.