현재 sf 1.4 프로젝트에서 sfPhpUnitPlugin으로 작업 중이며 플러그인 테스트에 문제가 있습니다.동일한 플러그인의 서로 다른 응용 프로그램과 관련된 두 가지 테스트 스위트를 어떻게 가질 수 있습니까?
여러 응용 프로그램에서 사용할 수있는 플러그인이 있으며 응용 프로그램마다 테스트 스위트를 갖고 싶습니다. 조명기와 테스트를 특정 어플리케이션과 쉽게 비교할 수 있도록 테스트를 어떻게 구성 할 수 있습니까?
testunit:
sfPhpunitPlugin:
filter:
- {path: 'backend', ext: '.php'}
: 나는 각 응용 프로그램의 app.yml이 뭔가를 추가 할 수 있다고 가정
<?php
class {className} extends sfBasePhpunitTestSuite
implements sfPhpunitContextInitilizerInterface
{
/**
* Dev hook for custom "setUp" stuff
*/
protected function _start()
{
$this->_initFilters();
}
/**
* Dev hook for custom "tearDown" stuff
*/
protected function _end()
{
}
protected function _initFilters()
{
$filters = sfConfig::get('app_sfPhpunitPlugin_filter', array());
foreach ($filters as $filter) {
PHPUnit_Util_Filter::addDirectoryToFilter($filter['path'], $filter['ext']);
}
}
public function getApplication()
{
return '{application}';
}
}
:
내 스위트 룸은 이것을 sfPhpunitPlugin 함께 제공되는 템플릿의 복사본입니다
하지만 path 키가 어떻게 보이는지 확인하는 데 어려움이 있습니다. include_path에 addDirectoryToFilter()
이 호출 될 때 테스트중인 플러그인의 경로가 포함되어 있지 않기 때문에 전체 경로 여야한다는 인상 아래에 있습니다. 팁이 있습니까? 아직이 작업을 수행 한 사람이 있습니까?
앱이'getApplication()'메소드로 정의되어 있습니까? 귀하의 방법으로, 내가 (질문 참조) 내 애플 리케이션에 추가 한 구성은 여전히 필요하지 않습니까? – greg0ire
필터 기능은 응용 프로그램 컨텍스트 설정과 관련이 없습니다. 다음 플러그인 버전에서는 phpunit 3.5 버전에서 필터 동작이 변경 되었기 때문에 제거 할 것입니다. –
플러그인 구성에 app.yml이 더 이상 사용되지 않습니다. 대신 플러그인에 phpunit.yml이라는 자체가 있습니다. –