基于xUnit的单元测试管理(Java语言)

2019-08-10  本文已影响0人  DayBreakL

读书笔记,更新到学完为止

什么是xUnit

xUnit的组成

xUnit用于测试的四要素

JUnit和TestNG

常用断言

运行策略配置

参数化和数据驱动

监听

拓展性

与Maven结合的项目实践

实战进阶(关联性测试)

//src/main/java/DemoXunit/Shopping.java
public class Shopping {
    Login login = new Login();
    Products pro;

    /**
     * 通过ID查找商品价格
     *
     * @param proId 商品ID
     * @return 商品价格 ; -1 没有此商品;-2 未登录
     */
    public int getPrice(int proId) {
        if (login.isLogin == true) {
            if (proId <= 0) { //1
                return -1;
            } else {
                Products p = Products.getPro(proId);

                return p.getPrice();
            }
        } else {

            return -2;
        }
    }
      //自测
    public static void main(String[] args) {
        Shopping shopping = new Shopping();
        Login login = new Login();
        login.userLogin("", "123456");
        shopping.getPrice(1);
    }
}
//src/main/java/DemoXunit/Products.java
//模拟数据库
public enum Products {
    //围巾的商品ID是1,商品名称是“围巾”,价格是200,库存是0
    WEIJIN(1,"围巾",200,0),
   //帽子的商品ID是2,商品名称是“帽子”,价格是200,库存是10
    MAOZI(2,"帽子",120,10),
    //手套的商品ID是3,商品名称是“手套”,价格是80,库存是1
    SHOUTAO(3,"手套",80,1);

    private int proId;  //商品ID
    private String proName;  //商品名称
    private int price;  //价格
    private int count;  //库存

    private Products(int proId, String proName, int price, int count){
        this.proId = proId;
        this.proName = proName;
        this.price = price;
        this.count = count;
    }

    /**
     * 通过商品ID 获取商品信息
     * @param proId
     * @return
     */
    public static Products getPro(int proId){

        for(Products product : Products.values()){
            if(product.getProId() == proId){
                return product;
            }
        }
        return null;
    }

Allure2测试报告框架

Allure

1.Allure工作机制

2.Allure2安装

3.使用Allure2

在构建报告之前,您需要运行测试以获取一些基本的测试报告数据。通常,它可能是由几乎每个流行的测试框架生成的junit样式的xml报告。

4.Allure报告结构
官网文档介绍:https://docs.qameta.io/allure/#_report_structure

5.Allure2进阶使用 (TestNG)
官方文档:https://docs.qameta.io/allure/#_testng

6.Allure的特性
官方文档:

7.生成静态报告

遗留问题待更新

  1. 还有什么方法获取数据源,比如需要2万条测试数据?
    csv文件读取、读取数据库、yaml文件读取
上一篇 下一篇

猜你喜欢

热点阅读