测试驱动开发笔记(二)—xUnit

发表于:2014-1-30 09:46

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:dananhai381    来源:51Testing软件测试网采编

  1.  防止改完后引起新错误;再次运行单元测试
  2.. 如果单元测试涉及到可变信息(如当前时间),需要将待测试数据也变为可变,否则无法回归测试
  3. 使用测试驱动开发必须从头开始,严格进行,否则到半中间会很费事的。
  4. 测试驱动开发中,私有方法也要测试,可通过反射实现,如
Summer example = new Summer.newInstance();
Method m = example.getClass().getDeclaredMethod("methodone",new Class[]{String.class});
m.setAccessible(true);Object result = m.invoke(example ,new Object[] {“xxx”});
m.setAccessible(false);
if (result.equals(rightResult)){
  5.重构和修改,一次只带一顶帽子,要掌握自己的pace,不太快也不太慢
  6. 常用断言:相等,真,空,同一对象
  7.  Junit与ant结合,运行全部测试并将运行结果以文件形式输出
  JUnit中测试的组织
import junit.framework.TestCase;
public class CalculateUtilTest extends TestCase
{
public CalculateUtilTest(String name)    //1行
{
super(name);
}
}
1. import junit.framework.*;
2. public class MainTest
3. {
4.     public static Test suite()  //1行
5.     {
6.         TestSuite suite = new TestSuite();  //2行
7.
8.         //添加测试testDivision方法
9.         suite.addTest(new CalculateUtilTest("testDivision"));  //3行
10.
//添加测试类
suite.addTestSuite(CalculateUtil.class);
return suite;
14.     }
15.
16.     public static void main(String[] args)
17.     {
18.         //执行测试
19.         junit.textui.TestRunner.run(suite());   //4行
20.     }
21. }
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号