airtest+python自动化测试之后台启动测试用例

继续上篇文章来介绍下如何把写好的测试用例放在后台来运行,同时在停止测试用例时能够一键执行脚本来停止对应的测试用例,这样可方便在多台机器上测试此用例,从而达到大量机器测试稳定性。

1、首先写一个.bat的脚本,假如测试用例文件名为test.py,则该脚本可写成如下内容

 python ./test.py

用此脚本来启动测试用例

2、在win系统环境下,删掉进程的命令是taskkill /pid 16376 /f

即可强制杀死进程号为16376的进程,这样我们就同样可通过脚本来杀死测试用例进程。但是在这里就会遇到一个问题,测试用例的进程号该怎么知道呢?你应该能想到到的了,可以使用tasklist来查看测试使用的进程号,是的,没错通过此命令是可以查看到,然后把此进程号写在脚本里。但如此,显然是不够智能化自动化。

想要自动化地获取进程号来杀死测试用例进程,我们就可在python的测试使用里直接获取当前的进程号,并保存起来不就可以的了吗!所以我们可在测试用例的最一开始之处添加如下的程序内容

# ========获取python进程号========
def produce_stop_bat(pid, tmpfile="stop_xxx.bat"):
    # 待写入内容
    stop_cmd = 'taskkill /pid ' + str(pid) + ' /f'  # 关闭指定进程
    del_self_cmd = "del %0"  # 删除自身文件
    # 当前文件的路径及名称
    tmp_all = "stop_" + tmpfile + ".bat"
    # 打开文件
    with open(file=tmp_all, mode="w") as f:
        f.write(stop_cmd + "\n" + del_self_cmd)  #向文件里写入的内容


# 获取当前的进程号
pid = os.getpid()
# 本文件名(不含后缀.py)
filename = os.path.split(__file__)[-1].split(".")[0]
# 生成关闭进程的脚本文件
produce_stop_bat(pid, filename)

如上面及注释,这样在执行测试用例时,直接获取当前的进程号,并保存到stop_$(filename).bat文件里,注意此文件也是在执行测试用例时自动产生。例如若测试用例名为test.py,则产生的脚本文件为stop_test.bat。这样在想要停止测试用例时,直接执行该脚本即可,同时最后会自动删除该脚本文件,以防以后误执行该脚本而产生问题。

Airtest, Poco, Python, Pytest, Allure是一些用于实现Android App自动化测试框架的工具。这些工具结合使用可以实现对应用元素的定位(使用Airtest和Poco),测试用例的管理和执行(使用Pytest),以及生成测试报告(使用Pytest-HTML或Allure)。 Airtest是一个基于Python的UI自动化测试框架,它可以用于Android、iOS等平的应用自动化测试。它提供了丰富的API来进行界面元素的定位和操作,以及对应用的各种操作进行模拟和验证。 Poco是Airtest的一个扩展库,它提供了一套更简单易用的API来进行应用元素的定位和操作。Poco可以与Airtest结合使用,使得测试用例编写更加简单和高效。 Python是一种流行的编程语言,对于测试框架的编写和测试脚本的编写都非常适用。通过使用Python,可以方便地编写和管理测试用例,以及进行各种数据处理和操作。 Pytest是Python的一个测试框架,它提供了丰富的功能和插件来管理和执行测试用例。Pytest可以与Airtest和Poco结合使用,以便更好地管理和执行自动化测试用例。 Allure是一个用于生成漂亮且可视化的测试报告的工具。它可以将测试结果以图表和图形的形式展示,能够清晰地展示测试用例执行情况和结果。 综上所述,Airtest、Poco、Python、Pytest和Allure都是在Android App自动化测试中常用的工具和框架。它们的结合使用可以帮助开发人员和测试人员更方便地进行自动化测试的编写、管理和执行,并生成美观的测试报告来展示测试结果。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Python + Airtest + poco + pytest + pytest-html 实现Android App自动化测试框架](https://blog.csdn.net/weixin_38813807/article/details/129179944)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [airtest/poco+pytest+allure+jenkins框架来了](https://blog.csdn.net/George513/article/details/119034783)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值