代码:
namespace NUnit
{
public class Calculator
{
public static double Add(double a, double b)
{
return a + b;
}
public static double Sub(double a, double b)
{
return a - b;
}
public static double Mutiply(double a, double b)
{
return a * b;
}
public static double Divide(double a, double b)
{
return a / b;
}
}
}
测试代码:
添加引用,
using NUnit
namespace NUnitTest
{
[TestFixture]
public class UnitTest
{
public double NumA { get; set; }
public double NumB { get; set; }
[SetUp]
public void SetUp()
{
NumA = 10;
NumB = 20;
}
[Test]
public void TestAdd()
{
double result = Calculator.Add(NumA, NumB);
Assert.AreEqual(result, 30);
}
[Test]
public void TestSub()
{
double result = Calculator.Sub(NumA, NumB);
Assert.LessOrEqual(result, 0);
}
[Test]
public void TestMutiply()
{
double result = Calculator.Mutiply(NumA, NumB);
Assert.GreaterOrEqual(result, 200);
}
[Test]
public void TestDivide()
{
double result = Calculator.Divide(NumA, NumB);
Assert.IsTrue(0.5 == result);
}
}
}
PSP:
任务内容 | 计划共完成需要的时间(h) | 实际完成需要的时间(h) |
---|---|---|
计划 | 15 | 12 |
开发 | 11 | 8.5 |
需求分析 (包括学习新技术) | 1 | 0.5 |
· 生成设计文档 | 1 | 0.5 |
· 设计复审 (和同事审核设计文档) | 2 | 1 |
代码规范 (为目前的开发制定合适的规范) | 1 | 0.5 |
具体设计 | 1 | 1 |
具体编码 | 2 | 1 |
· 代码复审 | 2 | 1 |
· 测试(自我测试,修改代码,提交修改) | 1 | 3 |
报告 | 4 | 3.5 |
· 测试报告 | 1 | 1 |
计算工作量 | 1 | 1 |
· 事后总结 ,并提出过程改进计划 | 2 | 1.5 |
个人总结:由于知识和编程经验不足,整个作业效率很低,而且大多数都是看别人的思路后一点点学习的。测试和修改的时间真的是比想象的多很多,因此以后开发时我会先分析清楚再下手;对于以后的学习我觉得还是要采用项目驱动式,一边做一边学,更有针对性。