Live Unit Testing

??在Visual Studio 2017 企業(yè)版中,微軟給我們帶來(lái)了Live Unit Testing,這是一套可以實(shí)時(shí)反饋單元測(cè)試覆蓋和通過(guò)情況的黑科技,有了它,我們寫用例不需要頻繁的運(yùn)行測(cè)試,也不需要頻繁的運(yùn)行覆蓋率檢查,一切都可以在改變代碼后實(shí)時(shí)反饋給我們。

啟動(dòng)

??在Visual Studio 2017 企業(yè)版中,可以通過(guò)如下方式啟動(dòng)Live Unit Testing:

image.png

如果你發(fā)現(xiàn)啟動(dòng)Live Unit Testing后沒(méi)有任何反應(yīng),別緊張,多半是你沒(méi)有引入MSTest V2的類庫(kù)(TestPlatform.TestFramework和TestFramework.Extensions)并移除MSTest的類庫(kù)(QualityTools.UnitTestFramework)

Live Unit Testing需要實(shí)時(shí)分析代碼,運(yùn)行代碼,顯然對(duì)性能會(huì)有極大的需求,因此Visual Studio提供了暫停功能,暫停時(shí)收集的數(shù)據(jù)會(huì)緩存起來(lái),恢復(fù)后可以更快的完成代碼分析。

反饋代碼覆蓋情況

??當(dāng)我們成功啟動(dòng)Live Unit Testing后,在代碼中可以看到:

image.png

其中
紅色的叉:當(dāng)前行至少被一條未通過(guò)的用例覆蓋
綠色的鉤:當(dāng)前行被覆蓋,且覆蓋的用例都通過(guò)
藍(lán)色的杠:當(dāng)前行未被用例覆蓋

Live Unit Testing分析代碼會(huì)需要一定時(shí)間,因此我們可能會(huì)短暫的看到如下處理中的等待符號(hào):

image.png

??當(dāng)Live Unit Testing分析完代碼后,我們可以通過(guò)點(diǎn)擊代碼行前的符號(hào)快速的看到哪些用例通過(guò),哪些用例失敗,失敗的原因是什么等等,還可以進(jìn)一步快速定位到用例位置,便于修改用例。

測(cè)試框架支持

??目前Live Unit Testing支持主流的三個(gè)測(cè)試框架:MSTest、xUnit.net、NUnit,支持情況如下:

image.png

其他

??鑒于性能考慮,Live Unit Testing支持在解決方案中選擇部分項(xiàng)目或者類做代碼分析,同時(shí),Live Unit Testing和Test Explorer是同步的,在代碼編輯窗口反饋的同時(shí),Test Explorer也會(huì)實(shí)時(shí)更新。如果需要更多的Live Unit Testing配置,可以到Tools/Options/Settings中搜索Live Unit Testing。



2017-11-06 22:20:31

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容