问题标签 [wdio-v6]

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 回答
145 浏览

javascript - WebdiverIO wdio 配置:使用变量

在 wdio.conf.js 文件中,我使用 beforeTest 部分来设置 JSON Web 令牌,以便稍后在测试套件中我不再需要登录到 Web 应用程序。

如果令牌是硬编码的,则此操作完美运行!然而,我想创建一个变量“jwt”并为其分配 JSON Web 令牌的值。当我这样做时,会给出一个错误“未定义 jwt”。

在 wdio.conf.js 的顶部,我编写了以下代码 const jwt = 'eyJ0eXAiOiJKV1QiLCJhb...'

在之前的操作中,我编写了以下代码

控制台日志正在显示令牌,因此该变量在 beforeTesting 操作中起作用。但是我收到错误“[0-0] “BeforeTest Hook”javascript 错误中的错误:未定义 jwt”

0 投票
0 回答
85 浏览

node.js - 如何声明 nodejs 全局变量以避免进程之间的竞争条件

问题:如何声明一个 Nodejs 全局变量,该变量在一个进程的会话中多次更新?我在多个进程中使用这个全局变量。并希望在进程之间保持这个全局变量的数据。

我目前已经global.object1={};在我的黄瓜钩子文件中声明了一个全局变量。我在测试中更新了几次它的值。就 1 次测试而言,它工作得很好。但是当多个测试运行时,我得到了比赛条件。来自test1的数据出现在test2中。因此test2失败了。在日志中可以看到 test2 正在显示来自 test1 的数据。

在我的测试中,我试图在测试之间保持数据的唯一性。我已经阅读了一些相关的博客和 Stackoveflow 查询,但我不清楚我能做什么。

我以前的方法是将对象数据存储在不同位置的 JSON 文件中。但这不是我想要的编码方式。我以前使用过 Java,并且已经同步了我的对象以在线程之间使用它们。但我不确定如何使用 Nodejs 和 ES6 来做到这一点。

欢迎任何线索。

0 投票
1 回答
143 浏览

webdriver - 为什么 webdriverIO 函数在 wdio-v7 中不起作用?

我刚刚使用 开始了一个新项目wdio-v7,但是所有webdriverIO功能(例如:.click().waitForDisplayed())都不再起作用,我收到了

0 投票
0 回答
111 浏览

cucumber - Webdriver.io (wdio) PerformanceTotal 服务返回一个空的结果索引

我们正在尝试按照 wdio 的文档安装和使用 wdio 的 PerformanceTotal 服务: https ://webdriver.io/docs/wdio-performancetotal-service/

首先,我安装了 PerformanceTotal 包:

然后,我将 PerformanceTotal 服务添加到我们的配置文件中:

我创建了一个使用 wdio 文档中给出的示例步骤的功能文件:

但是,在运行测试时,终端中的输出如下:

在 wdio 文档中,它说 PerformanceTotal 应该分析数据,例如:平均时间、平均值的标准误差(sem)样本数最小值最大值最早时间最晚时间

但是,我们的索引是空白的,这是我假设将显示此数据的位置。

我想问一下是否有人成功地使用了 PerformanceTotal 服务,因为除了 wdio 网站之外,我在网上找不到任何文档。我们似乎无法在我们的测试解决方案中启动并运行它,因此我们将不胜感激任何帮助!

谢谢

0 投票
1 回答
176 浏览

javascript - 如何从 Javascript 中的 Cucumber 表中提取数据?

我想执行一个测试用例,尝试使用不同的凭据登录并检查错误消息。如何在 Cucumber 中做到这一点?

这是我要传递两个参数,用户名和密码的地方:

0 投票
0 回答
41 浏览

selenium-webdriver - WDIO 无法模拟状态码为 422、0 的错误响应

如果我试图模拟一个失败的响应,模拟请求就会永远挂起。如果 mock 没有提供模拟错误响应的方法。有什么选择吗?

环境(请填写以下信息):

wdio 6 铬 86

0 投票
1 回答
137 浏览

cucumber - 如何为像 mocha 这样的黄瓜场景添加上下文?

我想知道是否有一种方法可以将一些黄瓜场景包装在与 mocha 相同的上下文中,以便使用某个钩子,例如 beforeAll,

因为替代选项是使用 before 和标签,但这将类似于 beforeEach 并且它将在每个场景之前运行,上面的场景显示之前钩子第一个将在上下文之前运行一次,第二个将在所有它阻塞之前运行一次上下文,这就是我想在黄瓜中实现的目标。

0 投票
1 回答
175 浏览

typescript - 我需要将 'beforeEach' 和 'afterEach' 从规范移动到全局配置 WDIO [mocha, hook, wdio]

我使用WebdriverIO与mocha框架进行 E2E 测试

当我运行测试时,我希望在第一个错误之后,跳过此测试中的所有后续检查,然后 Mocha 进入下一个测试文件

作为一个例子,我展示了下面的代码,它需要从每个测试文件中取出并在全局范围内应用。


我需要将beforeEachafterEach从规范移动到全局配置 WDIO [mocha, hook, wdio]

我需要将代码从规范移动到全局配置 WDIO

主要目标是在测试失败后跳过测试

0 投票
1 回答
846 浏览

javascript - WebdriverIO - 如何向所有请求添加自定义标头

我需要为所有请求添加自定义标头,以便访问通常隐藏在公司代理和 vpn 后面的 Web 应用程序并能够运行 E2E 测试。作为自动化工具,我们使用 WebdriverIO。到目前为止,我尝试按照官方 wdio 文档(https://webdriver.io/docs/options/)在 wdio.conf.js 文件中设置自定义标头,并在我的配置文件中的功能中添加标头选项。不幸的是,这不起作用,我仍然无法连接到我们的网络应用程序。有没有人尝试在 wdio.config.js 文件中添加自定义标头并运行 E2E 测试?我的 wdio.config.js 文件的内容如下:

0 投票
0 回答
11 浏览

wdio-v5 - 我必须使用 wdio javascript 从网页获取文本并验证表值。如何使用哈希映射来做到这一点?

标题1 标题2 标题3 标题4
第一的
第二