문제

할 수 있습니다 몇 가지 좋은 자동화된 테스트 스위트 프레임 워크를 위한 Perl?

도움이 되었습니까?

해결책

그것은 정말에 따라 무엇을 하려고 시도하고 있지만,여기에 몇 가지를 위해 배경이 많습니다.

첫째,당신은 일반적으로 작성 테스트 프로그램으로 테스트::상 또는 테스트::간단한 핵심으로 테스트 프로그램:

use Test::More tests => 2;

is 3, 3, 'basic equality should work';
ok !0, '... and zero should be false';

내부적으로 테스트::빌라하는 출력 이러한 테스트 결과를 누르(테스트 프로토콜을 아무것도).테스트::구(얇은 래퍼 탭::을 활용),를 읽고 해석하여 탭을 말하고,당신이 당신의 테스트를 통과하거나지 못했습니다."증명"도구 위에서 언급되는 번들로 제공 테스트::을 활용,그래서 그의 말을 저장하는 것이 위에서 t/디렉터리(표준 Perl 테스트 directory)로"숫자입니다.t",다음을 실행할 수 있습니다 그것은 이 명령:

prove --verbose t/numbers.t

또는 실행하는 모든 테스트에서는 디렉터리(반복적으로 가정하면,당신을 내려 하위 디렉토리):

prove --verbose -r t/

(--자세한 정보는 물론,선택 사양).

주석으로 사용하지 않 TestUnit.많은 사람들이 그것을 권장이지만,그것은 버려진 오래 전에 시간과 통합되지 않으로 현대적인 테스트 도구입니다.

다른 팁

체크아웃 CPAN 테스터, 는,많은 도구에 대한 자동화된 테스트합니다.의 대부분에 있어야 하는 CPAN 그래서 당신이 할 수있을 수정하여 고객의 요구를 만족시킵니다.그것은 또한 매우 쉽게 자신의 쓰기 테스터를 사용하여 탭::다.

정확하게 당신이 필요로하는 무엇을 어떻게 당신은 노력하고 그것을 맞으로 귀하의 프로세스?

만큼 당신이 사용하는 테스트를 생성하는 탭(아무것도 테스트 프로토콜)산출을 찾을 수 있습이 유용합니다: http://sourceforge.net/projects/smolder

당신이 볼 연기?

"전체가 금연 시험 Aggregator 사용하여 개발자와 테스터를 업로드(자동 또는 수동으로)그리고 뷰 전체가 금연/회귀분석을 사용하여 테스트를 아무것도 테스트 프로토콜입니다.상세정보 및 경향 그래프로 및 알림을 제공한 이메일을 통해 또는 원자니다."

나는 당신을 올바르게 당신이 찾고 있는 TAP::구

를 사용하는 경우 ExtUtils::MakeMaker모듈::축, 다음 실행할 수 있습니다 귀하의 모든 테스트를 자동으로 명령을 입력하여"인 테스트"또는"빌"테스트하는 것이 실행을*.t 파일로서 귀하의 프로젝트의 t/하위 폴더에 저장됩니다.

를 사용하지 않는 경우 이러한,다음 사용할 수 있습니다 TAP::구 자동 실행 여러 개의 테스트를 스크립트가 있습니다.

실제로 쓰기 테스트,사용 테스트::상 나의 모듈을 다른 사람이 여기에 제안.

를 실행할 수 있는 모든 파일 테스트 에 대해 수동으로 테스트

당신은 확실히 원하는 것을 사용하여 증명(을 실행하 테스트)및/또는 모듈::를 구축(빌드의 코드를 실행하 테스트를 사용하여 동일한 테스트를 활용 코드하는 증명을 사용하여 내부적으로 합니다.)

당신이 말했:

"내가 찾는 것은 이상의 자동화된 framework 할 수 있는 증분 테스트 구축/검사 등"

아직 완전히 확인하신 후에.으로 다른 사람을 언급할 것을 기반으로 하는 테스트::구/릅니다.대부분의 펄 테스트 커뮤니티 사용하는 프레임 워크-그래서 당신은 훨씬 더 많은 지원(고 유용한 기존 코드)사용하여니다.

