Visual Studio是功能完備的 IDE,可用于編碼、調(diào)試、測(cè)試和部署到任何平臺(tái),Visual Studio使用 .NET 開發(fā) iOS、Android 和 Web 應(yīng)用和游戲。 
	點(diǎn)擊立即下載Visual Studio  
有多種測(cè)試DLL代碼的方法,具體取決于它是否導(dǎo)出要測(cè)試的功能。選擇以下方式之一: 
	- 
		單元測(cè)試僅調(diào)用從DLL導(dǎo)出的函數(shù):按照編寫C / C ++單元測(cè)試中所述添加單獨(dú)的測(cè)試項(xiàng)目。在測(cè)試項(xiàng)目中,添加對(duì)DLL項(xiàng)目的引用。 
	
- 
		DLL被構(gòu)建為.exe文件:添加一個(gè)單獨(dú)的測(cè)試項(xiàng)目。將其鏈接到輸出目標(biāo)文件。 
	
- 
		單元測(cè)試調(diào)用未從DLL導(dǎo)出的非成員函數(shù),并且DLL可以構(gòu)建為靜態(tài)庫:更改DLL項(xiàng)目,以便將其編譯為.lib文件。添加一個(gè)單獨(dú)的測(cè)試項(xiàng)目,該項(xiàng)目引用被測(cè)項(xiàng)目。這種方法的好處是允許您的測(cè)試使用未導(dǎo)出的成員,但仍將測(cè)試保留在單獨(dú)的項(xiàng)目中。 
	
- 
		單元測(cè)試必須調(diào)用未導(dǎo)出的非成員函數(shù),并且代碼必須構(gòu)建為動(dòng)態(tài)鏈接庫(DLL):在與產(chǎn)品代碼相同的項(xiàng)目中添加單元測(cè)試。 
	
	創(chuàng)建測(cè)試
將DLL更改為靜態(tài)庫 
	- 
		如果您的測(cè)試必須使用DLL項(xiàng)目未導(dǎo)出的成員,并且被測(cè)試項(xiàng)目被構(gòu)建為動(dòng)態(tài)庫,請(qǐng)考慮將其轉(zhuǎn)換為靜態(tài)庫。 
	
		- 
			在解決方案資源管理器中,在要測(cè)試的項(xiàng)目的快捷菜單上,選擇“屬性”。將打開項(xiàng)目“屬性”窗口。 
		
- 
			選擇“配置屬性>常規(guī)”。 
		
- 
			將配置類型設(shè)置為靜態(tài)庫(.lib)。 
		
	引用測(cè)試項(xiàng)目中導(dǎo)出的DLL函數(shù)
 
	- 
		如果DLL項(xiàng)目導(dǎo)出了要測(cè)試的功能,則可以從測(cè)試項(xiàng)目中添加對(duì)代碼項(xiàng)目的引用。 
	
		- 
			創(chuàng)建一個(gè)本機(jī)單元測(cè)試項(xiàng)目。
		
			- 
				在“文件”菜單上,選擇“新建”>“項(xiàng)目”。在“添加新項(xiàng)目”對(duì)話框中,將“語言”設(shè)置為C ++,然后在搜索框中鍵入“ test”。然后選擇“本機(jī)單元測(cè)試項(xiàng)目”。
			
- 
			在解決方案資源管理器中,右鍵單擊測(cè)試項(xiàng)目,然后選擇“添加”>“引用”。
		
- 
			選擇項(xiàng)目,然后選擇要測(cè)試的項(xiàng)目。
		選擇添加按鈕。
