簡體   English   中英

如何設置NUnit來運行項目的單元測試?

[英]How do I set up NUnit to run my project's unit tests?

我開始使用NUnit在.NET 4.0上使用Visual Studio 2010在C#中編寫測試用例。 我想使用NUnit來測試.dll(一個C#類庫項目)的公共函數。 如何設置NUnit以使用我的項目?

  1. 我應該將NUnit代碼添加到同一個類庫項目進行測試,還是應該在同一個NUnit測試用例的解決方案中添加一個單獨的項目? 哪種是最佳做法?

  2. 如果我需要為NUnit測試用例創建一個單獨的項目,我應該將其作為類庫項目還是可執行文件? 如果我把它作為一個類庫項目,我該如何運行它?

  3. 如果我需要測試可執行文件而不是類庫項目,那么進程和/或項目是否有任何更改?

重新2

通常,將[測試用例dll]與[業務邏輯dll]分開。 您的業​​務邏輯DLL不應包含任何NUnit知識,以分離關注點並簡化部署/維護。

您的測試用例dll應該包含對NUnit和業務邏輯dll的引用。

您不需要共享命名空間。 您可以通過修改業務邏輯dll的AssemblyInfo.cs文件以將內部暴露給測試用例dll,將業務邏輯dll的內部成員公開給測試用例dll。 這使您可以在業務邏輯dll中保留所需的可見性。

重新3

您的測試用例應該進入dll(即類庫項目)。 您可以將其直接加載到NUnit的UI中,或者在集成環境中使用NUnit的控制台運行程序來自動運行測試。

我是怎么做到的

  • 打開測試用例類庫項目屬性,Debug選項卡
  • 設置為使用外部程序打開:將其指向您的nunit.exe
  • 將命令行參數設置為測試用例dll的確切名稱:MyTests.dll
  • 工作目錄:只需單擊省略號按鈕,它將預先選擇當前構建配置的測試dll輸出目錄
  • 將測試項目設置為解決方案中的默認啟動項目; 這樣,無論何時按下F5(或“播放”按鈕),NUnit都會預先加載您更新的測試 - 非常方便快捷。

祝你好運 - 也試試測試項目類型avl。 在Visual Studio中,它與NUnit非常相似。 我仍然更喜歡NUnit,但在學習它的同時嘗試各種選擇也是一件好事。

  1. 單元測試應該在同一解決方案的單獨測試項目中進行。
  2. 是的,使它成為一個類庫項目。 如果您想在NUnit中運行測試, 本教程可以向您展示如何操作

關於你的評論:當你將NUnit.exe設置為測試類庫(包含你的單元測試的那個)的默認Start可執行文件時,你告訴NUnit你要測試哪個DLL; 在第一次之后,它將隨后記住您正在運行測試的項目。

您還需要確保單元測試庫中有引用其他項目的引用。

再次,我列出的教程經歷了所有這些。

2:您應該將所有NUnit測試放在同一解決方案中的單獨項目中。 構建項目構建測試,反之亦然,所以當你正在TDD這個項目時(你正在這樣做,對嗎?)你可以簡單地運行測試,它將構建所需的一切。 3:類庫。 如果你使用NUnit,它不需要由Windows運行; 你只需要使用測試運行器。

我將為測試代碼添加一個單獨的測試項目,並從中引用NUnit和正在測試的庫。 它應該是一個類庫,它由NUnit測試運行器運行,例如nunit-console test_assembly.dll - 請參閱文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM