一尘不染

如何在Angularjs量角器中使用命令行参数?

javascript

我正在使用Protractor执行一些端到端测试,我想通过命令行传递登录凭据,而不是将它们存储在spec文件中。我在某人使用过的地方找到了一个帖子process.argv.forEach,但是如何存储这些值并在另一个spec文件中使用它们?我有一个文件login- spec.js,我想在其中使用命令行参数。

谢谢!


阅读 229

收藏
2020-05-01

共1个答案

一尘不染

在参考配置中,此部分可能很有趣:

  // The params object will be passed directly to the protractor instance,
  // and can be accessed from your test. It is an arbitrary object and can
  // contain anything you may need in your test.
  // This can be changed via the command line as:
  //   --params.login.user 'Joe'
  params: {
    login: {
      user: 'Jane',
      password: '1234'
    }
  },

您可以在代码中像这样访问params对象: browser.params.login.user

因此,在您的情况下,如果您这样调用量角器:

protractor ... --params.login.user=abc --params.login.password=123

您可以像这样在代码中访问这些变量:

browser.params.login.userbrowser.params.login.password

2020-05-01