• SoloPi开源Android专项测试工具初体验


    SoloPi支付宝在移动端上一个无线化、非侵入式、免Root的Android自动化专项测试工具,目前开放的有录制回放、性能测试、一机多控三项主要功能,能为测试开发人员节省宝贵时间。

    环境准备

    PC端环境准备,以我的电脑Windows系统为例:

    1. SoloPi是基于java开发的一款测试工具,因此需要配置JDK环境变量(太熟悉家常菜~ 多吃几次你就熟悉了怎么配置)简单粗暴上个图 :

    验证JDK是否配置成功,出现版本号,则表示配置成功:

    2. Android SDK环境变量配置

    比太熟悉还熟悉的就是SDK的环境变量配置,就不在这占用大家阅读这边文章的宝贵时间了,简单粗暴一个字:略。

    adb环境配置完毕后,需要将您的Android设备连接到电脑上,通过adb devices命令来查看Android设备是否已经连接了电脑

     

    移动端(Android)的准备及手机权限的获取

    以测试机小米5X为例,接下来当然就是solopi安装包的获取,我们可以官方公布的github上()下载最新版的apk,安装到测试机。

    小米5手机打开开发者选择项,打开方式有好多种,你喜欢就好。但别忘了小米手机都是需要打开一个USB调试(安全设置),此按钮需要读取到SIM卡才能打开。

    SoloPi的使用

    性能测试

    SoloPi性能测试,可记录待测应用的各项性能指标,支持实时观察模式与录制模式,支持通过图表展示以往录制的数据,另外支持性能加压与响应耗时计算功能。

    具体使用过程如下:

    SoloPi设置的默认端口为5555。点击性能测试,需要获申请adb权限,将手机连接电脑端并输入命令adb tcpip 5555,系统会弹框提示“允许USB调试吗?”确定。

     

     

    USB调试权限允许之后,页面就会有跳转到性能指标选择设置页面:

    1. 顶部点击“全局”搜索我们的目标app“海马聊天”;(图1)
    2. 可用的性能数据列表选项中,试着选择一些CPU、内存、电池、网络等性能选项;对应的会出现一个弹框,可实时监测用例的各个性能指标(图2)

    在进入应用前,Soloπ会显示全局指标,进入应用后,Soloπ会显示应用最上层进程的相关性能指标。

    CPU、内存指标为进程维度,响应耗时、帧率、网络为应用维度,电池为全局指标。

    具体性能指标描述请参考后文性能指标一段。

     

    3. 点击弹框中的目标应用,即可快速进入目标app中,即可监控到我们的海马app的进程维度,可以查看到一些CPU、内存的指标数据(图3)

     

    4. 点击弹框中的“开始”按钮,即开始执行用例,就能实时查看到该用例所监控到的一些性能数据(图4-1)。执行用例过程中,进行监控中的数据(图4-2)

     

    5. 结束录制,点击“停止”按钮,SoloPi会提示将用例录制的数据保存在弹框提示的默认目录下(图5)

    录制数据为csv格式,包含三列,第一列为Unix时间戳,第二列为数据数值,第三列为额外字段(可扩展字段)。

    进入到该文件目录下,查看生成的数据报告csv文件,(如图5-1)。可产看到我们最初选择的性能选项中的一些性能数据生成的csv报告列表(图5-2)。例如点击进入查看全局上行流量的监控报告(图5-3),在后面会看到一个将该报告转换成的一个折线图报告。

     

    6. 点击弹框中的“主页home”键,可快速进入到SoloPi界面中,可在录制数据查看一项中查看之前录制过的数据。(图6)

    点击弹框右上角“关闭”按钮,可关闭悬浮窗。

     

    7. 向下滑动,在测试数据结果中可查看录制数据折线图(图7-1);在数据选中选择我们执行用例在某时间生成的报告和指定该报告中的某个专项数据的结果,底部会以折线图展示出来,可以左右上下放大缩小查看某个时间点对应的上行流量值KB(图7-2)

     

    环境加压

    环境加压,可以模拟CPU和内存在占用比高的情况下,待测app的运行情况。可以模拟手机再多个应用或低端机型的情况下,app的使用情况。可将CPU占用率设置为50%、80%的情况下,测试app运行的卡顿、接口响应的时间,是否会有其他异常出现(如下图)。

     

    结束语

    SoloPi的功能远不止这些:

    一机多控:可在一个手机上控制多台手机,同时执行一条用例,大大节约了兼容性测试的时间,提高测试效率。

    响应耗时、启动耗时计算:可以指定某个起点和终点来测试它的响应时间。优化用户体验。

  • 相关阅读:
    SAP系统邮件功能配置
    SAP SQL 表inner join 不同长度字段连接
    Read_text 获取传入参数
    imageio.write 惹的祸,占用cpu过高,堆溢出问题
    消息队列报 堆溢出解决方案
    技术文档java
    maven:项目中一些依赖不能更新可使用如下命令进行更新 maven库
    volatile 验证 java
    用Lock 和Newcondition实现同步容器 java
    计算数组中有几对相反数
  • 原文地址:https://www.cnblogs.com/hushaojun/p/16560871.html
Copyright © 2020-2023  润新知