用于角度项目测试的构建或管道。量角器问题

时间:2017-03-03 04:05:36

标签: javascript angularjs testing protractor

我正在开发一款移动应用。我正在使用带有angularjs的离子框架。所以我正在使用网络技术编写这个应用程序。我的问题与测试有关。我在我的应用程序中有单元和端到端(e2e)测试。 查看我的package.json文件中的脚本部分:

"scripts": {
  "test": "karma start test/karma.conf.js",
  "test-single-run": "karma start test/karma.conf.js --single-run"
}

我可以在git控制台中运行我的单元测试执行命令:

npm run test

我的e2e测试在两个git控制台中执行两个命令:

ionic serve (to run my app)
protractor test/protractor-conf.js (to run my e2e tests)

我有两个问题:

  • 我无法在package.json中添加脚本命令以简化量角器命令。以我的业力命令进行单元测试的方式相同。 我试过这个:

    “e2e”:“量角器测试/量角器-conf.js”

为了运行“npm run e2e”,但我收到了这个错误: enter image description here

  • 第二个问题:我想为我的所有测试创建一个构建(或管道)。我的意思是,在红宝石中有一个像“rake”这样的命令。我可以通过它运行我的单位和e2e测试。这对于节省开发过程中的时间并避免忘记运行我的e2e测试非常有用。

1 个答案:

答案 0 :(得分:1)

好的,现在您已经知道问题是什么,这很容易实现。我所做的是添加一个运行postinstall的{​​{1}}脚本,以便我永远不会忘记这样做。现在您将量角器作为本地依赖项,您应该可以执行以下操作:

webdriver-manager update

现在,每次运行"scripts": { "postinstall": "webdriver-manager update", "e2e" : "protractor test/protractor-conf.js" }, 时,npm install脚本都会为您更新webdriver,您不必记得手动运行它。

至于你的第二个问题,请看看使用Gulp或Grunt来做你想问的事。他们都和耙子相似。您可以设置任务以在每次检测到文件更改时运行测试。