自动化工具 ztest----测试报告介绍

再见理想 · 2017年11月10日 · 最后由 再见理想 回复于 2018年06月04日 · 2409 次阅读

ztest 介绍

前言

ztest 是一个测试报告,报告清晰简单,有饼图,汇总,运行详情。有兴趣的可以下载试用!

使用方式

将报告的 json 数据替换 template 文件中的${resultData}即可。

  1. pull ztest
  2. 读取 template 文件数据。
  3. 将测试报告数据 json 序列化。
  4. 用 json 序列化后的数据替换读取的 template 文件中的${resultData}。比如:
Gson gson = new GsonBuilder().disableHtmlEscaping().create();
String template = FileUtil.read(templatePath);
template = template.replaceFirst("\\$\\{resultData\\}", gson.toJson(result));
output.write(template);
  1. 将替换后的数据写入一个 html 文件 (比如 report.html) 即可。
  2. 测试报告数据格式示例:
{
    "testPass": 1,
    "testResult": [
        {
            "className": "com.test.testcase.TestDemo1",
            "methodName": "testDemo",
            "description": "测试DEMO",
            "spendTime": "11ms",
            "status": "成功",
            "log": [
                "this is demo!"
            ]
        }
    ],
    "testName": "20171109132744897",
    "testAll": 1,
    "testFail": 0,
    "beginTime": "2017-11-09 13:27:44.917",
    "totalTime": "11ms",
    "testSkip": 0
}

Java TestNg 使用示例

请参考ztest中的TestDemo1.java ZTestReport.java

报告展示

ztest

鸣谢

感谢 mock 哥提供的 python unittest 实现部分,使用 python unittest 的同学可以无缝对接该报告!

mock 哥 git 地址:mock 哥 git 地址

共收到 24 条回复 时间 点赞
codeskyblue 回复

欢迎试用!

不错,很简洁,希望继续升华维护,add new 功能

cooling 回复

本地使用,可以自行扩展!😀

为何没有找到 run 的按钮?

cooling 回复

这只是个报告啊,并不是运行平台!

哈,谢谢分享,改了一个 unittest 版本的,挺好的。

煎饼 回复

版本进行了更新,用了 CDN,样式进行了优化!多谢支持!

非常赞

coolfish 回复

可以试用一下!JAVA 的接入,PYTHON 版的接入,都有接入钩子了,无缝接入!

有实现的 demo 吗

玄月指光 回复

GITHUB 中都有哦,如果是 JAVA TESTNG 的,直接用 ZTestReport.java 的监听,就可以接入了

好看,试用下先哈哈

python 的是只支持 3.0 么

thanksdanny 回复

好像是,python 的作者是在 3.0 的基础上写的钩子😀

再见理想 回复

楼主你还,不知 python 版的 log 是怎么写入的?

你好,该怎么在报告中插入截图呢?save_some_img 这个变量该怎么定义呢?本人是个小白,麻烦指导一下,谢谢

再见理想 回复

我检查代码发现,这里应该调用 save_img 方法,而不是 save_some_img,save_img 方法在 BeautifulReport\tests\test_make_report.py 里面,不知道我理解的对不对,看截图

有可能是的,可能得你自已尝试一下了😀

为什么 case 失败的时候 report 生成不了呢?报告是空白的

shuman 回复

有可能是里面有特殊字符,我来提交更改一下!

domains90 Httpclient 接口自动化 中提及了此贴 05月25日 15:26
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册