2. 单元测试的具体表现:用于判断某个特定条件或场景下某个特定函数或方法的行为。
3. 单元测试的目的:为了证明某段代码的行为确实和开发者所期望的一致。
4. 单元测试的核心内涵:这个简单有效的技术就是为了令代码变得更加完美。
5. NUint中的断言Assert类的静态方法:
1)AreEquals
Assert.AreEqual(expected, actual[, string message])
//expected:期望值(通常是硬编码的);
//actual:被测试代码实际产生的值;
//message:一个可选消息,将会在发生错误时报告这个消息。
//expected:期望值(通常是硬编码的);
//actual:被测试代码实际产生的值;
//message:一个可选消息,将会在发生错误时报告这个消息。
因计算机并不能精确地表示所有的浮点数,所以在比较浮点数时(float或double),需要指定一个额外的误差参数。
Assert.AreEqual(expected, actual, tolerance[, string message])
//tolerance:指定的误差,即只要精确到小数点后X位就足够了。
//例如:精确到小数点后4位
Assert.AreEqual(0.6667, 0.0/3.0, 0.0001);
//tolerance:指定的误差,即只要精确到小数点后X位就足够了。
//例如:精确到小数点后4位
Assert.AreEqual(0.6667, 0.0/3.0, 0.0001);
2)IsNull
Assert.IsNull(object[, string message])
//是null
Assert.IsNotNull(object[, string message])
//非null
//是null
Assert.IsNotNull(object[, string message])
//非null
3)AreSame
Assert.AreSame(expected, actual[, string message])
//验证expected和actual两个参数是否引用一个相同的对象。
//验证expected和actual两个参数是否引用一个相同的对象。
4)IsTrue
Assert.IsTrue(bool condition [, string message])
Assert.IsFalse(bool condition [, string message])
Assert.IsFalse(bool condition [, string message])
5)Fail
Assert.Fail([string message])
//使测试立即失败;这种断言通常被用于标记某个不应该被到达的分支,但实际中不常用。
//使测试立即失败;这种断言通常被用于标记某个不应该被到达的分支,但实际中不常用。
6. 当有测试失败时,无论如何都不能给原有代码添加任何的新特性。
7. NUnit的框架
使用NUint框架的最小要求
1using NUint.Framework;
2[TestFixture]
3public class TestSimple
4{
5 [Test]
6 public void TestMethod()
7 {
8 Assert.AreEqual(2, 4/2);
9 }
10}
2[TestFixture]
3public class TestSimple
4{
5 [Test]
6 public void TestMethod()
7 {
8 Assert.AreEqual(2, 4/2);
9 }
10}
1)需要NUint.Framework的命名空间,项目中需要引用NUint.dll;
2)每个包含测试的类都必须带TestFixture属性标记,且这个类必须是public的。
3)测试类包含的所有带Test属性标记的public方法都会被NUint自动执行。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/