如何将__LINE__中的行号插入到Perl中的测试名称中?

时间:2012-08-24 21:34:07

标签: perl testing interpolation literals

当我尝试这个测试用例时:

$sel->is_text_present_ok("foo", ("$testname: line ", __LINE__));

我想在日志中得到这个:

ok 1 - is_text_present, "foo", Testcase-881: line 54

但我在命令行上受到了谴责:

  

您将测试命名为“54”。您不应该使用数字进行测试   名。非常混乱。

我想我应该以某种方式将该文字插入到字符串中,但我无法理解它的底部。我用逗号和引号尝试了各种配置。

有没有办法得到我正在寻找的结果?

1 个答案:

答案 0 :(得分:7)

只需使用串联operator .

$sel->is_text_present_ok("foo", "$testname: line " . __LINE__);

仅供参考,您可以这样插入:"$testname: line ${\(__LINE__)}"