我通過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