• <menu id="w2i4a"></menu>
  • logo Visual Studio系列教程

    文檔首頁>>Visual Studio系列教程>>Visual Studio 使用教程:進(jìn)行單元測(cè)試

    Visual Studio 使用教程:進(jìn)行單元測(cè)試


    Visual Studio 是功能完備的 IDE,可用于編碼、調(diào)試、測(cè)試和部署到任何平臺(tái),Visual Studio使用 .NET 開發(fā) iOS、Android 和 Web 應(yīng)用和游戲。

    點(diǎn)擊下載Visual Studio正式版

    使用Visual Studio定義和運(yùn)行單元測(cè)試,以維護(hù)代碼的運(yùn)行狀況,確保代碼覆蓋率以及在客戶這樣做之前發(fā)現(xiàn)錯(cuò)誤和錯(cuò)誤。經(jīng)常運(yùn)行單元測(cè)試以確保您的代碼正常運(yùn)行。

    創(chuàng)建單元測(cè)試

    本節(jié)介紹如何創(chuàng)建單元測(cè)試項(xiàng)目。

    在Visual Studio中打開要測(cè)試的項(xiàng)目。

    為了演示示例單元測(cè)試,本文測(cè)試了一個(gè)名為HelloWorldCore的簡單“ Hello World”項(xiàng)目。該項(xiàng)目的示例代碼如下:

    namespace HelloWorldCore
    
       public class Program
       {
          public static void Main()
          {
             Console.WriteLine("Hello World!");
          }
       }
    在“解決方案資源管理器”中,選擇解決方案節(jié)點(diǎn)。然后,從頂部菜單欄中,選擇File > Add > New Project。

    在新項(xiàng)目對(duì)話框中,找到要使用的測(cè)試框架的單元測(cè)試項(xiàng)目模板,然后選擇它。

    單擊下一步,為測(cè)試項(xiàng)目選擇一個(gè)名稱,然后單擊創(chuàng)建。該項(xiàng)目已添加到您的解決方案中。

    解決方案資源管理器中的單元測(cè)試項(xiàng)目

    在單元測(cè)試項(xiàng)目中,通過右鍵單擊“ 引用”或“ 依賴項(xiàng)”,然后選擇“ 添加引用”,向要測(cè)試的項(xiàng)目添加引用。

    選擇包含要測(cè)試的代碼的項(xiàng)目,然后單擊“ 確定”。

    將代碼添加到單元測(cè)試方法中。例如,對(duì)于MSTest項(xiàng)目,您可以使用以下代碼。

    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using System.IO;
    using System;
    
    namespace HelloWorldTests
    {
       [TestClass]
       public class UnitTest1
       {
          private const string Expected = "Hello World!";
          [TestMethod]
          public void TestMethod1()
          {
             using (var sw = new StringWriter())
             {
                Console.SetOut(sw);
                HelloWorldCore.Program.Main();
    
                var result = sw.ToString().Trim();
                Assert.AreEqual(Expected, result);
             }
          }
       }
    }
    或者,對(duì)于NUnit項(xiàng)目,您可以使用以下代碼。

    using using NUnit.Framework;
    using System.IO;
    using System;
    
    namespace HelloWorldTests
    {
       [TestClass]
       public class Tests
       {
          private const string Expected = "Hello World!";
    
          [SetUp]
          public void Setup()
          {
          }
          [Test]
          public void TestMethod1()
          {
             using (var sw = new StringWriter())
             {
                Console.SetOut(sw);
                HelloWorldCore.Program.Main();
    
                var result = sw.ToString().Trim();
                Assert.AreEqual(Expected, result);
             }
          }
       }
    }
    運(yùn)行單元測(cè)試

    打開測(cè)試資源管理器。

    要打開測(cè)試資源管理器,請(qǐng)從頂部菜單欄中選擇“ 測(cè)試” >“ 測(cè)試資源管理器 ”。

    通過單擊“全部運(yùn)行”來運(yùn)行單元測(cè)試。

    在測(cè)試資源管理器中運(yùn)行單元測(cè)試

    測(cè)試完成后,綠色復(fù)選標(biāo)記表示測(cè)試已通過。紅色的“ x”圖標(biāo)表示測(cè)試失敗。

    在測(cè)試資源管理器中查看單元測(cè)試結(jié)果

    提示:您可以使用測(cè)試資源管理器從內(nèi)置測(cè)試框架(MSTest)或第三方測(cè)試框架中運(yùn)行單元測(cè)試。您可以將測(cè)試分為幾類,過濾測(cè)試列表,以及創(chuàng)建,保存和運(yùn)行測(cè)試的播放列表。您還可以調(diào)試測(cè)試并分析測(cè)試性能和代碼覆蓋率。

    查看現(xiàn)場單元測(cè)試結(jié)果

    如果您在Visual Studio 2017或更高版本中使用MSTest,xUnit或NUnit測(cè)試框架,則可以查看單元測(cè)試的實(shí)時(shí)結(jié)果。

    注意:實(shí)時(shí)單元測(cè)試僅在企業(yè)版中可用。

    通過選擇“ 測(cè)試” >“ 現(xiàn)場單元測(cè)試” >“ 開始”,從“ 測(cè)試”菜單打開現(xiàn)場單元測(cè)試。

    在Visual Studio 2019中開始實(shí)時(shí)單元測(cè)試

    在編寫和編輯代碼時(shí),在代碼編輯器窗口中查看測(cè)試結(jié)果。

    查看測(cè)試結(jié)果

    單擊測(cè)試結(jié)果指示符以查看更多信息,例如覆蓋該方法的測(cè)試名稱。

    選擇測(cè)試結(jié)果指標(biāo)

    使用IntelliTest生成單元測(cè)試

    運(yùn)行IntelliTest時(shí),您可以查看哪些測(cè)試失敗,并添加任何必要的代碼來修復(fù)它們。您可以選擇將哪些生成的測(cè)試保存到測(cè)試項(xiàng)目中以提供回歸套件。在更改代碼時(shí),請(qǐng)重新運(yùn)行IntelliTest以使生成的測(cè)試與代碼更改保持同步。

    提示:IntelliTest僅適用于以.NET Framework為目標(biāo)的托管代碼。

    使用IntelliTest生成單元測(cè)試

    分析代碼覆蓋率

    若要確定項(xiàng)目代碼的實(shí)際比例是由編碼測(cè)試(例如單元測(cè)試)測(cè)試的,可以使用Visual Studio的代碼覆蓋功能。為了有效地防范錯(cuò)誤,您的測(cè)試應(yīng)使用大部分代碼。

    使用第三方測(cè)試框架

    您可以使用第三方測(cè)試框架(例如Boost,Google和NUnit)在Visual Studio中運(yùn)行單元測(cè)試。使用NuGet軟件包管理器為您選擇的框架安裝NuGet軟件包。或者,對(duì)于NUnit和xUnit測(cè)試框架,Visual Studio包括預(yù)配置的測(cè)試項(xiàng)目模板,這些模板包含必要的NuGet包。

    要?jiǎng)?chuàng)建使用NUnit的單元測(cè)試:

    • 打開包含要測(cè)試的代碼的解決方案。
    • 在解決方案資源管理器中右鍵單擊該解決方案,然后選擇添加 > 新建項(xiàng)目。
    • 選擇NUnit Test Project項(xiàng)目模板。

    單擊下一步,為項(xiàng)目命名,然后單擊創(chuàng)建。該項(xiàng)目模板包括對(duì)NUnit和NUnit3TestAdapter的NuGet引用。

    解決方案資源管理器中的NUnit NuGet依賴項(xiàng)

    將引用從測(cè)試項(xiàng)目添加到包含要測(cè)試的代碼的項(xiàng)目。

    在解決方案資源管理器中右鍵單擊該項(xiàng)目,然后選擇添加 > 參考。(您也可以從“ 引用”或“ 依賴項(xiàng)”節(jié)點(diǎn)的右鍵單擊菜單中添加引用。)

    將代碼添加到您的測(cè)試方法。

    將代碼添加到您的單元測(cè)試代碼文件中

    從測(cè)試資源管理器 ”中運(yùn)行測(cè)試,或右鍵單擊測(cè)試代碼并選擇“運(yùn)行測(cè)試”。

    推薦閱讀:

    創(chuàng)建單元測(cè)試命令

    本文內(nèi)容到這里就結(jié)束了,本系列教程持續(xù)更新了,敬請(qǐng)期待~喜歡該產(chǎn)品的朋友可以點(diǎn)擊下載Visual Studio試用版免費(fèi)體驗(yàn)~


    想要購買Visual Studio正版授權(quán),或了解更多產(chǎn)品信息請(qǐng)點(diǎn)擊【咨詢?cè)诰€客服】

    慧聚IT

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();