테스트 디렉토리가 t/
인 일반적인 MakeMaker 모듈이 있는데, 예를 들어 prove -I lib t/my-test.t
과 같은 테스트 파일 하나를 실행할 수 있습니다.단일 Perl 유닛 테스트 서브를 어떻게 디버깅 할 수 있습니까?
내 테스트는 다음과 같이 (유효 펄에서 modulino 기술로) Test::Class
및 Test::More
및 서브 우퍼를 사용
use strict;
use warnings;
use base 'Test::Class';
use Test::More;
__PACKAGE__->runtests() unless caller;
sub set_up : Test(setup) {
# ...
}
sub test_something : Test {
is(MyModule::some_sub(1), 1);
}
# ...more test subs...
가 지금은 문제의 표시 테스트 서브를 조사하기 위해 펄 디버거를 사용하려면 내 모듈. .t
파일의 다른 모든 테스트 서브를 실행하지 않고 디버거에만 test_something
을 실행하고 싶습니다.
에는 이러한 옵션이없는 것으로 보입니다.
perl -d -I lib t/my-test.t
실행 모든 테스트, 제가 설정 방법 대신 __PACKAGE__->runtests()
의 다음 실제 시험 방법 호출 내 modulino 변경하지 않는 : 나는 코드를 수정하지 않고 하나 개의 테스트 서브를 실행할 수있는 방법
unless (caller) {
set_up();
test_something();
done_testing();
}
를?
프로그램의 일부만 테스트하거나 스크립트를 실행할 수는 없습니다. – ikegami
@ikegami 내가 원하는 하위를 호출하여 할 수있는 일은 많지만 테스트를 수정하지 않고 할 수있는 방법을 찾고 있습니다. – Robert
프로그램에서 모든 테스트를 실행하며 프로그램의 일부만 실행할 수는 없습니다. – ikegami