我通过npm运行量角器v4.0.9,并且发现即使在测试报告为失败时,我的Visual Studio Team Services上的构建也不会失败。进一步研究,我引入了一个错误,以便测试失败,然后在本地运行它们。正如下面的屏幕截图所示,我有17/17次失败的测试,但退出代码仍然为0,我知道这是成功的。它甚至说chrome #01 passed
,我认为这是错误的。量角器即使测试失败也会退出代码0
这里是我的量角器配置:
"use strict";
exports.config = {
baseUrl: process.env.npm_package_config_baseUrl,
framework: 'jasmine',
capabilities: {
browserName: 'chrome'
},
specs: ['test/*.spec.js'],
rootElement: 'se-app',
directConnect: true,
ignoreUncaughtExceptions: false,
onPrepare: function() {
var globals = require('protractor');
var browser = globals.browser;
browser.ignoreSynchronization = true;
browser.manage().window().maximize();
var specReporter = require('jasmine-spec-reporter');
// add jasmine spec reporter
jasmine.getEnv().clearReporters();
jasmine.getEnv().addReporter(new specReporter({
displayStacktrace: false
}));
var reporters = require('jasmine-reporters');
jasmine.getEnv().addReporter(new reporters.JUnitXmlReporter({
savePath: 'junit/'
}));
},
};
我查了documentation for the Protractor config,但无法看到任何明显的设置,会导致这种情况发生。我甚至在ignoreUncaughtExceptions:false
(如上所示)中添加了明确的内容,但没有任何区别。
你使用的是什么版本的节点?我遇到了一个奇怪的问题,那就是我正在使用更新版本的节点,并且它是所有测试都立即通过的地方。我不得不恢复到较旧版本的节点。我发现它与4.2.4一起工作,但我不得不删除我的节点模块文件夹并再次执行npm安装。 – BarretV
我正在使用v7.2.0。然而,我第一次发现问题的构建服务器使用的是v5(不确定究竟是哪个版本,因为我现在也更新到v7.2.0)。 – Maloric
我意识到我只是说了一个更新的版本。我使用的新版本是4.5给我的问题。我使用的一件事是nvm轻松地在不同版本的节点之间切换。我的问题与您的问题并不完全相同,但它发生在我的团队中的几个人使用4.5版本处理我们正在处理的其他项目 – BarretV