Visual Studio 2015的安裝和簡單的單元測試


何為單元測試

絕大多數的軟件都是由多人合作完成的,大家的工作相互有依賴關系。軟件的很多錯誤都來源於程序員對模塊功能的誤解、疏忽或不了解其他模塊的變化。如何能讓自己負責的模塊功能的定義盡量的明確,模塊內部的改變不會影響其他模塊,而且模塊的質量能得到穩定的、量化的保證?單元測試就是一個很有效的解決方案。

首先是Visual Studio 2015的安裝

Visual Studio是微軟開發的一套基於組件的軟件開發工具,目前最新的版本是2015。

  • 在 I Tell you 網站下載Visual Studio 2015 社區版。網址:http://www.itellyou.cn/。

  • 待下載完畢之后解壓,一共包含四個文件或文件夾。雙擊.exe文件開始安裝。

  • 開始安裝界面:

  • 選擇安裝位置和安裝類型:這里安裝位置選擇在:D:\Program Files (x86)\Microsoft Visual Studio 14.0目錄下,安裝類型選擇自定義。點擊下一步。

  • 根據跟人情況選擇需要安裝的功能,由於作業需要,這里編程語言需選擇Visual C++。點擊下一步。

  • 預覽所選擇的功能。點擊安裝。

  • 等待安裝完成。

  • 安裝完成,需重啟電腦。

至此,已經完成Visual Studio 2015的安裝。

  • 簡單的單元測試
  • 在Visual Studio 2015中建立項目

新建一個“Win 32控制台應用程序”,命名為“UnitTest”。

文件->新建->項目:

 

已安裝->Visual C++ ->Win32 控制台應用程序->名稱:“UnitTest”。點擊確定。

Win32 應用程序向導:點擊寫一步。

Win32 應用程序向導:點擊完成。

添加頭文件和源文件。並編寫代碼。

頭文件頭文件上右擊->添加。

添加頭文件:AddFunc.h。

添加源文件:AddFunc.cpp。

同方法,添加頭文件:SubFunc.h和源文件SuaFunc.cpp、main.cpp。

頭文件AddFunc.h代碼:

//AddFunc.h
#ifndef _ADD_FUNC_H_
#define _ADD_FUNC_H_

int AddFunc(int x, int y);

#endif

 

源文件AddFunc.cpp代碼:

//AddFunc.cpp
#include "Addfunc.h"

int AddFunc(int x, int y)
{
    return x + y;
}

 

頭文件SubFunc.h代碼:

//SubFunc.h
#ifndef _SUB_FUNC_H_
#define _SUB_FUNC_H_

int SubFunc(int x, int y);

#endif

 

源文件SubFunc.cpp代碼:

//SuaFunc.cpp
#include "SubFunc.h"

int SubFunc(int x, int y)
{
    return x - y;
}

 

編譯鏈接此工程,生成一序列的obj文件。並對各個函數進行單元測試。

  • 建立單元測試項目

選擇已安裝->Visual C++ ->測試->托管測試項目“UnitTest_1”。點擊確認。

建立單元測試項目后的解決方案資源管理器:

單元測試項目中的源文件“UnitTest”中的代碼:

添加加法的頭文件“AddFunc.h”。

更改測試方法的函數名稱“void TestMethod1()”為“void testMethodAddFunc()”,並添加代碼:

            int nx = 2,ny = 2,nExpect = 4;
            int nReal = AddFunc(nx,ny);
            Assert::AreEqual(nReal, nExpect);

 

把加法的obj文件包含進來。

在測試工程上右擊->屬性->配置屬性->連接器->輸入->添加依賴項右面下箭頭->編輯。

輸入加法的obj的目錄:..\UnitTest\Debug\AddFunc.obj,點擊確定。

  • 運行測試項目

測試項目“UnitTest_1”上右擊->屬性->配置屬性->常規->公共語言運行時支持。選擇如下。單擊確定。

 

打開測試資源管理窗口:

測試資源管理器:

在測試資源管理器窗口點擊全部運行。運行結果如下:若單元測試的結果正確,則單元測試的方法左面會提示一個綠色的勾,否則提示一個紅色的叉。

同方法,添加減法的單元測試方法。

附:函數Assert::AreEqual()的功能是驗證指定的值是否相等。詳細方法說明參見:https://msdn.microsoft.com/zh-cn/library/microsoft.visualstudio.testtools.unittesting.assert.areequal.aspx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM