C# 使用对象作为参数时的Nunit测试
我有一个“patientinfo”类,它包括变量,例如名字、姓氏、年龄、体重、身高、性别。。。。这些变量中的每一个都有get和set方法。 “另一类”程序有以下方法C# 使用对象作为参数时的Nunit测试,c#,object,parameters,nunit,C#,Object,Parameters,Nunit,我有一个“patientinfo”类,它包括变量,例如名字、姓氏、年龄、体重、身高、性别。。。。这些变量中的每一个都有get和set方法。 “另一类”程序有以下方法 public double weightCalc(patientinfo p3) { if (p3.getGender() == "male" || (p3.getGender() == "MALE") { //Calculate
public double weightCalc(patientinfo p3)
{
if (p3.getGender() == "male" || (p3.getGender() == "MALE")
{
//Calculate ideal body weight
idealWeight = (50 + (2.3 * (p3.getheight() - 60)));
}
else
{
//Calculate ideal body weight
idealWeight = (45.5 + (2.3 * (p3.getheight() - 60)));
}
return idealWeight;
我必须为此方法为NUnit准备一个测试用例。由于我是一名基础学习者,希望了解如何在测试类中通过height或getheight的值,请看起来您的方法是可测试的。只需确保patientinfo对象可以设置为必要的值即可 定义一个这样的测试
[Test]
public void Will_Calculate_Correct_Weight_For_Woman()
{
patientinfo p3 = new patientinfo();//set appropruate values here
//Example: p3.Gender = "Woman"; or p3.setGender("Woman");
double result = someClass.weightCalc(p3);
Assert.AreEqual(110,result);
}
您必须为p3实例指定适当的设置性别从何而来?抱歉,它应该是p3.getGender()。我错过了它。刚刚编辑。谢谢,我一直到这里。但主要的问题是如何通过高度值进行测试。我是否必须向用户询问该值“也用于测试?”“听起来不合法。”。