angularjs – 量角器 – 在不同的浏览器上并行运行多个测试

前端之家收集整理的这篇文章主要介绍了angularjs – 量角器 – 在不同的浏览器上并行运行多个测试前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我找不到任何有关如何设置此信息,但它似乎是一个非常基本的概念,所以我确定有一个答案。

我知道如何通过在配置中设置capabilities对象的browserName属性,在不同的浏览器上运行量角器。这是工作伟大。我可以设置为“chrome”或“firefox”或任何我需要,它运行正如预期。但是,对于多个浏览器运行单个测试套件的唯一方法(就我所知)是创建单独的配置文件,每个配置文件使用不同的browserName,然后运行每个浏览器以及自己的配置。这工作,但它真的很慢,因为测试然后按顺序,而不是并发运行。

有没有办法在多个浏览器上并行运行它?

可以在SauceLabs上完成吗?或者甚至使用本地Selenium网格?

我们只是想简化我们的测试过程,这将是一个巨大的帮助。任何建议或信息将非常感激。提前致谢。

2014年2月更新 – 此答案不再有效。使用Paolo Moretti的答案如下。

可能有更好的方法来做到这一点,但目前我只是执行这些作为并发Grunt任务。

1)添加grunt并发插件

npm install grunt-concurrent --save-dev

2)在grunt.initConfig下为每个浏览器添加一个任务。我们可以添加浏览器作为参数重新使用我们的配置文件

protractor: {
        options: {
            keepAlive: true,singleRun: false,configFile: "test/protractor.conf.js"
        },run_chrome: {
            options: {
                args: {
                    browser: "chrome"
                }
            }
        },run_firefox: {
            options: {
                args: {
                    browser: "firefox"
                }
            }
        }
    },

3)注册这些任务;

grunt.registerTask('protractor-chrome',['protractor:run_chrome']);
grunt.registerTask('protractor-firefox',['protractor:run_firefox']);

4)在grunt.initConfig下创建并发任务

concurrent: {
        protractor_test: ['protractor-chrome','protractor-firefox']
    },

5)为并发添加grunt任务

grunt.registerTask('protractor-e2e',['concurrent:protractor_test']);

和执行,应该给你同时量角器测试。

猜你在找的Angularjs相关文章