我是单元测试的新手,也是 C# 的新手,非常感谢有关如何编写单元测试以确保 AddGrade 方法中的逻辑正常工作的帮助。所以基本上如果成绩 >=0 和 <=100 那么成绩是有效的,它将被添加,其他任何东西都不是,它应该在控制台中显示一个错误。
我看过另一篇关于在 c# 中对 if-else 语句进行单元测试的帖子,并尝试从中解决这个问题,但如果我说实话,它让我感到困惑。我环顾网上等,并尝试了很多不同的方法来尝试解决这个问题,但我发现有时很难将人们的示例应用到我的代码中,所以我认为最好只是发布我的代码并获得一些帮助,任何帮助都会不胜感激:)
我正在使用 Xunit 进行单元测试。该项目在控制台中运行。
这是带有main方法的程序类
using System;
using System.Collections.Generic;
namespace GradeBook
{
class Program
{
static void Main(string[] args)
{
var book = new Book("Dave's");
//add grade to the book
book.AddGrade(90.5);
book.AddGrade(80.5);
book.AddGrade(70.5);
book.AddGrade(60.5);
var stats = book.GetStatistics();
Console.WriteLine($"This Gradebooks name is {book.Name}");
Console.WriteLine($"The highest grade is {stats.High:N1}");
Console.WriteLine($"The lowest grade is {stats.Low:N1}");
Console.WriteLine($"The average grade is {stats.Average:N1}");//N1,N2 etc. is number of decimal places
}
}
} …Run Code Online (Sandbox Code Playgroud)