问题标签 [wdio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
puppeteer - setValue() / addValue() 输入地址栏而不是选定元素
我正在使用 WebdriverIO + devtools:puppeteer + cucumber + Firefox Nightly。
使用setValue() / addValue()时,我输入的第一个字母被输入地址栏中,而不是选定的元素。mse 或 chrome 浏览器不会出现相同测试的问题。
问题:
在此之后,在函数超时之前什么都不会发生
代码示例: 测试:
脚步:
尽管在使用 setValue() 之前单击元素可以解决某些 URL,但这在某些情况下不起作用(例如,当从预登录页面重定向到预输入登录的登录页面时,我无法单击 +密码字段的 setValue)。
希望任何人都知道如何解决或解决所有情况。谢谢。
[更新]
@AnthumChris
由于我使用的是内置 puppeteer,因此默认情况下未定义页面而是我尝试了:
它再次适用于 chrome 和 mse,但对于 ffox nightly 却失败了。
在浏览器请求的 URL (google.com) 中打开后,我收到了下一个错误:
[更新]
我已更改browserURL: 'http://localhost:${rdPort}'
为 browserURL: 'http://${rdPort}'
...\node_modules\webdriverio\build\commands\browser\getPuppeteer.js 文件,因此我至少可以连接到 puppeteer.pages 对象,但await (await page.waitForSelector('input[type=text]')).type('hello')
操作仍然存在问题:
docker - WDIO docker run:[1643987609.767][SEVERE]:bind()失败:无法分配请求的地址(99)
使用 Jenkins 在 Docker 中运行 wdio 测试时出错。我不知道如何解决这个问题:(相同的配置在本地环境(windows + docker)上成功运行。
这是 wdio 配置。我使用了默认的 dockerOptions。wdio.conf
之后,我尝试通过 jenkins 运行 UI 测试:
并出现错误。附上日志:
wdio.log
wdio-0-0.log
wdio-chromedriver.log
码头工人日志.txt
docker - 如何通过 Jenkins 在 docker 中调整 WDIO UI 测试
大家。我尝试通过 Jenkins 在 docker 中运行 WDIO UI 测试。
我已经安装了 wdio-docker-service。并通过配置:
之后,通过 Jenkins 运行。但出现错误:
wdio日志
Chrome驱动程序日志:
我尝试添加 --whitelisted-ips "127.0.0.1" 但它对我不起作用。关于如何解决这个问题的任何想法?
如果在本地机器上运行测试,这个设置对我来说很好。
javascript - 期望一个数组包含一个使用 webdriver.io 的字符串
如何编写测试以使其期望我的数组包含特定字符串?我已经尝试了下面的内容以及其他一些方法,例如使用array.includes
但无法使其正常工作。
javascript - Appium Wdio 未运行 = 错误 webdriver: RequestError: connect ECONNREFUSED ::1:4723
运行 npx wdio 而不是运行我更多尝试但我没有请总是帮助我这个问题
我的帽子
我的虫子
我的 sample.js 文件
});
javascript - 使用 Javascript 使用 Appium 进行混合移动应用程序测试中的 ListView 加载器
我无法使用 javascript 在带有 Appium、WDIO 的混合移动应用程序中获取加载程序。我需要抓住装载机并等待装载完成。
appium-android - 水平滚动以识别隐藏或动态元素(使用 WDIO + Appium + JS)
我遇到了这个与 appium UI 自动化相关的有趣问题。在我的应用程序中,用户水平滚动操作后动态加载的 UI 元素很少。我试图构建我的自定义方法来对 UI 元素执行水平操作,但没有运气(附上错误截图)。我看到 (x,y) 位置在垂直滚动时效果很好,想知道是否有人做过水平滚动以使隐藏元素可见(动态加载的元素)?如果您对此有任何指示,请告诉我。提前致谢。注意:在下面的屏幕截图中,您可以看到最后一个可见元素是 16x20,但之后还有一个按钮“20x30”,我正在尝试选择它。我尝试了以下选项:首先: browser.execute('mobile: scroll', {element: element, direction: 'left'}); 第二:
screenAction.swipeLR(element,5);
我在自定义方法中传递的元素是最后一个可见元素,即 16x20:
webdriver-io - WebdriverIO SevereServiceError 没有停止测试运行
我已经设置了一个自定义 wdio 服务(根据文档),它用于为Angles 自动化仪表板创建构建。
作为此服务的一部分,我想在无法创建构建并停止运行时使用SevereServiceError 。但是,在我的示例测试中,它会引发错误并继续测试运行。在此处查看日志:
您可以通过克隆示例 repo并运行来自己运行示例npm run test
。
注意:这应该会失败,因为它正在寻找Angles 仪表板的本地实例。
为什么 SevereServiceError 没有停止测试运行的任何想法?