[英]Run Jest unit test with TFS 2015
有沒有人試圖將開玩笑單元測試與TFS 2015集成? 我試圖使用Chutzpah測試適配器( https://visualstudiogallery.msdn.microsoft.com/f8741f04-bae4-4900-81c7-7c9bfb9ed1fe?SRC=VSIDE )但是它無法識別開玩笑。 我收到以下錯誤: 無法找到變量Jest
當我通過“npm test”運行單元測試時,我得到了結果。 但是為了與TFS 2015集成,我需要一個可以運行Jest單元測試的測試運行器,以便我可以與TFS 2015提供的vstest.console.exe一起運行單元測試,以便它可以管理構建結果並在構建中發布結果總結報告。
任何幫助,將不勝感激!!
任何可以使用以下命令運行測試的測試運行器都應該工作(考慮安裝在系統上的VS 2015):“C:\\ Program Files(x86)\\ Microsoft Visual Studio 14.0 \\ Common7 \\ IDE \\ CommonExtensions \\ Microsoft \\ TestWindow \\ vstest.console .exe“”\\ test.js“/ UseVsixExtensions:true
根據Merlin的回答 ,這里是我如何實現發布jest測試結果和代碼覆蓋到TFS2015 vNext構建(我正在使用create-react-app樣板):
首先在運行代理的服務器上安裝所需的軟件包:
npm install -g jest-json-to-tap
npm install -g tap-xunit
配置jest輸出json,通過將package.json中的“test”任務更改為:“test”:“react-scripts test --env = jsdom --json”,
在package.json中配置jest選項:“jest”:{“coverageReporters”:[“cobertura”]}
創建了一個帶有以下任務的vNext構建(TFS2015v4):
一個。 “npm”任務,命令=運行,參數=測試 - --coverage | jest-json-to-tap | tap-xunit> TEST-result.xml
灣 “發布測試結果”任務,格式= JUnit
C。 “公共代碼覆蓋率結果”任務,代碼覆蓋率工具= Cobertura,摘要文件= $(Build.Repository.LocalPath)\\ coverage \\ cobertura-coverage.xml
注意: - 測試結果不包括時間和組件 - 未來可以延伸的東西......
瞧'! 運行此構建將正確發布測試結果和代碼覆蓋率統計信息,以及報告工件。
我不確定開玩笑,但是有一個簡潔的npm包可以將基於TAP的結果轉換為xUnit XMLformat,然后你可以將它發布到TFS。
看看tap-xunit吧 。
我有一個構建環境,其中javascript測試由各種工具和框架(AVA,Mocha,Jasmine等)完成。 我們決定將它們全部導出為TAP格式,運行它們拋出tap-xunit然后發布到TFS。
基本上,你需要這樣的東西:
npm test | tap-xunit > results.xml
您將結果傳遞給tap-xunit並將其保存為XML。 這為您提供了格式為xUnit的XML,您可以將其發布到TFS。 如果您正在運行TFS 2015,我強烈建議您使用vNext版本,這樣可以更輕松地運行這些版本。 檢查“發布測試結果”構建步驟。
如果您正在使用XAML構建運行,此鏈接將幫助您: 使用Chutzpah對Team Foundation Service進行Javascript單元測試
如果您使用的是vNext版本,請嘗試在此博客中使用Jasmine.JS測試(也是一種JavaScript測試)中提到的詳細步驟。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.