安卓游戏自动化测试(安卓app自动化测试)
发布时间:2024-06-02DroidPilot:一个新出android自动化测试工具 DroidPilot是一个自动化测试工具。它可以针对于Android平台的应用程序进行测试脚本编辑、自动回放、结果检查、报告输出等操作,以此来缩短回归测试的时间和提升项目整体进度。
Monkey是AndroidSDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。
Robotium——安卓测试工具 Robotium是安卓系统最常用的自动化测试工具,并且是一款免费的安卓UI测试工具。它适合于各种不同的安卓版本及其下行版本。软件开发者经常把它称作安卓。Robotium创建的测试使用Java写的。事实上,Robotium是一个个体测试数据库。
纯白盒方式的测试,Monkey。楼上已经有哥们提到了,使用moneky更多的是开发team,而不是纯粹的测试team,毕竟要求对android开发比较了解才用得了monkey。
Monkey是Android SDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。
Espresso:是Google的开源自动化测试框架。笔Monkey功能强大,也是androidSDK提供的测试工具,优点:操作最为简单,可以录制测试脚本,可视化操作;缺点:主要生成坐标的自动化操作,移植性不强,功能最为局限;MonkeyRunner是很有前景的,Google自己弄的。
Monkey是AndroidSDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。
Robotium——安卓测试工具 Robotium是安卓系统最常用的自动化测试工具,并且是一款免费的安卓UI测试工具。它适合于各种不同的安卓版本及其下行版本。软件开发者经常把它称作安卓。Robotium创建的测试使用Java写的。事实上,Robotium是一个个体测试数据库。
andoird测试工具的分类有:1)纯白盒方式的测试,Monkey。使用moneky更多的是开发team,而不是纯粹的测试team,毕竟要求对android开发比较了解才用得了monkey。
Appium Appium 是一个开源、跨平台的自动化测试工具,用于测试原生和轻量移动应用,支持 iOS, Android 和 FirefoxOS 平台。Appium 驱动苹果的 UIAutomation 库和 Android 的 UiAutomator 框架,使用 Selenium 的 WebDriver JSON 协议。
1、第一步、安卓自有目录\tools\hierarchyviewer.bat工具可以用来查看应用程序的ID。(1)、启动安卓模拟器,打开需要查看ID的软件界面。此处以google搜索界面为例。然后双击打开hierarchyviewer.bat,显示搜索界面的activity,即下图左侧被选中的项,表示搜索界面的完整包名。
2、多设备控制:monkeyrunner API可以跨多个设备或模拟器实施测试套件。您可以在同一时间接上所有的设备或一次启动全部模拟器(或统统一起),依据程序依次连接到每一个,然后运行一 个或多个测试。您也可以用程序启动一个配置好的模拟器,运行一个或多个测试,然后关闭模拟器。
3、标准的monkey 命令 [adb shell] monkey [options] eventcount , 例如:adb shell monkey -v 500 产生500次随机事件,作用在系统中所有activity(其实也不是所有的activity,而是包含 Intent.CATEGORY_LAUNCHER 或Intent.CATEGORY_MONKEY 的activity)。
4、Robotium没有记录和播放功能,它不支持截屏。 MonkeyRunner——安卓App测试工具 MonkeyRunner是最流行的有自动化功能的安卓软件测试工具。MonkeyRunner比起Robotium要低端一些。它并不处理源代码。测试创建是用Python写的,其中可能使用记录工具,为了创建测试。
5、测试的对象仅为应用程序包,有一定的局限性。 Monky测试使用的事件流数据流是随机的,不能进行自定义。可对MonkeyTest的对象,事件数量,类型,频率等进行设置。
6、简单的说,那些重复性的测试工作,都可以交给自动化完成:设置手机的语言添加、删除、收藏联系人拨号、挂断甚至发送短信、收藏短信如果需要上面的功能,那么就开始自动化之旅吧。
WeTest腾讯质量开放平台可以测试包括内存使用情况,CPU消耗,以及流量使用情况等实时的性能数据。可以试试用一下,操作简单获得的数据却很专业。把App安装在云端手机上,边操作,边观察性能数据的变化。测试结束后还可以查看报告和下载日志。以一款游戏在小米手机上的测试报告为例。
MonkeyRunner可以在连接状态的PC或者模拟器上运行测试。它有一个应用程序接口可以控制智能手机或者模拟器。但手机APP测试工具的最大缺陷是每个设备都要编写脚本。另一个缺陷就是,每次测试程序发生改变时都要调整。
Selenium:Selenium是一个用于Web应用程序测试的工具。它支持多种浏览器,并且可以通过不同的编程语言(如Java、Python、C#等)来编写测试脚本。Selenium提供了丰富的API来模拟用户与Web页面的交互,如点击按钮、填写表单等。通过Selenium,测试人员可以编写自动化脚本来执行功能测试、性能测试等。
1、使用UIAutomator Viewer分析应用的UI结构,找到需要进行自动化测试的元素。编写UIAutomator脚本,使用Java或Kotlin编写,以模拟用户与应用的交互。使用Python进行ADB操作:利用Python的subprocess模块执行ADB命令,与设备进行交互,如安装应用、启动应用等。
2、单元测试 a、unittest :Python自带的单元测试框架 b、pyunit:Junit的Python版本 使用Pyhon进行Windows GUI测试 这部分的功能主要就是和大家平时使用的QTP类似。
3、Python版本建议选择7,下载安装时勾选自动添加到系统路径,这样在后续的脚本编写中会更加便捷。然后,用pip3来安装Appium-Python-Client,这是Python与Appium交互的桥梁。实战演示 设置完成后,我们来看一个具体的示例:开发一个QQ应用登录脚本。
4、接口测试:http协议的举例:可以用python自带的urllib\urllib2模拟,模拟前端向服务器发送数据,获取返回值后,进行校验和判断来进行接口测试。