当我尝试这个测试用例时:
$sel->is_text_present_ok("foo", ("$testname: line ", __LINE__));
Run Code Online (Sandbox Code Playgroud)
我想在日志中得到这个:
ok 1 - is_text_present, "foo", Testcase-881: line 54
Run Code Online (Sandbox Code Playgroud)
但我在命令行上受到了谴责:
你将测试命名为'54'.您不应该使用数字作为测试名称.很混乱.
我想我应该以某种方式将该文字插入到字符串中,但我无法深入到它的底部.我用逗号和引号尝试了各种配置.
有没有办法得到我正在寻找的结果?
我需要运行一个sc.exe在TeamCity中作为构建过程的一部分调用的应用程序.这个小应用程序打开了通往Sauce Labs的隧道,应用程序本身运行正常.此应用程序的一个功能是当它启动并准备好通过隧道支持Sauce上的测试时,它会输出消息Sauce Connect is up, you may now start your tests. 应用程序需要继续在本地运行以保持隧道打开.
sc.exe在建立连接后不会退出,但我需要构建步骤来发送退出代码,以便它可以知道隧道已启动,我们已准备就绪.我希望Perl脚本exit与0离开的sc.exe过程中运行.我在Perl中写了这个小跑者脚本:
#!/user/bin/perl
use strict;
use warnings;
my $result = `sc -v --pac file://browsermob.js -u $ENV{SAUCE_USER_NAME} -k $ENV{SAUCE_API_KEY}`;
for (my $i = 0; $i < 60; $i++) {
if ($result =~ /Sauce Connect is up, you may start your tests\./) {
print $result;
exit 0;
}
sleep(1);
}
die "Did not detect open Sauce Connect tunnel.";
Run Code Online (Sandbox Code Playgroud)
现在,请记住,当我从终端运行它时,反引号中的系统调用确实有效,并且输出来自sc.exe那个情况下的预期.当我运行这个Perl脚本时,隧道确实启动了 …