angularjs - 我在我的配置中提供 'sauceUser' 和 'sauceKey' 但酱说我正在尝试使用用户名 'None' 和访问 key 'None' 进行身份验证

标签 angularjs ionic-framework protractor appium saucelabs

我正在尝试测试使用 Ionic 编写的移动应用程序,并且由于 Ionic 基于 Angular,我想使用 Protractor 编写测试并使用 Saucelas Appium 在移动模拟器中运行测试。我使用以下命令调用 Protractor :

SAUCE_USERNAME=$(SAUCE_USERNAME) SAUCE_ACCESS_KEY=$(SAUCE_ACCESS_KEY) ./node_modules/.bin/protractor protractorConfig.js

但我收到以下错误:
UnknownError: Sauce Labs Authentication Error.
You used username 'None' and access key 'None' to authenticate, which are not valid Sauce Labs credentials.

我的 protractorConfig.js 包含:
/* global exports */
/* global process */
exports.config = {
  sauceUser: process.env.SAUCE_USERNAME,
  sauceKey: process.env.SAUCE_ACCESS_KEY,
  capabilities: {
    appiumVersion: "1.0",
    app: "sauce-storage:app.zip",
    platformName: "iOS",
    platformVersion: "7.1",
    deviceName: "iPhone Simulator",
    browserName: ""
  },
  allScriptsTimeout: 30000,
  seleniumAddress: "http://" + 
    process.env.SAUCE_USERNAME + ":"+process.env.SAUCE_ACCESS_KEY+
    "@ondemand.saucelabs.com:80/wd/hub",

  specs: [
    "spec/feature/*.js"
  ]
};

为什么 Protractor/Saucelabs 说我没有提供用户名或访问 key ?

编辑:我根据 Running e2e tests on Sauce Labs from Protractor on Travis 中的一个答案中的信息回答了这个问题和我的答案。 .我提出了这个问题和答案,希望这些信息需要经过大量谷歌搜索才能找到,让其他有同样问题的人更容易获得。

最佳答案

感谢这个其他 question我现在知道您必须从配置中省略“seleniumAddress”,否则 Protractor 将忽略您的 Saucelas 身份验证。如果省略,它将正确生成“seleniumAddress”,但此时我不确定它是如何知道如何做到这一点的。

关于angularjs - 我在我的配置中提供 'sauceUser' 和 'sauceKey' 但酱说我正在尝试使用用户名 'None' 和访问 key 'None' 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29015603/

相关文章:

javascript - Protractor 测试 Angular 2 和点击事件

angularjs - 我们如何在 Angular JS 中获取运行时的脚本响应方法

javascript - 使用 ngAnimate 时,通过 ng-if 删除元素会被延迟

javascript - $state.go 不适用于 ionic 框架

javascript - 为什么 float 权利不起作用也很重要?

javascript - Protractor :缩小

javascript - Angular $routeprovider Controller 不工作

javascript - AngularJS - 共享服务对象被错误删除

android - 更新 Android 包,签名过程有问题

javascript - Protractor 并行运行导致测试失败