如何在katalon studio中将WebElement转换为TestObject?

roh*_*ani 4 java groovy automated-tests selenium-webdriver katalon-studio

我有 WebElement,我必须使用 groovy 脚本将其转换为 katalon 中的 Testobject。

例如

List<WebElement> WEs = WebUI.executeJavaScript("return document.querySelector('#email').parentElement", [])
Run Code Online (Sandbox Code Playgroud)

现在我想将 WEs[0] 转换为 Katalon 接受的 TestObject。

如果您对此有任何想法,请告诉我。

Mat*_*rše 5

没有直接的方法将 WebElements 转换为 TestObjects。根据这个论坛问题,您可以创建一个函数来获取网络元素的xpath

protected String getXPathFromElement(RemoteWebElement element) {
    String elementDescription = element.toString();
    return elementDescription.substring(elementDescription.lastIndexOf("-> xpath: ") + 10, elementDescription.lastIndexOf("]"));
}
Run Code Online (Sandbox Code Playgroud)

然后使用给定的 xpath 创建一个新的测试对象:

protected TestObject fromElement(RemoteWebElement element) {
    TestObject testObject = new TestObject();
    testObject.addProperty("xpath", ConditionType.EQUALS, getXPathFromElement(element));
    return testObject;
}
Run Code Online (Sandbox Code Playgroud)


笔记:

对于其他方法(测试对象 -> WebElement),请使用

WebUiCommonHelper.findWebElement(test-object, timeout)
Run Code Online (Sandbox Code Playgroud)