为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

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

3 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

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


  // 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.user 和 browser.params.login.password


查看完整回答
反对 回复 2019-12-03
?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

我认为这不可能直接实现。但是,如果您已将URL存储在变量中,则可以重复使用该变量。或者,您也可以在外壳中的前面加一个。我用所有设置变量创建了一个大哈希,并由主环境的名称索引,然后仅将环境的名称作为量角器参数进行传递。大致:Environments = {test: {url: '...', name: '...', ...}, live: {...}, ...}--params.env=test.

查看完整回答
反对 回复 2019-12-03
  • 3 回答
  • 0 关注
  • 798 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信