首页 > 编程语言 > 详细

python自动化:monkey测试的云测

时间:2020-01-02 14:34:01      阅读:127      评论:0      收藏:0      [点我收藏+]

该代码还存在优化的地方,后续优化方向:结合unittest、ddt、内反射搭建自动化测试框架

实现代码如下:

import os
import threading
from xctest_app.xc_tools.get_aapt import *
from xctest_app.xc_tools.get_devices import *

class monkeytest:
    #调用monkey命令进行测试
    def get_test(self,udid,interval,package,count,app_path):
        #安装软件
        os.system(fadb -s {udid} install -r {app_path})
        logfile = ../xc_logs/ + str(udid).replace(:, _) + .txt
        cmd1=fadb -s {udid} shell monkey --throttle {interval} -v -v -v -p {package} {count} > {logfile}
        os.system(cmd1)
        #关闭应用程序
        cmd2=fadb -s {udid} shell am force-stop {package}
        os.system(cmd2)
        self.get_result(udid)
        #卸载软件
        os.system(fadb -s {udid} uninstall {package})
    #日志分析
    def get_result(self,udid):
        logfile = ../xc_logs/ + str(udid).replace(:, _) + .txt
        with open(logfile,r,encoding=utf-8) as f:
            con=f.read()
        if crashed in con or Crash in con:
            print(f设备{udid}:出现了Crash异常)
        elif ANR in con:
            print(f设备{udid}:出现了ANR异常)
        else:
            print(f设备{udid}:未出现异常)

if __name__ == __main__:
    udid=devices().get_devices()
    interval=300
    app_path=../xc_apk/wangyiyunyinyue.apk
    #调用封装的方法获取app的主包名和activityname
    package=packagenage_activity().get_packagename(app_path)[0]
    count=1000
    for i in udid:
        threading.Thread(target=monkeytest().get_test,args=(i,interval,package,count,app_path)).start()

python自动化:monkey测试的云测

原文:https://www.cnblogs.com/badbadboyyx/p/12132483.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!