如何把自定义的函数,记录到你的Airtest报告里

简介: 如何把自定义的函数,记录到你的Airtest报告里

此文章来源于项目官方公众号:“AirtestProject”

版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途

1. 前言

熟悉Airtest的同学都知道,像touchswipe这类核心API,运行之后,都会在Airtest报告里记录一个步骤:

image.png

但有很多情况下,我们可能会使用自定义的函数,这种自定义的函数,就不会被记录到我们的Airtest报告里面。

那如果我们想要自定义的函数,也能显示在Airtest报告里面,该怎么处理呢?接下来我们就一起来了解下Airtest的装饰器 @logwrap

2. @logwrap 的介绍与示例

Airtest提供了一个装饰器 @logwrap ,这个装饰器可以帮助我们把函数显示到Airtest报告中。

1)在自定义函数中使用@logwrap的例子

我们可以从一个非常简单的例子,来体验下这个装饰器的作用。假设我们有一个自定义的函数,这个函数的作用是唤醒设备屏幕、启动计算机应用,我们姑且把这个自定义的函数叫做open_calculator

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
from airtest.core.api import *
auto_setup(__file__)
@logwrap
def open_calculator():
    wake()
    start_app("com.sonymobile.exactcalculator")
open_calculator()

运行完这个简单的.air脚本之后,我们就可以生成Airtest报告:

image.png

可以看到,这时候,自定义的函数,也被显示到了我们的Airtest报告里面,是不是非常简单!

2)附加1张当前设备截图的操作

如果我们希望在报告显示自定义函数内容的同时,还附带一张当前设备的截图的话,可以增加 snapshot=True 参数在自定义函数的定义中:

@logwrap
def open_calculator(snapshot=True):
    wake()
    start_app("com.sonymobile.exactcalculator")

这时候报告不仅能显示自定义的函数,还能带上一张设备截图:

image.png

但是,需要注意的是,增加 snapshot=True 参数这块的内容,是在1.2.7版本的Airtest才新增的,所以需要使用的同学,至少保证自己当前环境的Airtest版本大于等于1.2.7。

3. 小结

关于Airtest的装饰器@logwrap就介绍到这里,感兴趣的同学可以赶紧实操一下,让你自定义的函数,也能在Airtest报告里“上榜”。


相关文章
|
8月前
|
C++ 开发者 Python
实现Python日志点击跳转到代码位置的方法
本文介绍了如何在Python日志中实现点击跳转到代码位置的功能,以提升调试效率。通过结合`logging`模块的`findCaller()`方法记录代码位置信息,并使用支持点击跳转的日志查看工具(如VS Code、PyCharm),开发者可以从日志直接点击链接定位到出错代码,加快问题排查。
|
8月前
|
存储 JSON JavaScript
50+常用工具函数之xijs更新指南(v1.2.4)
50+常用工具函数之xijs更新指南(v1.2.4)
72 4
|
8月前
|
Java Windows Spring
IDEA中报错:因为在此系统上禁止运行脚本有关详细信息,请参阅...(图文解释 亲测已解决)
IDEA中报错:因为在此系统上禁止运行脚本有关详细信息,请参阅...(图文解释 亲测已解决)
905 0
|
测试技术
|
Linux 开发工具 数据格式
JMeter 报告监听器导入.jtl结果文件报错解决方案
JMeter 报告监听器导入.jtl结果文件报错解决方案
406 0
|
测试技术
Jmeter5.3非GUI模式,从配置到导出报告问题整理
Jmeter5.3非GUI模式,从配置到导出报告问题整理
598 0
Jmeter5.3非GUI模式,从配置到导出报告问题整理
|
编解码
Airtest注意事项记录
Airtest注意事项记录
|
运维 小程序 前端开发
基于小程序云开开发(统计学生信息并导出excel)1.0版本
基于小程序云开开发(统计学生信息并导出excel)1.0版本
128 0
基于小程序云开开发(统计学生信息并导出excel)1.0版本
|
小程序 C# Python
【优化】C#小程序集成实现python定时段批量下载电子邮箱附件的bug排除
【优化】C#小程序集成实现python定时段批量下载电子邮箱附件的bug排除
127 0
|
测试技术
如何为你的Airtest报告自定义名称
如何为你的Airtest报告自定义名称
232 0