Mud*_*era 1 bash node.js npm cypress
我一直在尝试运行多个 npm 命令来按顺序运行我的一些 cypress 测试。经过一些研究,我发现在 npm 命令之间使用 && 。
package.json 文件,在脚本中我定义了一个测试,
"scripts":{
"test":"npm run cypresscommand_1 && npm run cypresscommand_2"
}
Run Code Online (Sandbox Code Playgroud)
当我出于某种原因使用npm run test执行此操作时, npm run cypresscommand_1 已执行但 npm run cypresscommand_2 未执行。随着进一步研究和经历了一些教程,后来我尝试了两个修改
修改 1:插入 && 我使用了 &
"scripts":{
"test":"npm run cypresscommand_1 & npm run cypresscommand_2"
}
Run Code Online (Sandbox Code Playgroud)
修改 2:插入 && 我使用 ||
"scripts":{
"test":"npm run cypresscommand_1 || npm run cypresscommand_2"
}
Run Code Online (Sandbox Code Playgroud)
令人惊讶的是,两者都给了我预期的结果,这意味着两者都执行了npm run cypresscommand_1然后 npm run cypresscommand_2
我想知道的是,
尽管代码运行良好,但我想确定我是否使用了正确的语法。有人可以帮忙吗?
谢谢你。
它与 npm 无关,这些在基于 Linux 的系统上被解释为 bash 命令,
& - 表示它将作为后台作业运行,
&& - 从每个命令中退出代码并将其用作链式 && 操作中的操作数。
| - 是一个管道运算符,其中一个命令的输出被传递给以下命令,
|| - OR 逻辑运算符,如果只有一对完成,则使 Bash 继续处理链式命令。
对于您的情况,您可以尝试使用分号 ';' 即使失败,它也会一个接一个地运行命令。
"scripts":{ "test":"npm run cypresscommand_1 ; npm run cypresscommand_2" }
| 归档时间: |
|
| 查看次数: |
889 次 |
| 最近记录: |