【问题标题】:WebDriver + Protractor with gruntWebDriver + Protractor with grunt
【发布时间】:2014-04-15 04:25:43
【问题描述】:

我正在尝试使用 WebDriver 和 Protractor 运行端到端测试。当我手动运行它时没问题: webdriver-manager 启动 然后 量角器测试-UI/e2e/conf.js

现在我想从 grunt 命令启动它们,所以我尝试使用 grunt-shell,用 '&&' 加入它们。但是随着 WebDriver 的等待,测试永远不会开始。以前有人试过吗?

谢谢。

【问题讨论】:

    标签: webdriver gruntjs protractor


    【解决方案1】:

    有一个名为 Grunt-shell-spawn (Github Repo) 的 Grunt-shell 分支,它允许您异步运行后台进程。这恰好与启动 selenium webdriver 服务器非常有效,有助于自动化量角器测试过程。有一些专门用于启动 webdriver 服务器的 grunt 插件,但根据我的经验,它们都有小错误,一旦测试完成就会导致错误,或者需要您标记标志 keepAlive: true,这意味着它不会终止 webdriver 服务器进程强制您可以按 ctrl+c 或关闭并重新打开命令提示符,这在开发人员使用功能测试和持续集成 (CI) 服务器时可能会导致很多问题。 Grunt-shell-spawn 能够终止进程,正如您在我的“测试”任务结束时看到的那样,这对于保持一致性和易用性非常宝贵。

    'use strict';
    
    module.exports = function(grunt) {
    
    grunt.loadNpmTasks('grunt-shell-spawn');
    grunt.loadNpmTasks('grunt-protractor-runner');
    
    var path = require('path'); 
    
    grunt.initConfig({
      ...
      ...
      ...
      shell: {
        updateserver: {
          options: {
            stdout: true
          },
          command: "node " + path.resolve('node_modules/protractor/bin/webdriver-manager') + ' update --standalone --chrome'
        },
         startserver: {
          options: {
            stdout:false,
            stdin: false,
            stderr: false,
            async:true
          },
          command:  'node ' + path.resolve('node_modules/protractor/bin/webdriver-manager') + ' start --standalone'
        },
    });
    
    grunt.registerTask('test',[
        'shell:updateserver',
        'shell:startserver',
        'protractor:e2e',
        'shell:startserver:kill'
    ]);
    

    【讨论】:

    • 你是救生员!
    【解决方案2】:

    你可以安装grunt-protractor-runner

    npm install grunt-protractor-runner --save-dev
    

    查看此博客的详细信息

    http://www.codeorbits.com/blog/2014/01/26/angularjs-end-to-end-testing-with-protractor-easy-set-up-with-yeoman/

    【讨论】:

      【解决方案3】:

      尝试运行 grunt --verbose 以查看有关正在发生的事情的更多详细信息。

      【讨论】:

        猜你喜欢
        • 2016-06-17
        • 2016-03-27
        • 2018-04-30
        • 1970-01-01
        • 2017-02-10
        • 2014-03-02
        • 1970-01-01
        • 2013-10-04
        • 1970-01-01
        相关资源
        最近更新 更多