1. 程式人生 > >Taking the MSTest Framework forward with “MSTest V2”[譯]

Taking the MSTest Framework forward with “MSTest V2”[譯]

with 工程 英文 sdn markdown -i 文檔化 -a uwp

??最近,我們宣布MSTest Framework支持.NET Core RC2/ASP.NET Core RC2,最終,我們把加入這一新特性的MSTest Framework更名為“MSTest V2”,在發布版本中可以看到關於改進MSTest Framework的大致方向。

了解一些上下文

??在Visual Studio中,我們有一套開放的測試平臺,通過不同的適配器,支持使用不同的測試框架寫測試用例,開發者可以根據自己的意願自由選擇,就像一個測試框架和不同適配器組成的測試生態系統。在這個生態系統中,MSTest扮演著特殊的角色,它經常被用來寫純粹的單元測試。然而,這麽些年來,為了給多個平臺提供支持,MSTest已變得有些冗雜。為了給桌面程序,應用商店程序,以及UWP程序提供支持,開發者需要了解這之間的細微差別。比如,針對桌面程序的命名空間是Microsoft.VisualStudio.TestTools.UnitTesting,而UWP的命名空間是另外的Microsoft.VisualStudio.TestPlatform.UnitTestFramework。

MSTest V2

??在MSTest V2上,我們投入了比較大的精力,它是MSTest的新版本,帶來了如下這些新功能:

  1. 提供全平臺支持-桌面程序,商店程序,UWP,ASP.NET Core 1.0,.NET Core 1.0
  2. 對所有的基於MSTest的測試工程提供數據行支持
  3. 允許將TestCategory特性應用到類級別和程序集級別
  4. 統一的單一終端擴展機制
  5. 通過nuget分發

??在申明中有關於如何在.NET Core中使用MSTest V2。如果是桌面程序或UWP程序,可以參考如下步驟:

  • 首先安裝“MSTest V2”類庫
    技術分享圖片

  • 接著安裝適配器(此適配器和用於.NET Core的適配器不通用):
    技術分享圖片

  • 然後在代碼中引用命名空間(此命名空間處理了對老版本的兼容性問題):

    using Microsoft.VisualStudio.TestTools.UnitTesting

OK,這樣我們就配置好了,接下來就可以寫測試用例了。

我們的計劃

??接下來我們將會有如下一些動作:

  1. 在Visual Studio 2015 Release 版本中,我們會更新一些測試工程模版和測試生成向導以增加對MSTest V2的支持
  2. 所有的bug修復和功能叠代都會圍繞MSTest V2
  3. 我們會繼續提供早期版本的MSTest二進制文件,但那僅僅是為了兼容性
  4. 我們會文檔化擴展機制
  5. 我們會從社區收集反饋

期待你的參與

  1. 如果你有使用MSTest的測試工程,強烈建議升級到MSTest V2,並開始使用它
  2. 如果你有寫一些MSTest的擴展,建議你在MSTest V2中繼續使用
  3. 如果你有新的測試工作,建議你使用MSTest V2

反饋

(此處省略n個字)

總結

??作為一個測試平臺,我們一直希望可以作為你評估多個測試平臺後的最終選擇。這次的新版本有望實現我們的目標。

強烈建議閱讀英文原文

date: 2017-11-06 22:15:45

Taking the MSTest Framework forward with “MSTest V2”[譯]