前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JUnit4 Categories 含义和官方示例

JUnit4 Categories 含义和官方示例

作者头像
明明如月学长
发布2021-08-27 16:17:21
3860
发布2021-08-27 16:17:21
举报

在众多待测试的类中,Categories runner 只运行那些带有@IncludeCategory注解或者其子类型的类或者方法。

类和接口都可以被用来当做 categories。

如果在测试类上标注@IncludeCategory(SuperClass.class),那么标注为 @Category({SubClass.class})也将会被执行。

你也可以通过使用 @ExcludeCategory 注解来排除某些类别。

例子:

代码语言:javascript
复制
public interface FastTests { /* 类别标识 */ }
public interface SlowTests { /* 类别标识*/ }

public class A {
  @Test
  public void a() {
    fail();
  }

  @Category(SlowTests.class)
  @Test
  public void b() {
  }
}

@Category({SlowTests.class, FastTests.class})
public class B {
  @Test
  public void c() {

  }
}

@RunWith(Categories.class)
@IncludeCategory(SlowTests.class)
@SuiteClasses( { A.class, B.class }) // 注意Categories 是一种套件
public class SlowTestSuite {
  // 将运行A.b 和B.c,但不运行A.a (因为A.a方法没有Category注解,并且也是SlowTests实现类和子类)
}

@RunWith(Categories.class)
@IncludeCategory(SlowTests.class)
@ExcludeCategory(FastTests.class)
@SuiteClasses( { A.class, B.class }) // 注意Categories 是一种套件

public class SlowTestSuite {
// 将运行A.b ,但不运行A.a和B.c(因为A.a方法没有Category注解,并且也是SlowTests实现类和子类;B.c 也属于SlowTests类别)
}

原文:https://github.com/junit-team/junit4/wiki/categories

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-04-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档