问题标签 [wdio-jasmine]

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.

0 投票
1 回答
870 浏览

jasmine - Webdriver.IO:如何使用 WDIO 在 Jasmine 中运行特定的“it”语句

我正在尝试从使用 Jasmine 框架 ( wdio-jasmine-framework) 编写的回归套件中提取一个烟雾套件。

是否可以在 Jasmine 中的特定测试用例上添加标签?

0 投票
2 回答
1891 浏览

selenium - Webdriver.IO - 以非阻塞方式检查元素是否存在

0 投票
3 回答
287 浏览

wdio-v5 - wdio+jasmine reRun/retry single test spec it('',()=>{},3) 不起作用

我正在将“wdio”与“jasmine”测试框架一起使用,并尝试在https://webdriver.io/docs/retry.html之后重新运行单个测试规范,但重试没有发生。我正在使用这样的 wdio 同步运行程序运行以下代码 - ./node_modules/wdio wdio.conf 它只执行一次测试。

我希望测试应该执行 1+3 次。但它只执行一次。重试没有发生。我在这里遗漏了一些明显的东西吗?

0 投票
2 回答
128 浏览

javascript - 使用框中的箭头增加 TextBox 中的值

在此处输入图像描述

在自动化代码中,我想用大于 0 的数字填充文本框。 setvalue() 不起作用。用户必须单击向上箭头(见图)才能使文本框可编辑。我怎样才能做到这一点?

到目前为止,我已经尝试设置属性stepvalue其值大于 0.0。那没起效。

$('#yieldGoal').setAttribute('step', "2.0")

增加文本框中的值

0 投票
1 回答
681 浏览

appium - WebdriverIO+Appium中如何获取伪元素

我想在使用 WDIO 和 Appium 为 Android 混合应用程序进行的测试content中从伪元素 ( ) 的 CSS 中获取值 ( ),因为设计人员已将当前的响应式设计状态存储在那里。::before所以我的测试会知道期望哪个布局(元素)。

对相关问题的多个回答(123)表明使用.getComputedStyle()可能是唯一的解决方案。但这在我的测试中似乎不起作用。错误是window is not defined针对window.getComputedStyle(...)document is not defined如果我使用document.defaultView.getComputedStyle(...). 似乎选择器本身也无法处理伪元素。

我的许多尝试之一的示例:


问题:我需要以某种方式导入windowdocument测试吗?是否有其他方法可以从测试中获取windowdocument从测试中获取?

最终:我如何才能获得混合 Android 应用程序的content价值?::before<body>

0 投票
1 回答
336 浏览

javascript - 如何从 wdio 配置文件的 afterTest 挂钩中访问测试运行的文件名?

我正在尝试从afterTest我的 wdio 配置文件中的挂钩访问每个测试运行的文件名。但是,提供给挂钩的参数都不包括文件名。我尝试从onWorkerStart钩子中获取文件名,因为specs提供给该钩子的参数包括文件名,所以是这样的:

但我不确定如何访问fileName我在onWorkerStart钩子中创建的变量afterTest。我尝试过将其用作全局变量:

但这只是打印“未定义”。如果我也从onWorkerStart钩子中打印它,它实际上会先从那里打印文件的名称,然后再从afterTest钩子中打印“未定义”。

0 投票
2 回答
1192 浏览

angular - WebdriverIO 和 Angular,在 typescript 中编写导入类的 e2e 测试(不能在模块外使用 import 语句)

我正在尝试使一组 wdio 的 e2e 测试正常工作。一些测试使用一些用 typescript 编写的实用程序类。

编译测试时,它会遇到此错误:

上面的输出来自WebdriverIO Boilerplate Projects之一的克隆。我所做的唯一更改(除了 chromedriver 更新)是将此示例中的测试更改为 typescript 并使用实用程序类。

我已经尝试了所有我能找到的选项,但没有一个能解决问题,只是运行这个简单的测试。特别是,似乎没有任何 babel 配置被拾取。

源代码位于https://github.com/rgansevles/angular-wdio6-builder-demo(克隆自https://github.com/migalons/angular-wdio6-builder-demo

要重现,请克隆我的 repo 并运行:

有谁知道如何让这个样本与 import 语句一起工作?

提前致谢,

顺便说一句,这是它在 e2e/test/specs/basic.spec.ts 上失败的测试文件:

0 投票
3 回答
1254 浏览

javascript - WebdriverIO-Jasmine Async 函数未在 10000ms 内完成

我正在将 WDIO 与 Jasmine 和 Chai 一起使用。

我收到以下错误,并且我已经尝试找到根本原因超过一天了。

错误:超时 - 异步函数未在 10000 毫秒内完成(由 jasmine.DEFAULT_TIMEOUT_INTERVAL 设置)

代码:

我注意到 console.log('DEBUG : I am waiting...') 没有打印在控制台上。

config.js 值:

0 投票
0 回答
21 浏览

ios - LaunchApp() 需要很多时间,因此我收到 element not found 错误

我正在使用 typescript-wdio-appium-jasmine 堆栈进行 iOS 自动化。

在运行我的自动化套件时,launchApp 步骤需要大量时间,并且到那时执行的测试会到达查找元素部分。并且由于此处未找到元素异常而失败,日志:

0 投票
0 回答
97 浏览

node.js - 在 npm install webdriverio ./node_modules/.bin/wdio 之后:没有这样的文件或目录

在 W10 上安装后,我找不到 node_modules/.bin/wdio。所以,我无法运行 Appium 测试 感谢 Lorenzo 的任何支持