Gibt es eine Möglichkeit, Tests für Perl-Aufrufe zu schreiben, die Sie erwarten zu sterben? Ich möchte überprüfen, dass bestimmte Anrufe mit schlecht formatierten Eingaben absterben.Planung für Todesfälle in Perl-Tests
sub routine_a {
my $arg = shift;
die if $arg eq 'FOO';
print "routine_a: $arg\n";
}
sub routine_b {
my $arg = shift;
die if $arg eq 'BAR';
print "routine_b: $arg\n";
}
sub test_all {
assert(routine_a("blah"));
assert(routine_b("blab"));
assert_death(routine_a("FOO"));
assert_death(routine_b("BAR"));
}
Ich finde [Test :: Fatal] (http://search.cpan.org/perldoc?Test%3a%3aFatal) werden einfacher zu benutzen als Test :: Ausnahme, wie ich in der [meine Beantworten Sie eine frühere Frage zum selben Thema] (http://stackoverflow.com/a/4522172/8355). – cjm