配置測試應用程式
一旦準備好 UWP 應用程式進行測試,就應該在解決方案中新增測試應用程式。要做到正確,請單擊解決方案並選擇“單元測試應用程式(通用 Windows)”:
將其新增到解決方案後,配置它需要更多步驟。系統將要求你選擇目標和最低平臺版本:
選擇它們後,開啟“project.json”檔案並新增以下依賴項:
"dependencies":
{
"Microsoft.NETCore.UniversalWindowsPlatform": "5.1.0",
"xunit.runner.visualstudio": "2.1.0",
"xunit": "2.1.0",
"xunit.runner.devices": "2.1.0"
}
這些用於下載和新增 NuGet xUnit Framework 包,以便為 UWP 應用程式輕鬆進行單元測試。
刪除名為“MSTestFramework.Universal”的引用:
現在開啟“UnitTest.cs”檔案。將其修改為如下所示:
using System;
using Xunit;
namespace UnitTestsForUwp
{
public class UnitTest1
{
[Fact]
public void TestMethod1()
{
Assert.Equal(4, 4);
}
[Theory]
[InlineData(6)]
public void TestMethod2(int value)
{
Assert.True(IsOdd(value));
}
bool IsOdd(int value)
{
return value % 2 == 1;
}
}
}
}
最好暫時停下來談談 xUnit 屬性:
一個。事實測試總是如此。他們測試不變的條件。
灣理論 - 僅對特定資料集進行測試。
現在我們要準備應用程式以顯示有關測試的資訊,但不僅僅是 - 有一個好的方法來開始測試是好的。為了實現這一點,我們需要在“UnitTestApp.xaml”檔案中進行小的更改。開啟它並用以下貼上替換所有程式碼:
<ui:RunnerApplication
x:Class="UnitTestsForUwp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:UnitTestsForUwp"
xmlns:ui = "using:Xunit.Runners.UI"
RequestedTheme="Light">
</ui:RunnerApplication>
請記住,local
應與你的名稱空間具有相同的名稱。
現在開啟“UnitTestApp.xaml.cs”並用下面的程式碼替換:
sealed partial class App : RunnerApplication
{
protected override void OnInitializeRunner()
{
AddTestAssembly(GetType().GetTypeInfo().Assembly);
InitializeRunner();
}
partial void InitializeRunner();
}
而已! 現在重建專案並啟動測試應用程式。如你所見,你可以訪問所有測試,你可以啟動它們並檢查結果: