use strict;
use warnings;
use Time::HiRes qw(sleep);
use Test::WWW::Selenium;
use Test::More "no_plan";
use Test::Exception;
use Text::Table;
our ($a,$critical);
print "Enter text:";
$a = <>;
print "Enter critical value:";
$critical = <>;
print $a;
print $critical;
|
|
|
|
|
$sel->click_ok("//div[\@class='x-combo-list-inner']/div[8]");
my $v7 = $sel->get_text("//div[\@class='x-combo-list-inner']/div[8]");
print($v7 . "\n");
print($critical . "\n");
if ($critical eq $v7)
{
perform operations
}
else
{
don't perform operation
}
我从cmd进入的临界值'Last 45 Days'
&amp;从div [8]&amp;存储在上述代码中的v7也是('Last 45 Days')
。但是当它遇到if循环时,它不会执行操作。有没有其他方法可以比较这些字符串?
答案 0 :(得分:2)
您可能在$ critical上附加了换行符。尝试用chomp($ critical);
删除它答案 1 :(得分:0)
正如Kludas所说,你很可能在$critical
结尾处有换行符。您当然没有显示删除它的代码,get_text
返回的字符串不太可能以换行符结尾。
我建议您使用Data::Dump
(注意 NOT Data::Dumper
)来显示您的字符串。一旦你安装了模块,这只是一个问题
use Data::Dump;
dd $critical;
dd $v7;
并且任何非printables将显示为适当的可见转义码。