如何运行具有多个用户的量角器套件

时间:2017-05-10 04:06:42

标签: javascript angularjs selenium-webdriver protractor

下面是我用来运行单个用户和多个测试套件的配置文件。现在,我遇到了一个问题,我想用用户A运行一些量角器套件,用户B运行少量量角器测试套件。我不知道我知道如何在量角器中实现这一点。

exports.config = {
  capabilities: {
    browserName: 'chrome'
  },
  suites: {
    loginAndNavigate: 'e2e/specFiles/LoginAndNavigateSpec.js',
    homepage: 'e2e/specFiles/policiesList_HomepageSpec.js',
    versionPage: 'e2e/specFiles/ER_VersionsPageSpec.js'
    policyDetails: 'e2e/specFiles/policyDetailsPageSpec.js'
  },
  seleniumServerJar: '../node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar',
  chromeDriver: '../node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.26',
  baseUrl: 'https://shared.qa.com/EdgeAuth/logindirect.jsp',
  params: {
    login: {
      user: ‘user ',
      password: 'abc123'
    }
  },
  onPrepare: function() {
    global.EC = protractor.ExpectedConditions;
    browser.getCapabilities().then(function(c) {
      console.log(c.get('browserName'));
    });
    global.Utils = require('./e2e/utils.js');
    require('./e2e/matchers.js');
    require('./e2e/customLocators.js');
  },
  framework: 'jasmine2',
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 100000
  }
};

1 个答案:

答案 0 :(得分:2)

您可以在运行测试时提供新的参数(用户详细信息)和套件详细信息。

对于params对象,使用--params.login.user "User B"等来覆盖配置文件的详细信息。

对于套件,您可以使用--suite=loginAndNavigate或多个--suite=loginAndNavigate,homepage来选择要运行的内容。

您需要正确组合这两者以满足您的需求。

https://github.com/angular/protractor/blob/master/lib/config.ts