- 
			在測(cè)試項(xiàng)目的屬性中,將被測(cè)試項(xiàng)目的位置添加到“包括目錄”中。
		選擇“配置屬性”>“ VC ++目錄”>“包含目錄”。選擇“編輯”,然后添加要測(cè)試的項(xiàng)目的頭目錄。
	將測(cè)試鏈接到對(duì)象或庫文件 
	- 
		如果DLL沒有導(dǎo)出要測(cè)試的功能,則可以將輸出.obj或.lib文件添加到測(cè)試項(xiàng)目的依賴項(xiàng)中。 
	
		- 
			創(chuàng)建一個(gè)本機(jī)單元測(cè)試項(xiàng)目。 
		
			- 
				在“文件”菜單上,選擇“新建”>“項(xiàng)目”。在“添加新項(xiàng)目”對(duì)話框中,將“語言”設(shè)置為C ++,然后在搜索框中鍵入“ test”。然后選擇“本機(jī)單元測(cè)試項(xiàng)目”。 
			
- 
			在解決方案資源管理器中,在測(cè)試項(xiàng)目的快捷菜單上,選擇“屬性”。 
		
- 
			選擇“配置屬性>鏈接器>輸入>其他依賴關(guān)系”。 
		選擇“編輯”,然后添加.obj或.lib文件的名稱,不要使用完整路徑名。
- 
			選擇“配置屬性>鏈接器>常規(guī)>其他庫目錄”。 
		選擇“編輯”,然后添加.obj或.lib文件的目錄路徑。該路徑通常在被測(cè)項(xiàng)目的build文件夾中。
- 
			選擇“配置屬性”>“ VC ++目錄”>“包含目錄”。 
		選擇“編輯”,然后添加要測(cè)試的項(xiàng)目的頭目錄。
	在同一項(xiàng)目中添加單元測(cè)試 
	- 
		修改產(chǎn)品代碼項(xiàng)目屬性,以包括單元測(cè)試所需的頭文件和庫文件。 
	
		- 
			在解決方案資源管理器中,在被測(cè)項(xiàng)目的快捷菜單中,選擇“屬性”,將打開項(xiàng)目“屬性”窗口。 
		
- 
			選擇“配置屬性”>“ VC ++目錄”。 
		
- 
			編輯包含和庫目錄: 
		
	
		
			
				| 目錄 | 屬性 | 
			
				| 包含目錄 | $(VCInstallDir)UnitTest\include;$(IncludePath) 
 | 
			
				| 圖書館目錄 | $(VCInstallDir)UnitTest\lib;$(LibraryPath) 
 | 
		
	
	- 
		添加一個(gè)C ++單元測(cè)試文件: 
	
		- 
			在解決方案資源管理器中,在項(xiàng)目的快捷菜單中,選擇“添加”>“新建項(xiàng)”>“ C ++單元測(cè)試”。 
		
	編寫單元測(cè)試
在每個(gè)單元測(cè)試代碼文件中,為要測(cè)試的項(xiàng)目的標(biāo)題添加#include語句。將測(cè)試類和方法添加到單元測(cè)試代碼文件中。例如:
 
#include "stdafx.h"
#include "CppUnitTest.h"
#include "MyProjectUnderTest.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace MyTest
{
  TEST_CLASS(MyTests)
  {
  public:
      TEST_METHOD(MyTestMethod)
      {
          Assert::AreEqual(MyProject::Multiply(2,3), 6);
      }
  };
}
	運(yùn)行測(cè)試 
	- 
		在“測(cè)試”菜單上,選擇“ Windows”>“測(cè)試資源管理器”。 
	
- 
		如果在窗口中看不到所有測(cè)試,請(qǐng)?jiān)凇敖鉀Q方案資源管理器”中右鍵單擊其節(jié)點(diǎn),然后選擇“生成”或“重新生成”,以構(gòu)建測(cè)試項(xiàng)目。 
	
- 
		在測(cè)試資源管理器中,選擇“全部運(yùn)行”,或選擇要運(yùn)行的特定測(cè)試。右鍵單擊測(cè)試以獲取其他選項(xiàng),包括在啟用斷點(diǎn)的調(diào)試模式下運(yùn)行。 
	
	推薦文章:
	在Visual Studio中編寫C / C ++的單元測(cè)試 
	想要購買Visual Studio正版授權(quán),或了解更多產(chǎn)品信息請(qǐng)點(diǎn)擊 
	 
 
					
					標(biāo)簽:
					
					
						本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
												文章轉(zhuǎn)載自: