线上第七期_企业微信实战_20190126

企业微信

测试框架结构

测试框架核心

  • API对象:完成对接口的封装
  • 接口测试框架:完成对api的驱动
  • 配置模块:完成配置文件的读取
  • 数据封装:数据构造与测试用例的数据封装
  • Utils:其他功能封装,改进原生框架不足
  • 测试用例:调用Page/API对象实现业务并断言

测试用例构建体系

  • 使用package管理业务模块
  • 使用class管理业务功能
  • 使用method完成业务具体行为
  • 使用配置文件读取初始配置
  • 使用继承规划用例执行顺序
  • 使用testcase完成测试用例的落地
  • 使用assertion完成业务正确性校验
  • 使用数据文件管理用例的数据驱动
  • 使用jenkins完成持续集成

企业微信基础数据

用例设计

  • 创建部门
  • 获取部门
  • 更新部门
  • 删除部门

测试用例

  • 创建 + 获取
  • 更新部门 + 获取
  • 删除部门 + 获取

构建用例框架

封装API

请求内容构造

  • 模板文件+数据
  • 数据文件+结构体修改
  • POJO model 模型化

第二部分 添加成员、消息的自动化测试

4:15

配置文件

数据驱动

    @ParameterizedTest
    @ValueSource(strings = {
            "霍格沃兹测试学院线上第七期",
            "霍格沃兹测试学院线上第八期",
            "霍格沃兹测试学院线上第九期",
            "a",
            "1",
            "@"
    })
    void create(String name) {
        departmentData.name=name;
        department.create(departmentData);

        Response response=department.list("");
        response.then().statusCode(200);
        response.then().body("errcode", equalTo(0));
        response.then().body("department.size()", greaterThanOrEqualTo(0));
        response.then().body("department.find{ it.name == '"+ departmentData.name + "'}.name", equalTo(departmentData.name));

    }

并发

报告

  • maven报告 target/surefire-reports junit xml
  • pytest junit testng 本身的html报告
  • allure2


作业1

  • 完成通讯录的测试,删除部门的测试用例追加上,把代码更新到github,并贴上github的项目连接

作业2

  • 添加用户到部门,数据驱动
  • 支持测试环境、预发布环境、联调环境 本质是修改ip和host
  • 接口对象封装为数据驱动