【发布时间】:2017-09-26 18:03:54
【问题描述】:
我正在使用关键词驱动和数据驱动的框架。 预期字符串来自 excel 表,实际来自网页 即使两个变量打印完全相同的字符串,测试脚本仍然失败。 它对没有空格的字符串(如“Resign”)执行“PASS”,但对带有空格的字符串(如“Property Search”)执行“FAIL” 下面是打印PASS直到“Resign”的结果,然后它失败了 忽略用于调试的数字。 我还包括了结果中使用的 xpath。
结果生成
by.xpath:html/body/div[2]/div/div[2]/ul/li[1]/ul/li[1]
存在工具提示文本:- Revals
雷沃斯
1
By.xpath: html/body/div[2]/div/div[2]/ul/li[1]/ul/li[2]/a[contains(text(),'Managed Client Accounts')]
存在工具提示文本:- 托管客户帐户
托管客户帐户
1
by.xpath:html/body/div[2]/div/div[2]/ul/li[1]/ul/li[3]
存在工具提示文本:- 辞职
辞职
1
By.xpath: .//[@id='dashboard-dropdown']/li[4]/a
存在工具提示文本:- 出色的 AR
出色的增强现实
4
By.xpath:.//[@id='menuCreateDashboard']
存在工具提示文本:- 管理仪表板
管理信息中心
4
by.xpath:html/body/div[2]/div/div[2]/ul/li[2]/a
存在工具提示文本:- 属性搜索
物业搜索
4
by.xpath:html/body/div[2]/div/div[2]/ul/li[3]/a
存在工具提示文本:- 税收资源数据库
税务资源数据库
4
By.xpath: html/body/div[2]/div/div[2]/ul/li[4]/a[contains(text(),'快速链接')]
存在工具提示文本:- 快速链接
快速链接
4
这是代码:
public String verify_Text(String locatorType, String value, String data){
try
{
By locator;
locator = locatorValue(locatorType, value);
System.out.println(locator);
WebElement element = driver.findElement(locator);
//WebElement element = driver.findElement(By.cssSelector("#header>h1 a"));
// Get tooltip text
String toolTipText = element.getText();
System.out.println("Tool tip text present :- " + toolTipText);
System.out.println(data);
// Compare toll tip text
if(toolTipText.contentEquals(data))
{
System.out.println("1");
return PASS;
}
}
catch(Exception e)
{
LOG.error(Executor.currentSheet + ":" + e);
getScreenshot("verify_Link", data);
System.out.println("3");
return FAIL;
}
getScreenshot("verify_Link", data);
System.out.println("4");
return FAIL;
}
【问题讨论】:
-
请显示
System.out.println("Tool tip text present :- " + toolTipText);和System.out.println(data);结果 -
加上两者都是 Stringsuse
.equals()而不是比较 2 个字符串。 -
好吧,我已经尝试了所有的字符串比较方法,但它似乎不适用于某些数据,我也会用结果输出更新我的查询。如果你发现了一些事情,请告诉我谢谢
-
Okie 更新了查询!
-
使用.equals()/后的结果是什么
标签: java css string selenium xpath