首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用CSS或xpath获取文本的值?

如何使用CSS或xpath获取文本的值?
EN

Stack Overflow用户
提问于 2019-09-13 15:52:58
回答 1查看 685关注 0票数 0

我需要验证页面上的文本,而不是给出文本的实际值,Katalon给出了我使用的CSS错误。

下面是我创建的关键字:

代码语言:javascript
运行
复制
@Keyword
    def usersText(){

        WebDriver driver = DriverFactory.getWebDriver()

        WebElement su = driver.findElement(By.cssSelector("#table-page .ui-title"))

        //String usersText = WebUI.getText(findTestObject('Object Repository/WMS/Page_System Users/h1_System Users'))

        return su
    }

下面是调用关键字的脚本:

代码语言:javascript
运行
复制
WebUI.click(findTestObject('Object Repository/WMS/Page_Dashboard/img_Developer Options_system_users'))

WebUI.delay(2)

String userText = CustomKeywords.'com.wms.modules.general.ModuleKeywords.usersText'()

if (WebUI.verifyTextPresent(userText, true, FailureHandling.STOP_ON_FAILURE)){
    println('System Users page has the text: '  + userText)
}

运行脚本后,我得到以下错误:

代码语言:javascript
运行
复制
2019-09-13 09:53:25.756 INFO  c.k.katalon.core.main.TestCaseExecutor   - --------------------
2019-09-13 09:53:25.765 DEBUG testcase.C16354 - System Users           - 2: click(findTestObject("Object Repository/WMS/Page_Dashboard/img_Developer Options_system_users"))
2019-09-13 09:53:28.151 DEBUG testcase.C16354 - System Users           - 3: delay(2)
2019-09-13 09:53:30.160 DEBUG testcase.C16354 - System Users           - 4: userText = com.wms.modules.general.ModuleKeywords.usersText()
2019-09-13 09:53:30.247 INFO  k.k.c.m.CustomKeywordDelegatingMetaClass - com.wms.modules.general.ModuleKeywords.usersText is PASSED
2019-09-13 09:53:30.248 DEBUG testcase.C16354 - System Users           - 5: if (verifyTextPresent(userText, true, STOP_ON_FAILURE))
2019-09-13 09:53:30.484 DEBUG testcase.C16354 - System Users           - 1: println("System Users page has the text: " + userText)
System Users page has the text: [[CChromeDriver: chrome on XP (0c9a9313aebba81a65bf2ff2f68e5a09)] -> css selector: #table-page .ui-title]

它应该打印“系统用户页面上有文本:系统用户”,而不是上面出现的错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-16 06:36:49

usersText()方法返回类型为WebElementsu。它应该返回该元素的文本。

您应该将return su更改为

代码语言:javascript
运行
复制
return su.getText()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57926820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档