selenium - Selenium/Katalon 在 jenkins 或 headless 中运行时无法获取 webelement 的文本
问题描述
我有一个按钮的文本<span _ngcontent-c4="" class="btn__text">FOO</span>
当运行 Katalon (6.3.3) 测试本地时一切正常,但是在詹金斯中运行时,文本 FOO 被加载为空字符串。要捕获我正在使用的 FOO 文本:
WebUI.verifyElementText(findTestObject('TC01/header/button_FOO'), "FOO")
即使将元素转换为org.openqa.selenium.WebElement
并使用element.getText()
,本地运行也可以很好地获取文本 FOO 并且在詹金斯中:
ERROR c.k.k.core.keyword.internal.KeywordMain - ? Actual text '' and expected text 'FOO' of test object 'Object Repository/TC01/header/button_FOO' are NOT matched.
即使在詹金斯运行中,以同样的方式测试页面标题也能正常工作。
在詹金斯图像中是 Google Chrome 79.0.3945.88 和 ChromeDriver 79.0.3945.36
在本地机器上是 Chrome 79.0.3945.88 和 ChromeDriver 79.0.3945.36
jenkins 映像是 linux,我在 Win 10 上。
在我添加参数 --headless 后,本地运行也开始出现问题。
解决方案
通过添加参数解决--window-size=1920x1080
。现在即使在詹金斯中也能正常工作。
推荐阅读
- python - 当有 None 时打印一些东西
- javascript - Javascript - 如何在 chart.js 的选项规范区域内插入 if 和 else 语句
- json - Oracle JSON 数组查询
- r - 如何使用 R (sjp.frq) 将 y 轴范围从条形图中的数字更改为百分比 (%)
- python-3.x - 将电话字母转换为数字并使用 while 循环
- vue.js - 如何控制vue应用的流量
- c# - 什么会减少此功能中四联骨牌的抖动行为?
- c - 指针未初始化的问题
- javascript - html-webpack-plugin 多个入口点添加所有脚本
- javascript - 在 React 中分离添加到状态的值