我正在尝试使用可访问性插件,它附带了Protractor。据我所见,它会检查我所在的最后一页的a11y。有没有办法让两个测试脚本一个接一个地执行,并提供不同的报告,或者把所有的都放在一个报告中,但是分开。
示例:
access.js
access1.js
输出文件:
resultJsonOutputFile:“结果/结果”
我试图在conf.js中这样做:
specs: ['../test/access.js', '../test/access1.js'],
or
specs: ['../test/access*.js'],但最后执行的脚本仍然会得到结果
我也尝试过创建套房:
suites: {
homepage: '../test/homepage/access.js',
catalogpage: '../test/catalogpage/access1.js'
},但是当我检查JSON文件时,如果执行了2个脚本,那么第一个没有问题,并为第二个脚本提供了错误。但是,如果要单独运行第一个脚本,则Protractor提供了错误
此外,我还试图在一个js文件中创建不同的场景,但问题仍然相同。
发布于 2015-09-29 00:09:36
对于当前的实现,可访问性插件设置为每次调用Protractor运行器时,在最后一个页面上精确运行一次。因此,不幸的是,对套件或测试文件的任何修改都不会使它运行不止一次。
您可以为想要运行的每一组测试文件创建单独的配置文件,或者使用shardTestFiles确保每个文件都在自己的进程中运行。有关切分的详细信息,请参阅referenceConf。
发布于 2015-10-25 15:04:39
或者,您可以使用aXe进行可访问性测试。为了在量角器和网络驱动程序中与e2e测试一起使用它,请执行以下操作:
npm install --save-dev axe-webdriverjs然后,在您的e2e测试文件中,您可以:
var AxeBuilder = require('path_to_the/axe-webdriverjs');要获得AxeBuilder,然后在需要运行测试的地方运行,您可以:
AxeBuilder(browser.driver)
.analyze(function (results) {
expect(results.violations.length).toBe(0);
});上面的例子是使用Jasmine,但是您可以对任何其他断言库进行推断。
另外:有一个示例项目,您可以在这里克隆和运行https://github.com/dylanb/UITestingFramework
免责声明:我与aXe项目有关联,因此不是中立的
发布于 2017-02-27 08:02:10
我也遇到了这个问题--当另一张海报留下来的时候,这个插件并没有被设计成那样运行。
我写了一个衍生的插件,做你想要的- 量角器-斧头-报告-插件。
每当要测试的浏览器中打开页面时,就调用runAxeTest (或runAxeTestWithSelector),它使用aXe引擎生成报告。
https://stackoverflow.com/questions/32336172
复制相似问题