smu*_*aga 5 javascript cypress
我正在尝试在 Cypress.io 中设置一个全局变量(不是全局环境变量)。我想抽象一个我会反复使用的网址和东西,我可以在多个文件中使用(而不是一个)。
另外,我不想将其设置为 baseurl. 我已经有了那一套,我不想管它。
谁能帮我这个?
小智 11
这可以比这更容易完成:在你的cypress.json添加
"env": {
"YourVarName":"YourVarValue"
}
Run Code Online (Sandbox Code Playgroud)
在您的代码中,您可以使用以下方式访问您的变量:
const myGolabalVar = Cypress.env("YourVarName")
Run Code Online (Sandbox Code Playgroud)
这就是你所需要的
我最近在 github 上的另一个博客中找到了答案,链接如下:https : //github.com/cypress-io/cypress/issues/1121
但是这个博客中的答案是我的布赖恩曼回答的......
“TL;DR - 只使用模块,而不是全局变量。
Cypress 只是 JavaScript。关于构建文件的所有基本原则都适用于赛普拉斯,就像您自己的应用程序文件一样。
在这种情况下,您一直在提及变量。变量是在特定文件中定义的东西,永远不会是全局的。这意味着它们无法共享。变量可根据定义它们的本地范围访问。
为了使它们全局化,您必须将它们附加到一个全局对象:window。但是,没有理由这样做,赛普拉斯自动内置了模块支持。这使您能够将函数导入每个规范文件,从而使它们比使用全局变量更有条理和明显。
我们在这里有这样的食谱:https : //docs.cypress.io/examples/examples/recipes.html#Node-Modules ”
我希望这可以帮助在 Stackoverflow 上的其他人来回答这个问题!
| 归档时间: |
|
| 查看次数: |
7641 次 |
| 最近记录: |