할 수 있습니 조금 더 이야기에 대해 당신이 무엇을 의미"증분 테스트 구축/검사"?

나는 당신이 원하는 나누 테스트가 그룹으로서는 당신은 단지 실행하는 특정 시험의 특정 상황에서?

거기에 몇 가지 방법으로 수행할 수 있습니다.가장 간단한 것을 사용하여 파일시스템을 분할 디렉토리 테스트 그래서 당신은 같은 것들:

core/
 database.t
 infrastructure.t
style/
  percritic.t
ui/
  something.t
  something-else.t

그래서...할 수 있습니다 다음 명령을 사용하여 라인"증명"도구를 모두 실행,또는 특정 디렉토리,등등.

증명이 유용한 많은 옵션을 선택할 수 있도록 실행되는 테스트와에서는 주문(예:같은 것들을 가장 최근에 실패한 주문).이 자체적으로 모든 것-아마 당신을 얻을 향해 무엇을 해야 합니다.

(BTW 그것의 중요한 최근 버전을 다운로드 받아 테스트::간단/을 증명합니다.에서 CPAN.최근 버전에는 훨씬,훨씬 더 많은 기능).

만약 당신의하는 OO 사고 방식,또는 이전 버전의 경험을 프레임워크할 수 있는 살펴보기 테스트::클래스는 Perl 향후 버전에는 교환하는 데이터는 프레임워크의 빌드에서 최고의 탭/테스트::구층이다.나는 그것이 매우는 것보다 훨씬 더 PerlUnit-그러나 내가 말하는 것이기 때문에 나는 그것을 썼:-)

체크아웃 맛있는 일부에 대한 더 많은 정보에서 테스트::클래스 http://delicious.com/tag/Test::Class

가 아닌 경우신 후에 수동으로 조금 더 자세히 어떤 기능을 원하는가?

환호

Adrian

개인적으로,그 다음과 같이 테스트::장,그 기본적으로 테스트::더 많은 몇 가지 추가 멋진 기능이 있습니다.

테스트 framework 의 선택입니다 테스트::구, 는 관리 제어 테스트를 진행하는 결과를 수집하는,등등.

다양한 모듈을 제공하기 위해 존재하는 특정 종류의 시험,가장 일반적인에서 발견 될 수 있는 테스트::간단한테스트::상 (둘 다에 포함되어 시험-간단한 배포).체 테스트 네임스페이스에 CPAN 은 전문화 장치-테스트 모듈에,대부분의 설계를 실행할 아래에서 테스트::다.

컨벤션,테스트에 저장되 t/디렉터리 프로젝트의,그리고 각각의 테스트 파일을 사용하여 파일 확장자가 있습니다.t;테스트는 일반적으로 실행해

 prove t/*.t

모듈 배포판 일반적으로 포함하는 대상 이름이'test'실행하는 테스트 스위트 설치하기 전에.기본적으로 CPAN 설치하는 과정에서는 테스트를 통과한 후에는 빌드하기 전에 모듈을 설치됩니다.

나에 대한 테스트::상,또는 일반적으로,아무것도 출력

지금,우리가 사용하 테스트::더 하지만 현재 문제는 우리가 실행하의 모든 테스트 파일을 수동으로 테스트합니다.내가 찾는 것은 이상의 자동화된 framework 할 수 있는 증분 테스트 구축/검사 등등.

래퍼 테스트::상에 대한 이상적인 것이지만 아무것도 더 많은 기능적인 것무 문제가 없다는 것입니다.

내가를 통해 PerlUnit 이는 데 도움이 되는지 확인해 볼.

은 당신이 알고 있는'증명'유틸리티(응용 프로그램에서::을 증명)?당신이 말할 수 있는 그것을 실행한 모든 테스트에서 반복적으로 지정된 디렉터리와 함께 또는없이 상세 정보,등등.

자동화된 테스트를 위한 펄에서 살펴보 테스트::구, 을 포함하는 prove 도구입니다.

prove 도구를 실행할 수 있습으로 다음과 같은 명령을 실행합니다:

prove -r -Ilib t

이 recursivly 테스트는 모든*.t 에서 파일을't/'디렉토리를 추가하는 동안, lib 를 포함한 경로에 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top