gpt4 book ai didi

javascript - 运行单个 Nightwatchjs 测试的问题

转载 作者:行者123 更新时间:2023-12-03 09:46:01 25 4
gpt4 key购买 nike

我有一个问题,如果我使用测试脚本的绝对路径,我似乎只能运行单独的 nightwatchjs 测试。

例如,如果我从以下文件夹运行测试;

/Users/darrenharley/Documents/Git/uk-content-parkers/Tests/Functional/tests

与以下;

npm run test:live /Users/darrenharley/Documents/Git/uk-content-parkers/Tests/Functional/tests/current_functionality/gamAds/PAR-5139.js

它工作正常。

但是,我需要在不使用我的本地文件结构的情况下运行此测试(因为最终将通过 Jenkins 构建运行,所以不能使用它)。

但是如果我使用以下命令运行测试;

npm run test:live ./current_functionality/gamAds/PAR-5139.js

失败,出现以下错误;

Error: ENOENT: no such file or directory, stat './current_functionality/gamAds/PAR-5139.js'

我在这里做错了什么吗?

如果有帮助,在我的 nightwatch.conf.js 文件中有这个;

 src_folders: [
'tests/',
],

在我的 package.json 文件中有这个;

"test:live": "nightwatch --config config/nightwatch.conf.js --env live --suiteRetries 3",

任何帮助将不胜感激,因为这似乎是一件很基本的事情,这让人发疯。

非常感谢。

最佳答案

首先,关于您的 Jenkins 工作的信息不足,无法做出有根据的猜测(从哪里触发 NPM 命令?项目根目录是什么?)。因此,最好的办法是在 NPM 调用之前添加一个 pwd 并很好地了解项目根是什么。然后,相应地更新您的命令。


现在……

对于您手头的任务,最简单(更不用说最干净)的方法是利用 NightwatchJS test-groups & test-tags .

❒ 使用 test-tags :

module.exports = {
'@tags': ['PAR-5139', 'live', 'smoke'],
'This is the PAR-5139 test': function (browser) {
// > your code here <
}
};

要启用该逻辑,您的命令将变为:

npm run test:live -- --tag PAR-5139(在添加额外的 NightwatchJS 开关之前,请注意必要的 -- 前缀。它是需要将传递给 npm 命令本身的参数和传递给脚本的参数分开。)

❒ 使用 test-groups :

让我们考虑以下测试结构:

tests/
├── current_functionality
| └── PAR-5139.js
├── critical_functionality
| └── PAR-5140.js
| └── PAR-5141.js
└── dated_functionality
├── OLD-90210.js
└── OLD-NO7-BRAND-SOUR-MASH.js

要启用该逻辑,您的命令将变为:npm run test:live -- --group current_functionality

group 开关将列表作为参数,因此您可以在同一命令中链接多个测试文件夹:npm run test:live -- --group current_functionality,critical_functionality

!注意:别忘了,您还可以使用 --skipgroup 开关(也可以链接起来以排除一系列测试文件夹以及)。您还可以通过将 'disabled' 属性设置为 true 来专门禁用测试运行中的测试用例:

module.exports = {
'@disabled': true, // This will prevent the test module from running.
'Not running this PAR': function (browser) {
// > your code here <
}
};

关于javascript - 运行单个 Nightwatchjs 测试的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59412640/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com