VS2017中對C++的單元測試

安裝Visual Studio 2017

因爲平時都是用codeblock,所以電腦中沒有裝VS系列的IDE,就從安裝開始吧

最開始安裝的時候沒有注意什麼都沒選,安裝完了之後根本沒有c++的編譯器和各項組件............

上圖就是啥都沒安裝...要否則怎麼安裝包只有一百多MB.....

歷經千辛萬苦終於裝完了。那麼下一步就開始單元測試吧。ios


對C++進行單元測試

首先先創建一個工程,分別編寫cpp和頭文件,下圖是我剛開始編寫的程序,僅僅寫了cpp文件,沒有自定義頭文件,下面的代碼是我後寫的
c++

最終cpp文件中的代碼以下:函數

#include<iostream>
#include"test.h"
using namespace std;

int Cal::add(int x, int y)//返回兩個變量的和
{
    return x + y;
}

int Cal::sub(int x, int y)//返回兩個變量的差
{
    return x - y;
}

int main()
{
    return 0;
}

最終頭文件test.h中的代碼以下:visual-studio

class Cal {//計算類
public:
    int add(int x, int y);
    int sub(int x, int y);
};

肯定代碼無誤後,右鍵點擊「解決方案」->"添加"->「新建項目」,以下圖所示
單元測試

緊接着在彈出的頁面選擇「本機單元測試項目」
學習

此時左側的狀態欄出現了單元測試的項目,「UnitTest1」
測試

右鍵選中引用,點擊「添加引用」,以下圖所示
spa

勾選須要引用的項目,也就是須要測試的項目
code

接下來開始編寫測試程序,以下圖所示
blog

而後操做以下圖,可是...........

去 世 了

通過一番不懈的查找努力終於找到了問題所在...沒有引入須要測試項目的頭文件.....下圖爲改正後的測試代碼

那麼再測試一次吧...應該沒事了吧......

又 去 世 了

其實問題出在了這裏...右鍵測試項目,而後選擇屬性

選擇「連接器」->"輸入"->"選擇依賴項"

能夠看到我輸入的是須要測試項目的obj文件的路徑,可是寫的倒是*.obj,至關於選擇該文件夾下全部obj文件

可是打開對應的文件夾後,發現有兩個obj文件.....緣由是由於最先創建項目時使用了默認名稱,可是爲了引用成功我給改爲了英文名...所以有兩個obj文件,系統不肯定究竟是哪個文件(你妹)

因而乎回去修改依賴項...改爲肯定的文件......

終 於 運 行 成 功 了

這裏說一下,Assert::AreEqual函數是肯定是否兩個數相等的操做,若是兩個數不相等,那麼將不會經過測試,可是運行能夠成功,以下圖所示,3-5=-2,不知足的話就不能經過測試

總結

經過學習vs2017的單元測試,我掌握了進行單元測試的的基礎方法,在錯誤中成長,學會了很多東西,爭取在這以後快速的根據別人的博客學會更多的測試技術(好比一個類在運行時還要引用新的文件,那麼依賴項仍是要進行修改),也讓我意識到了自學是進步最快的方法,多讀別人的博客可能就會學會不少東西,所以要虛心好學。

相關文章
相關標籤/搜索