{
"cells": [
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"运行 xUnit 单元测试\n",
"====================="
]
},
"## 1、引入必要的NuGet包到.NET Interactive环境中"
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
"polyglot_notebook": {
"kernelName": "csharp"
}
"outputs": [],
"// 默认包源\n",
"#i \"https://api.nuget.org/v3/index.json\"\n",
"\n",
"//Nuget 包引用\n",
"#r \"nuget:xunit\"\n",
"#r \"nuget:xunit.runner.visualstudio\"\n",
"#r \"nuget:xunit.runner.console\""
"## 2、定义测试类和测试方法"
"using Xunit;\n",
"public class CalculatorTests\n",
"{\n",
" [Fact]\n",
" public void Add_ReturnsCorrectSum()\n",
" {\n",
" var calculator = new Calculator();\n",
" var result = calculator.Add(2, 2);\n",
" Assert.Equal(4, result);\n",
" }\n",
" public void Subtract_ReturnsCorrectDifference()\n",
" var result = calculator.Subtract(5, 3);\n",
" Assert.Equal(2, result);\n",
"}\n",
"public class Calculator\n",
" public int Add(int x, int y) => x + y;\n",
" public int Subtract(int x, int y) => x - y;\n",
"}\n"
"## 3、执行测试并获取结果。在.NET Interactive中,直接运行xUnit测试并不像在Visual Studio或通过命令行那样直接。你需要手动实例化测试类并调用测试方法,或者使用反射来自动发现和执行测试方法。以下是一个简化的例子,展示如何手动执行测试方法并输出结果。"
"// 手动执行测试方法\n",
"var calculatorTests = new CalculatorTests();\n",
"// 执行Add_ReturnsCorrectSum测试\n",
"calculatorTests.Add_ReturnsCorrectSum();\n",
"// 执行Subtract_ReturnsCorrectDifference测试\n",
"calculatorTests.Subtract_ReturnsCorrectDifference();\n",
"Console.WriteLine(\"Tests executed successfully.\");\n"
],
"kernelspec": {
"display_name": ".NET (C#)",
"language": "C#",
"name": ".net-csharp"
"language_info": {
"name": "polyglot-notebook"
"orig_nbformat": 4,
"kernelInfo": {
"defaultKernelName": "csharp",
"items": [
"aliases": [],
"name": "csharp"
"name": "razor"
"nbformat": 4,
"nbformat_minor": 2