在vs2017中嘗試c 單元測試(一)

2021-09-27 11:20:16 字數 905 閱讀 8784

首先有兩種方式來建立:

第一種是新建專案:

即包括core型別,也包括傳統型別。

第二種是在**處直接右鍵:

兩種方法的區別在於: 「建立單元測試」選單命令僅適用於面向 .net framework(但不是 .net core)的託管** 。

單元測試的框架很多,mstest是微軟自帶框架,第三方框架nunit 或 xunit,vs2017已經自帶了,無需nuget安裝。

如果想自動為 nunit 或 xunit 生成單元測試,請從 visual studio marketplace 安裝測試框架擴充套件。

並非所有第三方和開放源**單元測試框架都提供 visual studio 專案模板。

在你的單元測試專案中,將引用新增到所測試專案的**中。

在「專案」 選單上,選擇「新增引用」 。

在「引用管理器」對話方塊中,開啟「解決方案」節點,然後選擇「專案」 。 選擇**專案名稱並關閉對話方塊。

aaa(準備、執行、斷言)模式是編寫待測試方法的單元測試的常用方法。

準備 :部分初始化物件並設定傳遞給待測試方法的資料的值。// arrange

執行 :部分呼叫具有準備引數的待測試方法。// act

斷言 :部分驗證待測試方法的執行行為與預期相同。 // assert

在 「生成」 選單上,選擇 「生成解決方案」 。

在測試資源管理器中執行測試,如果「測試資源管理器」不可見,請選擇 visual studio 選單上的「測試」,然後依次選擇「windows」、「測試資源管理器」。

單元測試驅動程式設計,嘗試中

單元測試驅動程式設計大致思想是,首先要想實現什麼功能,為該功能編寫空實現類及單元測試類,之後再寫具體的實現,具體的實現可以重構。下面是乙個例子 1 我要實現求字串指定起始與終止位置的字串,那麼我定義了乙個mystring類,先宣告並且定義該類,但是不具體實現 標頭檔案 ifndef mystring...

在VS2017中玩耍OpenMP

include 加入標頭檔案 include using namespace std intmain int argc,char ar 輸出如下 hello,i am thread 1 hello,i am thread 2 hello,i am thread 0 hello,i am thread...

Qt在VS中使用單元測試

在工程的解決方案中,新建乙個單元測試專案autotest,qt控制台專案,勾選core,test模組 建立ctest類 include include class ctest public qobject include ctest.h include ctest ctest ctest ctest...