Category含义:Category继承自Suit,Category似乎是Suit的加强版,它和Suit一样提供了将若干测试用例类组织成一组的能力,除此以外它可以对各个测试用例进行分组,使你有机会只选择需要的部分用例。举个例子Person有获取age和name的方法也有talk和walk方法,前者用于获取属性后者是Person的行为,Category使我们可以只运行属性测试,反之亦然。 例如你可以将运行慢的测试用例与运行快的测试用例分开。该特性从JUnit4.8开始支持。
Categories 用法:主要是向测试用例中添加注解
常见用法如下:
- 自动化测试用例分好几种:单元测试,集成测试,冒烟测试,回归测试,性能测试……
- 测试用例执行的速度分为:缓慢测试,快速测试
- the ci build哪一部分的测试用例应该被执行: NightlyBuildTests
- 测试用例的状态分为 : 不稳定测试, InProgressTests
Categories结合Maven: 如果是单元测试,结合 maven-surefire-plugin ;如果是集成测试,结合 maven-failsafe-plugin;调用上述2个插件当中的任何一个,都可以配置要包含或排除的测试用例的类型列表,如果不配置任何选项,则默认执行所有测试用例。
Categories结合Gradle : Gradle的测试任务允许指定要包括和排除的JUnit类别。
Categories结合SBT : SBT的junit接口允许通过--include-categories=<CLASSES>
和 --exclude-categories=<CLASSES>
指定JUnit类别 。