一、在AirtestIDE生成报告

1. 点击IDE的查看报告按钮

在IDE点击 运行脚本 之后,待脚本执行完毕(无论报错与否),我们都可以直接点击顶部菜单栏的 查看报告 按钮,快捷键为Ctrl+L,帮助我们快速生成html格式的报告,并且用默认浏览器打开:

image-20211015142918739

image-20211015143202284

2. 在IDE生成报告的命令行

在IDE点击 查看报告 按钮时,log查看窗会显示一条生成报告的命令行:

  1. Generating HTML log:
  2. D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\AirtestIDE reporter D:\test\song.air --log_root D:/test/test01\0d86098ed0cd4a54c8c611578a3d71b7 --outfile D:\test\test01\0d86098ed0cd4a54c8c611578a3d71b7\log.html --static_root D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\airtest\report --lang zh --plugin airtest_selenium.report poco.utils.airtest.report

这条命令的意思是:

  • D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\AirtestIDE reporter D:\test\song.air :生成 song.air 脚本的运行报告
  • --log_root D:/test/test01\0d86098ed0cd4a54c8c611578a3d71b7 :依据 D:/test/test01\0d86098ed0cd4a54c8c611578a3d71b7 路径下面的log内容
  • --outfile D:\test\test01\0d86098ed0cd4a54c8c611578a3d71b7\log.html :将html格式的报告到处在这个路径下D:\test\test01\0d86098ed0cd4a54c8c611578a3d71b7\log.html
  • --static_root D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\airtest\report :指定静态资源使用 D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\airtest\report 这个路径下的
  • --lang zh :报告语言指定为中文
  • --plugin airtest_selenium.report poco.utils.airtest.report :使用airtest-selenium和poco的报告插件

成功生成报告之后,我们可以 右键单击脚本名称 ,选择 打开报告文件目录,帮助我们快速进入html报告所在的文件夹:

image-20211015144431036

image-20211015144512231

3. 生成.air和.py脚本报告的区别

对于 .air.py 脚本,在AirtestIDE运行后,点击 查看报告 ,生成报告的过程有一些小差别,下面我们来详细看一下。

1)生成.air脚本的测试报告

对于在IDE运行的 .air 脚本,IDE会在默认的log保存路径下帮我们保存脚本运行的log内容,当我们运行 .air 脚本之后,点击 查看报告 ,IDE就会去这个默认的log保存路径下找到该脚本运行的log内容,然后依此直接生成airtest报告,过程无需我们人工额外处理。

2)生成.py脚本的测试报告

但在IDE运行 .py 脚本就不一样,首先我们需要弄清楚,报告生成的依据是脚本运行时保存的log内容,这就意味着,我们在运行 .py 脚本时,必须要保存log内容,否则后续将生成无log内容的airtest报告,即空的报告。

因此我们在新建 .py 脚本的时候,务必勾选上 生成log 选项:

image-20211015150118838

这样才能保证新建的 .py 脚本里面的初始化语句里面 logdir 不为 None

image-20211015150253868

勾选 生成log 选项,初始化语句中 logdir 会被设置为 True,当然我们也可以设置其它的log保存路径,传给 logdir,例如:

image-20211015150615290

请同学们务必自己 .py 脚本的log保存路径,因为点击 查看报告 时,会要求我们手动选择log保存路径:

generate_re

4. 在IDE一键导出报告

点击 查看报告 按钮生成的报告,只能在本地查看,我们不能把生成的报告文件夹整个打包给别人直接查看,因为点击 查看报告 生成的html报告,里面的图片或者静态资源路径都是绝对路径,在非本地查看此类报告,将不能正确显示报告里面的图片资源和一些静态资源:

image-20211015161616620

1)在IDE里一键导出测试报告

但是我们可以通过导出报告,将报告里面的图片资源和静态资源路径转换成相对路径,这样就能把报告部署在服务器或者发给其他同事正常查看了:

image-20211015164608462

点击 导出报告 的按钮后,会让我们选择导出的文件夹,选定之后即可帮我们导出一份包含所有资源文件的报告:

image-20211015175058420

该文件夹里不仅包含了html格式的报告,还包含log文件、静态资源文件、脚本和脚本截图这些内容,我们可以直接打包整个文件夹,把它发送给其它同事查看,并且我们可以打开html报告,看下里面资源的路径,可以看到已经是相对路径了:

image-20211015175348831

2)导出报告的命令行

点击 导出报告 之后,在log查看窗会显示出导出报告的命令行:

  1. Generating HTML log:
  2. D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\AirtestIDE reporter D:\test\song.air --log_root D:/test/test01\0d86098ed0cd4a54c8c611578a3d71b7 --outfile D:\export\report\song.log\log.html --static_root D:\demo\AirtestIDE-win-1.2.12\AirtestIDE\airtest\report --lang zh --plugin airtest_selenium.report poco.utils.airtest.report --export D:/export/report

与点击 查看报告 的命令行不同的是,这里多了一个 --export 参数:

  • --export D:/export/report :表示在D:/export/report路径下导出我们的测试报告

5. 生成报告的常见问题

1)生成报告失败

如在IDE点击 查看报告 后,弹出提示弹窗:生成HTML报告失败!

image-20211018120953046

我们可以复制生成报告的命令行到终端运行,查看生成报告失败更详细的报错内容,然后再依据报错内容来进行修改:

image-20211018121106757

2)提示没有log.txt文件

如果点击 查看报告 按钮后,弹窗提示:

image-20211018143335452

请检查以下几个方面的内容:

  • 当前脚本是否有保存log内容,无log内容请设置保存log内容
  • 生成报告的命令行里,--log_root 指向的路径下,是否存在 log.txt 文件;如不存在请检查文件是否保存到了别的路径下
  • 是否误删了脚本的log文件

3)查看报告丢失了图片文件

如果我们在 查看报告 时,发现报告显示如下,即丢失了报告样式和一些图片资源:

image-20211018144154829

我们可以检查以下几方面的内容:

  • 是否使用chrome浏览器打开报告(其他浏览器对airtest报告的兼容性没那么好)
  • 是否将 未导出 的报告发给了他人查看,是的话请将报告导出之后再发给其他朋友查看
  • 可以在报告空白处 右键--检查 ,查看丢失的静态资源或者图片资源的路径是否正确

4)生成的报告提示是空白报告

如生成的报告提示是一份空的报告:

image-20211018150438999

我们可以检查以下几方面的内容:

  • 该脚本的log.txt文件是否为空,是的话需要重新运行,生成log内容之后再来生成报告
  • 是否在脚本开头使用了生成报告的脚本,是的话请把生成报告的脚本放在最后执行,先执行具体的步骤,最后再来执行生成报告的脚本