gpt4 book ai didi

jestjs - 将自定义参数传递给 jest

转载 作者:行者123 更新时间:2023-12-02 02:55:16 27 4
gpt4 key购买 nike

我们的客户需要使用一个简单的命令来运行整个测试电池,但他还需要能够使用参数更改环境。
目前我们运行:

jest

它运行所有文件,这很好。我们需要这样的东西:
 jest --env=local
jest --env=dev
jest --env=qa

这有可能吗?
测试文件应该是一样的,所有的测试都是一样的,我们只需要在不同的url上运行

我试图自己解析命令,但 Jest 不允许我。如果我输入的内容与预定义的命令不同,则会失败:
● Unrecognized CLI Parameter:

Unrecognized option "a". Did you mean "$0"?

CLI Options Documentation:
https://facebook.github.io/jest/docs/en/cli.html

我看到我可以添加自己的环境。我试过:

开 Jest --env=qa

...查看其输出并打印:
● Validation Error:

Test environment qa cannot be found. Make sure the testEnvironment configuration option points to an existing node module.

Configuration Documentation:
https://facebook.github.io/jest/docs/configuration.html

但是当我尝试更改这些选项时,我真的很迷茫。我似乎找不到像这样简单的东西
dev = {
url = 'devUrl';
}
qa = {
url = 'qaUrl';
}
etc.

谢谢你的时间。

最佳答案

我按照以下步骤为我工作。希望这也能指导你

要求
* 将用户名和密码解析为命令行参数
脚本

"scripts": {
"loginTest": "jest tests/Login.test.js"
}

脚步
* 在我在下面添加的 js 文件中以读取命令行参数
exports.USER_NAME = require("minimist")(process.argv.slice(2))["username"];

但是要使用上述方法,我必须按如下方式更新脚本
"scripts": {
"loginTest": "jest tests/Login.test.js --username=test@test.com",
}

然后我找到了下面的方法来将参数解析到脚本中。
npm run loginTest -- --username=test@test.com

有了这个,我能够在不更改脚本的情况下实现我的要求

关于jestjs - 将自定义参数传递给 jest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49798864/

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