2012-08-24 55 views
2

當我嘗試這個測試用例:如何在__LINE__中插入行號到Perl中的測試名稱中?

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

我想在日誌中得到這樣的:

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

,但我得到斥責在命令行上:

你命名你的測試'54'。您不應該使用數字作爲您的測試 名稱。很混亂。

我想我應該插入文字到字符串不知何故,但我不能到底部。我用逗號和引號嘗試了各種配置。

有什麼方法可以得到我要找的結果嗎?

+0

又見'caller'功能,如果你想有你測試框架總是給出行號。 – derobert

+0

@derobert你可以舉一個例子 – justintime

回答

7

只需使用串聯operator.

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

僅供參考,你可以像這樣插它:"$testname: line ${\(__LINE__)}"

+0

男人,我知道這將是猥瑣的簡單。非常感謝! – kyoob

+1

......但不要「像這樣插入它 – Borodin

+2

@Borodin爲什麼不是,什麼是更好的選擇 – Schwern

相關問題