python中Monkey测试的示例分析

发布时间:2021-09-07 14:01:50 作者:小新
来源:亿速云 阅读:188

这篇文章给大家分享的是有关python中Monkey测试的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1、Monkey是Android中的命令行工具,可以在模拟器或实际设备中运行。

它向系统发送伪随机用户事件流(如按钮输入、触摸屏输入、手势输入等),从而测试正在开发的应用程序的压力。

2、Monkey测试是测试软件稳定性和健壮性的快速有效方法。

该工具用于压力测试。然后开发人员结合monkey打印的日志和系统打印的日志,分析测试中的问题。

实例

monkeyss 执行Monkey命令:

from data.raad_yaml import OpenYaml
import os
import gevent
 
def get_devices():
    command_result = ("adb devices")  # 执行adb命令用于判断设备是否连接正常
    mydevice = os.popen(command_result)  # 执行adb 命令
    mystr = mydevice.read()  # 获取命令后的内容
    splits = mystr[25:41]  # 获取设备号
    mal = OpenYaml()  # 读取yaml 文件
 
    if splits  in mal.getdata()['data']['phone']:
        """
        phone:设备号 如果更换可在 yaml 文件中更改
        判断设备是否连接成功,如果未连接或者连接成功设备号不正确不执行~
        """
        print('设备连接正常,开始执行Monkey命令~')
        MonkeyCmd = "adb shell monkey -p %s --pct-touch %s -v -v -v --ignore-crashes --ignore-timeouts %s - s %s --throttle %s  1>%s 2>%s" \
                    % (mal.getdata()['data']['packages'],  # 测试的包名
                       mal.getdata()['data']['touch'],     # 显示详细信息,随机执行80个事件
                       mal.getdata()['data']['monkeyclickcount'],  # 点击次数
                       mal.getdata()['data']['send'],  # 用于指定伪随机数生成器的seed值
                       mal.getdata()['data']['throttle'],  # 事件的时延,单位是毫秒
                       mal.getdata()['data']['path_text'],  # 运行日志保存路径
                       mal.getdata()['data']['error'])  # 错误日志保存路径
        os.popen(MonkeyCmd)
        """ 如果不执行某些事件,再命令行中注释掉,注意删除对应的 %s 值 """
        print('执行命令:', MonkeyCmd)
 
    else:
        print('设备链接失败,请检查设备连接后再试~/或设备号是否正确:', splits)
 
get_devices()

感谢各位的阅读!关于“python中Monkey测试的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. Python中反射的示例分析
  2. Python中is语法的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python monkey

上一篇:Python正则表达式字符串如何组成

下一篇:HTTP代理IP的连接方式以及常用IP分类

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》