如何从元素中提取文本,找到元素但文本为空?
How to extract text from element, element found but text is empty?
我正在 Android 设备上进行移动自动化测试,我正在尝试使用 Xpath 和 Selenium 从元素中提取特定文本。我已经尝试 Javascript,在行前添加睡眠等,但没有成功。代码找到了元素,但它没有 return 预期的值“5+5”,而是 return 空值,因为它没有找到任何值。问题是什么?我怎样才能提取我需要的值?
这是一些代码:
HashMap<String, String> scrollObject = new HashMap<>();
JavascriptExecutor js = driver;
WebElement myelement = driver.findElement(By.xpath(AppConstant.ANDROID_COMBINAZIONE_VALUE));
String text = scrollObject.put("element", ((RemoteWebElement) myelement).getText());
//String value = seetest.hybridRunJavascript(AppConstant.ANDROID_COMBINAZIONE_VALUE, 0, "return arguments[0].text");
System.out.println(text + ":**********************************************");
Assert.assertEquals(text.replaceAll("\s", ""), comb.replaceAll("\s", ""));
你确定它是return空值吗?
据我了解,您的代码似乎不正确,null return 表示该地图先前将 null 与键相关联。
String text = scrollObject.put("element", ((RemoteWebElement) myelement).getText());
注意:这总是会产生 Null 结果。
请查看以下内容link以深入了解:
补丁:
scrollObject.put("element", ((RemoteWebElement) myelement).getText());
String text = scrollObject.get("element");
完整代码:
HashMap<String, String> scrollObject = new HashMap<>();
JavascriptExecutor js = driver;
WebElement myelement = driver.findElement(By.xpath(AppConstant.ANDROID_COMBINAZIONE_VALUE));
scrollObject.put("element", ((RemoteWebElement) myelement).getText());
String text = scrollObject.get("element");
//String value = seetest.hybridRunJavascript(AppConstant.ANDROID_COMBINAZIONE_VALUE, 0, "return arguments[0].text");
System.out.println(text + ":**********************************************");
Assert.assertEquals(text.replaceAll("\s", ""), comb.replaceAll("\s", ""));
我正在 Android 设备上进行移动自动化测试,我正在尝试使用 Xpath 和 Selenium 从元素中提取特定文本。我已经尝试 Javascript,在行前添加睡眠等,但没有成功。代码找到了元素,但它没有 return 预期的值“5+5”,而是 return 空值,因为它没有找到任何值。问题是什么?我怎样才能提取我需要的值?
这是一些代码:
HashMap<String, String> scrollObject = new HashMap<>();
JavascriptExecutor js = driver;
WebElement myelement = driver.findElement(By.xpath(AppConstant.ANDROID_COMBINAZIONE_VALUE));
String text = scrollObject.put("element", ((RemoteWebElement) myelement).getText());
//String value = seetest.hybridRunJavascript(AppConstant.ANDROID_COMBINAZIONE_VALUE, 0, "return arguments[0].text");
System.out.println(text + ":**********************************************");
Assert.assertEquals(text.replaceAll("\s", ""), comb.replaceAll("\s", ""));
你确定它是return空值吗?
据我了解,您的代码似乎不正确,null return 表示该地图先前将 null 与键相关联。
String text = scrollObject.put("element", ((RemoteWebElement) myelement).getText());
注意:这总是会产生 Null 结果。
请查看以下内容link以深入了解:
补丁:
scrollObject.put("element", ((RemoteWebElement) myelement).getText());
String text = scrollObject.get("element");
完整代码:
HashMap<String, String> scrollObject = new HashMap<>();
JavascriptExecutor js = driver;
WebElement myelement = driver.findElement(By.xpath(AppConstant.ANDROID_COMBINAZIONE_VALUE));
scrollObject.put("element", ((RemoteWebElement) myelement).getText());
String text = scrollObject.get("element");
//String value = seetest.hybridRunJavascript(AppConstant.ANDROID_COMBINAZIONE_VALUE, 0, "return arguments[0].text");
System.out.println(text + ":**********************************************");
Assert.assertEquals(text.replaceAll("\s", ""), comb.replaceAll("\s", ""));