2011-08-04 6 views
1

최근 CodeIgniter 1.7.2에서 만든 PHP 웹 사이트의 단위 테스트를 시작했습니다. PHPUnit을 사용하여 웹 사이트를 테스트하고 싶습니다.PHPUnit 및 CodeIgniter 작업 1.7.2

그래서 저는 인터넷 검색을하고 CodeIgniter 용 라이브러리가 있음을 알게되었습니다 & PHPUnit Bridge : http://www.foostack.com/foostack/. 모든 단계를 따라 코드를 실행했지만 콘솔에서 테스트 케이스를 실행하면 기본 컨트롤러가 실행되고 페이지의 html이 콘솔에 인쇄됩니다.

정확히 어떤 일이 발생했는지 알려주실 수 있습니까? 아니면 잘못된 것이 있습니까? 또한 foostack 라이브러리를 사용하지 않고 모델을 테스트 할 다른 아이디어가 있다면 제안하십시오. 다른 세부 정보가 필요한 경우 알려 주시기 바랍니다.

미리 감사드립니다.

답변

0

CodeIgniter는 PHPUnit을 사용하여 코드를 단위 테스트 할 수있는 이상적인 프레임 워크가 아닙니다. 나는 FooStack을 한번 사용해 보았지만 성공적이었다.하지만 너무 성가시다. CI 객체로 인해 CI에서 격리 된 모델을 테스트 할 수있는 방법은 없습니다.

당신은 그러나 SimpleTest을 시도 할 수 있습니다, 여기에 당신을 도울 수있는 좋은 라이브러리입니다 : CI와 함께 제공되는 단위 테스트 라이브러리가 있다는 것보다 https://github.com/ericbarnes/codeigniter-simpletest

기타 -하는 전체 유닛 테스트 프레임 워크 근처 어디에서, 그러나 당신이 기본적인 주장,보고 등을하도록 해준다.

만약 당신이 정말로 단위 테스트에 대해 진지하게 생각한다면, 나는 이것을 가치있는 프레임 워크로 옮길 것을 제안한다. Symfony, Kohana, Lithium 등.

+0

당신의 의견을 보내 주셔서 감사합니다 .i는 또한 phpunit을 CI와 통합하려고했지만, 나는 "HTML" 내 홈 페이지. 그래서 거기에 phpunit.Need 함께 CI 모델을 테스트하는 다른 방법을 것 같아요 tht에 대한 몇 가지 연구 개발을 할. 나는 근래에 간단한 테스트를 읽었지만 절대로 시도하지 않았다. 나는 phpunit을 좋아해서 tht 만 가지고 갔다. 어쨌든 나는 그것을 할 수있는 쉬운 방법을 찾으면 .. 여기에 그것을 게시 할 것이다. – sagar27

+0

CI_Model 클래스를 확장하지 않고도 모델을 작동시킬 수 있습니다. 대신 생성자를 사용하여 CI god 객체를 삽입하고 단위 테스트에서 해당 객체를 조롱하십시오. –

+0

PHPUnit 용 후크 및 커스텀 부트 스트랩 파일을 사용하여 더 나은 솔루션을 찾았습니다. 내 github 코드를 추가했습니다 : https://github.com/phpfour/CodeIgniter 꽤 좋은 작품! –