2016-02-26 60 views
1

我正在測試一個使用karma茉莉花的角度應用程序,我有大約10個spec文件,總共有10個描述和48個測試用例。問題是,每當測試用例超過47時我都會收到一個錯誤,錯誤說,有些測試做了整頁重新加載。我嘗試通過評論隨機測試案例,限制爲47,然後它工作正常。即使一個空白的第48個測試案例給出的錯誤,茉莉花噶瑪。測試失敗後,特定數量的測試(頁面重新加載錯誤)

"jasmine-core": "^2.4.1", 
"jshint-stylish": "^1.0.0", 
"karma": "^0.13.21", 
"karma-chrome-launcher": "^0.2.2", 
"karma-coverage": "^0.5.3", 
"karma-firefox-launcher": "^0.1.7", 
"karma-jasmine": "^0.3.7", 
"karma-ng-html2js-preprocessor": "^0.2.1", 
"karma-phantomjs-launcher": "^1.0.0", 

這是我的版本業力和相關的依賴關係。

回答

0

它涉及一個或多個您的測試重新加載。不幸的是,噶瑪並沒有告訴你哪個。

下面是issue的解決方案。

1)運行您的應用程序,其中包含以下任何代碼以及DevTools(本例中爲Chrome)打開的代碼。

console.profile('cause of reload'); 

window.addEventListener('beforeunload', function() { 
    console.profileEnd('cause of reload'); 
    debugger; 
}); 

如果你正在尋找的重載發生,你應採取的Chrome Devtools的「消息人士」的觀點與應用停在了調試器行。

2)導航到「配置文件」選項卡並選擇「圖表」視圖。

3)Command + F並搜索「位置」。

4)使用搜索框中的向上和向下箭頭跳轉到該短語的最後發生的匹配。

5)在搜索字段中點擊輸入以跳轉到匹配。

6)通過調用堆棧回顧您所認識的代碼。

感謝JamieMason

+0

我看不到輪廓選項卡中的圖表視圖選項中,選擇分析類型是我看到的選項,好心幫 –

+0

嗯..也許這是一箇舊版本。您應該看到一個名爲「重新加載原因」的配置文件,只需打開該配置文件即可在默認視圖中執行搜索。 – andyhasit

+0

我試過了,但我沒有位置重新加載函數在我的任何腳本中,錯誤仍然存​​在,但我發現另一個線程的另一個解決方案,它表示將maximumSpecCallbackDepth從最大值增加到最大值 。它位於jasmine-core/lib/jasmine.js –