zoukankan      html  css  js  c++  java
  • category

     一、category 和 testSuite的比较

    (1)testSuite是类级分组(xx.class)

    (2)category是用例级分组(@Test)

    (3)category是testSuite的升级:Category可以实现TestSuite的功能

    二、category使用步骤

    1、创建好测试类,及测试类中的测试用例

    2、创建接口:按用例的分组来创建

    3、@Category注解:将用例用@Category注解分组

    4、创建类来执行这些分组的类

    三、实例

    1、创建测试类A.java,B.java

     
     1 package zttc.itat.Category;
     2 import org.junit.Test;
     3 import org.junit.experimental.categories.Category;
     4 public class A {
     5     @Test
     6     public void a() {
     7         System.out.println("A a()");
     8     }
     9      
    10     //用例分组:SlowTests.class
    11     @Category(SlowTests.class)
    12     @Test
    13     public void b() {
    14         System.out.println("A b()");
    15     }
    16 }
    A.java
     1 package zttc.itat.Category;
     2 
     3 import org.junit.Test;
     4 import org.junit.experimental.categories.Category;
     5 
     6 //@Category注解中,可以使用多个分类类型,eg:@Category({A.class,B.class});
     7 @Category({
     8     SlowTests.class,
     9     FastTests.class
    10 })
    11 public class B {
    12     @Test
    13     public void c() {
    14         System.out.println("B c()");
    15     }
    16     
    17     @Test
    18     public void d() {
    19         System.out.println("B d()");
    20     }
    21 }
    B.java

    2、创建接口SlowTests.java、FastTests.java(用例分几组,就创建几个接口)

    1 package zttc.itat.Category;
    2 public interface SlowTests {
    3      
    4 }
    SlowTests.java
    1 package zttc.itat.Category;
    2 public interface FastTests{
    3      
    4 }
    FastTests.java

    3、@Category注解:将用例用@Category注解分组

    (1)@Category可以注解在用例上,也可以注解在类上;

    (2)一个用例可以同时在多个组:@Category可以使用多个分组类型,eg:@Category({A.class,B.class})

    4、创建类来执行这些分组的类

     1 package zttc.itat.Category;
     2 import org.junit.experimental.categories.Categories;
     3 import org.junit.experimental.categories.Categories.IncludeCategory;
     4 import org.junit.experimental.categories.Categories.ExcludeCategory;
     5 import org.junit.runner.RunWith;
     6 import org.junit.runners.Suite;
     7 import zttc.itat.Category.A;
     8 import zttc.itat.Category.B;
     9 //表示此类为Category类
    10 @RunWith(Categories.class)
    11 //要运行的类
    12 @Suite.SuiteClasses({
    13     A.class,
    14     B.class
    15     }) // Note that Categories is a kind of Suite
    16 @IncludeCategory(SlowTests.class)//要运行的用例组
    17 //@ExcludeCategory(FastTests.class)//不要运行的用例组
    18 public class SlowTestSuite {
    19  // Will run A.b、 B.c and B.d, but not A.a
    20 }

    【注】SlowTestSuite.java没有 @IncludeCategory 和 @ExcludeCategory 注解,功能同testSuite

  • 相关阅读:
    关键两招就解决Wampserver 打开localhost显示IIS7图片问题
    死磕!Windows下Apache+PHP+phpmyadmin的配置
    宝塔linux面板运行jsp文件的配置工作
    Python关于self用法重点分析
    Atom窗口切换和放大或者缩小
    容易掉坑的地方The value for the useBean class attribute XXX is invalid
    JS 之如何在插入元素时插在原有元素的前面而不是末尾
    ul或者ol中添加li元素
    页面右下角广告
    getAttribute与setAttribute
  • 原文地址:https://www.cnblogs.com/shanJX/p/4789089.html
Copyright © 2011-2022 走看看