zoukankan      html  css  js  c++  java
  • Python自动化测试入门

    在当前自动化测试中,最火的语言就是Python,很容易上手。然后就是Java+testng+appium做的UI自动化测试。下面我们就用Python脚本,做自动化集成测试。

    (1)获取APK文件中ID的两种方式
    Monkeyrunner的环境已经搭建完成,现在对Monkeyrunner做一个简介。
    Monkeyrunner工具提供了一套API让用户/测试人员来调用,调用这些api可以控制一个Android设备或模拟器,而不需要了解对应的源码。
    有了Monkeyrunner,我们可以编写python脚本来控制apk包的安装和卸载、启动app、向app发送各种动作事件、截取图片并保存。
    除此之外,MonkeyRunner是Google提供的一个基于坐标点的Android黑盒自动化测试工具。所以,要使用Monkeyrunner进行自动化测试,首先,要了解Monkeyrunner中获取坐标点的方式。

    这里写图片描述

    本文中,我们主要介绍两种获取坐标点的方式。一种是通过MonkeyRecorder获取坐标;另一种是通过HierarchyViewer工具获取控件ID。

    1. MonkeyRecorder获取坐标
      下面就MonkeyRecorder获取坐标的方式,进行演示。MonkeyRecorder是一个比较好用的获取坐标的工具,它是用来获取真机或模拟器上坐标的工具,当我们点击真机或模拟器上的空间时,就能显示真机或模拟器上的点击点的坐标。

    (1)MonkeyRecorder的启动
    首先安卓手机连接上电脑,并保证以下两个条件成立:
    a.终端USB调成开发者模式
    b.电脑安装手机驱动
    手机连接成功后,打开cmd窗口,输入adb devices查看已连接真机或模拟器设备的名称,我们这里仍以模拟器为代表。
    之后,在cmd窗口,输入monkeyrunner后,启动Monkeyrunner。做以下操作:导入MonkeyRecorder包、连接模拟器设备、以MonkeyRecorder方式启动模拟器,并依次输入
    如下命令:

    1 from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
    2 
    3 from com.android.monkeyrunner.recorder import MonkeyRecorder as recorder
    4 
    5 device=MonkeyRunner.waitForConnection()
    6 
    7 recorder.start(device)

    到此,MonkeyRecorder正式启动。截图如下。

    MonkeyRecorder的使用
    我们这里只是使用MonkeyRecorder来记录坐标,获取坐标的方式很简单。比如qq的登录界面,点击“登录”按钮,右侧就会显示该按钮的坐标;同样,点击账号输入框或密码输入框,右侧同样会显示坐标。这个坐标就是我们需要获得的坐标。

    同时,MonkeyRecorder中的界面是同模拟器页面保持一致的,在MonkeyRecorder中触发任一操作,模拟器上会有相应的触发。如果两者没有保持一致,则点击MonkeyRecorder右上角的Refresh Display即可刷新页面。

    控件坐标之Monkeyrunner脚本演示
    我们将下面一段Monkeyrunner脚本写到一个test.py文件中,然后运行test.py文件,查看模拟器或真机上是不是做相应的操作。

    from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice 
    
    device=MonkeyRunner.waitForConnection() 
    
    #启动activity(这里启动qq)
    
    device.startActivity(component="com.tencent.mobileqq/.activity.SplashActivity")
    
    #登录界面,点击账号输入框
    
    device.touch(60,300,'DOWN_AND_UP') 
    
    #输入qq账号
    
    device.type('3469191693')
    圣贤财富apk启动脚本代码 
    1
    from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice 2 3 device=MonkeyRunner.waitForConnection() 4 5 #启动activity(这里启动圣贤财富4.1版本) 6 7 device.startActivity(component="com.hz.sxcfu.application.test") 8 9 #登录界面,点击账号输入框 10 11 device.touch(639,1266,'DOWN_AND_UP') 12 13 #输入qq账号 14 15 device.type('18088888888')

    先写到这里,下次继续!

    更多测试技术,欢迎关注微信公众号:程序员技术前沿

    扫我扫我扫我~~~

    更多技术请关注微信公众号:程序员技术前沿
  • 相关阅读:
    CString常用方法简介
    @PostConstruct与@PreDestroy
    Servlet知识
    Extjs ——radiogroup子元素宽度调整
    JS的Document属性和方法
    sql server
    C#中的结构,练习
    datagridview实现复制粘贴
    VS.NET2010水晶报表安装部署[VS2010]
    C#中基础知识积累
  • 原文地址:https://www.cnblogs.com/tiechui2015/p/8964652.html
Copyright © 2011-2022 走看看