用Junit Test Suite来组合测试

发表于:2015-8-31 10:59

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

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

  在测试过程中,有时可能想一次性运行所有的测试类,或是选择性的运行某些测试类。这样的话我们就可以用TestSuite来统一管理我们的测试类。
  比如说我现在有三个测试类:junitTest4,TestCase2和TryTest
  但是现在我不想运行全部的测试类,只想运行其中的junitTest4和TestCase2。这样就可以用junit test suite来管理。
  代码如下:
  @RUNWith:指定运行器
  @SuiteClasses :指定要运行的测试类
  运行结果:
  由此可见,通过junit test suite我们就可以共同管理不同的测试类,可以指定一次性只执行我们想要执行的测试类。
  TestSuite还可以不断地嵌套其他的Testsuite,方便了对于不断增加的TestCase的管理和维护。这种体系架构,非常类似于现实中程序一步步开发一步步集成的现况。
  说到suite,可能会疑惑,平时没有定义suite的时候,单个测试类里面的用例是怎么运行起来的呢。其实是如果你没有定义suite,那么测试运行器就会自动创建一个suite。
  这个默认的suite会扫描你的测试类,找到所有以@Test标记的方法。默认的suite会在内部为每个@Test方法新建一个测试类的实例,然后junit就会独立的运行每个@Test方法。
  suite对象其实就是一个runner,可以执行一个测试类中所有被@Test注释的方法。
  比如某个测试类:
  public class TryTest{
  @Test
  public void test1(){
  System.out.println("demo");
  }
  }
  其实默认的suite就是这样的:
  public class TryTest{
  @RUNWith(Suite.Class)
  @SuiteClasses(TryTest.class)
  public void test1(){
  System.out.println("demo");
  }
  }
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号