在此处输入图像描述
我尝试了以下代码,但不起作用。
a = WebUI.executeJavaScript('document.getElementsByTagName("input")[29].value', null)
Thread.sleep(5000)
System.out.println(a)
这个问题有太多错误,我甚至不知道从哪里开始。。。
通过使用JavaScript(对于99%的测试用例来说,这是一种测试代码气味(来获取value
,您试图实现什么?
为什么不做以下操作:
- 创建一个指向有问题对象的
TestObject
,最好在对象存储库中 - 为测试对象提供定位器。默认情况下,这是一些xpath
在您的情况下,给它xpath
(//input)[29]
然而,我建议您为它想出一个更有意义的选择器(例如,通过一些class
、data-*
属性、name
来选择它(,它更容易维护
- 使用内置的Keyword获取属性,如下所示:
WebUI.getAttribute(findTestObject('[whateverYourTestObjectNameIs]'), 'value')
- 这只是一个很好的代码设计,但将其写入该util的一些自定义关键字:
// import statements here. Ctrl + Shift + O on your keyboard to bring those in
public final class GeneralWebUIUtils {
public static final String Value = "value";
public static final String GetValue(TestObject to) {
return WebUI.getAttribute(to, this.Value);
}
}
另外,为什么要将运行时暂停一些硬编码的时间量?这是一种测试代码的味道。住手!
你到底在等什么?对你正在等待的东西使用WebUI
关键字,如果这些关键字都不够,hmu和我可能会有你想要的等待方法。。。。
哦,看看你链接的图片,看起来你解决了自己的问题。