2013年度持续集成实践小结[2] ?单元测试
作者:网络转载 发布时间:[ 2013/12/13 10:47:55 ] 推荐标签:
前文提到,在UI自动化之外,我们着力探索了如何实施单元测试(unit test)
相对于UI自动化,单元测试方面的实践还是不够充分的,因此,这里也只是小结一下我们的经验
概述
首先明确一下,此处单元测试概念与经典意义有所不同,泛指所有:
由开发工程师编写的,可以在开发本地一键运行的,运行时间在分钟级别的测试用例,用例执行会依赖不多的,但往往也是稳定可靠的外部环境
测试框架一般使用TestNg而不是JUnit,主要原因在于TestNg的 DataProvider 功能很给力,非常适合用例须要覆盖多分支的场景
用例组织原则:
一个测试类对应一个功能类: funcOneTest.java 对应于 funcOne.java
若干个测试方法对应一个功能方法:test_funcOne_smoke() & test_funcOne_normal() & test_funcOne_error() 对应于 funcOne()
用例分类约定
还是以 超市购物 为背景,写几个Demo用例
Δ冒烟型用例 – 甲
@Test(description = "getNewestItems_冒烟_获取新商品并检查若干关键属性")
public void test_getNewestItems_smoke() {
List<ItemVo> itemList = itemBean.getNewestItems(1);
Assert.assertTrue(itemList.size() == 16, "size应该是16");
for (ItemVo vo : itemList) {
Assert.assertTrue(vo.getName() != null, "name不能为空");
Assert.assertTrue(vo.getPrice() != null, "price不能为空");
}
}
|
@Test(description = "enter_and_leave_market_冒烟_进入与离开超市")
public void test_enter_and_leave_market_smoke() {
Custom tom = new Custom("Tom");
tom.enterMarket();
Assert.assertTrue(Custom.isAtMarket(tom), "tom应该在超市内");
tom.leaveMarket();
Assert.assertFalse(Custom.isAtMarket(tom), "tom应该不在超市");
}
|
相关推荐
更新发布
常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11系统性能测试及调优前期准备
2021/4/15 14:41:29国内比较好用的5款测试管理工具
2021/3/25 17:23:31