- 博客(43)
- 资源 (1)
- 收藏
- 关注
原创 MAT分析摘要
MAT分析:Step1:如果用MAT分析,需要转换下:MAT是用来分析java程序的hprof文件的 与Android导出的hprof有一定的格式区别,因此我们需要把导出的hprof文件转换一下,sdk中提供给我们转换的工具 hprof-conv.exe (在sdk的platform-tools目录下)hprof-conv 源文件 输出文件比如 hprof-conv E:\aaa.hprof E:\output.hprof转换之后 用MemoryAnalyzer.exe 打开这个output.h
2022-02-28 17:38:16
1990
原创 使用Battery Historian采集android耗电数据
一、简介Battery Historian是由Google提供的查看电量相关信息及事件的工具,Battery historian还可以上传bugreport文件,分析用户手机中App的电池耗电情况。详见:GitHub - google/battery-historian: Battery Historian is a tool to analyze battery consumers using Android "bugreport" files.。二、耗电数据采集【注意点】1.开始测试电.
2021-09-22 11:09:40
993
原创 APP稳定性测试工具fastbot(字节开源项目)
1、简介fastbot是字节团队基于monkey的二次开发的app稳定性测试工具,目前已经开源,此工具有比较深入的算法探索,目前已经更新了多个版本,相对稳定的支持了移动端app、H5页面的自动化遍历,支持定制测试、当发生crash、anr时会有比较全的log可导出供分析。简介参考testhome:字节跳动质量利器 -- 移动端智能化稳定性测试工具 Fastbot-Android/iOS 双端重磅发布上线 · TesterHome更多详情参见:奔跑吧!智能Monkey之Fastbot跨平台此开
2021-09-16 14:39:43
17039
原创 华为鸿蒙系统兼容测试方法
1、【HarmonyOS升级计划和支持机型】华为开发者官网发的HarmonyOS升级计划和支持机型请参考:https://club.huawei.com/thread-27391392-1-1.html真持升级的机型,可直接升级系统,在设置页看到android的版本信息为HarmonyOS 2.02、云真机调试方法https://wetest.qq.com/products/cloud-phone 腾讯wetest云手机-选中鸿蒙系统使用之前注册账号赠送的免费额度即可:.
2021-07-01 15:27:08
2832
转载 移动端测试工具集(android&ios)
测试工具 适用平台 优缺点 xcode自带的instrument ios 开发工具自带的监测工具,包含了很多强大的监测功能,且持续迭代更新,使用方便 Android Studio Profiler、adb shell命令行 android 优点:非侵入,权限高,能发现问题 缺点:需要连接数据线,便携性差点 perdog android 无需root,有界面可以查看数据;操作简单 Battery Historian android
2021-02-02 11:15:24
1016
原创 弱网测试
一、弱网测试关注点弱网环境模拟方法一般有使用代理网络进行弱网测试,比如Fiddler、Charles;或者安装工具进行弱网测试,常见的弱网测试关注点:二、测试工具1、QNET(android)QNET 这个工具可以模拟弱网测试 ,下载安装包地址:https://wetest.qq.com/product/qnet;使用方法简单:安装apk后选择要模拟的网络环境,选择要测试的app即可注意:需要去开启QNET的应用浮窗显示权限2、Developer-Network Link
2021-02-02 10:56:16
933
1
原创 【兼容性测试方案】安卓+IOS
安卓:主要考虑两个维度进行覆盖:新增功能特性层面,从系统版本、UI、历史版本兼容进行重点覆盖; 回归层面,结合云测方案进行辅助,例如MQC,华为云测、VIVO云测、小米云测等, 云测只能作为辅助测试。考虑付费的话,阿里云的MQC云测其实挺好的但费用比较高(目前600元能测一次,覆盖100台设备)https://www.aliyun.com/product/mqcIOS端:暂时没...
2020-03-22 15:50:49
768
原创 【docker】android-battery-historian
1.部署:加载镜像文件:docker load < android-battery-historia.tar启动镜像,映射端口9999-999docker run -d -p 9999:9999 gcr.io/android-battery-historian/stable:3.02.测试过程:重启虚拟机后,在secureCRT切换root用户,启动docke...
2020-03-22 15:40:19
596
原创 【专项】【页面加载时间】uiautomator2+opencv-python基于图片识别算法实现自动化统计页面加载时间DEMO
uiautomator2+opencv-python基于图片识别算法实现自动化统计页面加载时间DEMO:一、实践要点记录1.uiautomator2实现UI操作2.opencv-python基于图片识别算法,机器判断图片加载完成3.过程:#点击页面入口时开始记录时间start_time# 边加载页面边截图 # 定义一个标准,哈希值范围是0-64,哈希值越小,图片越相似#...
2020-01-06 16:05:41
2727
4
原创 【uiautomator2】uiautomator2+python3测试app应用(1-2-unnitest-3-pytest)
Documentation in <https://github.com/openatx/uiautomator2>一、环境(1)安装依赖pip install atxpip install --pre --upgrade uiautomator2pip install --pre --upgrade weditor(2)手机链接电脑后,初始化:python...
2020-01-02 22:53:46
742
原创 【性能】【Android内存测试关注点】内存泄露&单个应用可用的最大内存
一、android内存测试关注点(1)有没有内存泄露(2)防止OOM(单个应用可用最大内存超出会报OOM)二、测试方法(1)内存泄露的测试:参考https://blog.youkuaiyun.com/anxpp/article/details/51325838(2)防止OOM的测试:关注指标dalvik.vm.heapgrowthlimit通过DDMS调试应用进程的当前分配的内存h...
2019-12-09 19:41:03
302
原创 【效率】【性能】接口响应时间(使用fiddler工具、pythton request的elapsed方法)
一、使用fiddler工具查看接口响应时间测试项:http接口响应时间测试工具:fiddler查看方法:(1)选中单条URL,在右侧的视图中选择statistics->overalll elapsed 的值为接口响应时间(2)设置把此字段列出来的方法:在URL那一栏右键点击,选择customize columns,然后在弹框中选择session timers、ov...
2019-12-09 19:13:42
2171
原创 【jenkins】自动化部署-ui自动化-pytest+allure+jenkins(appium框架)
jenkins自动化部署-ui自动化:pytest+allure+jenkins(appium框架)一、jenkins配置1. 安装插件HTML Publisher plugin、Allure Jenkins Plugin2.配置环境变量jenkins首页-》Build Executor Status-》configure(设置)-》Node Properties下勾选Envi...
2019-12-08 12:29:27
1458
原创 (实践四)封装base+logger,pytest+allure生成html报告
一、logging简易封装:代码可参考此文:https://www.cnblogs.com/fengyiru6369/p/8052953.html二、base中初始化LOG:(1)LOG = logger.Logger("base").getlog()(2) def __init__ ( self, driver ): self.log=LOG# -*- ...
2019-12-07 14:59:04
765
原创 (实践记录三)appium自动化po模式之main函数pytest运行cases
(实践记录三)appium自动化PO模式之main函数pytest运行cases# -*- coding:utf-8 -*-import pytestimport osimport allureimport loggerfrom Cases.mydriver import mydriverfrom Pages import searchpage,fcirclepage#实例化封...
2019-12-06 14:07:14
440
原创 (实践记录一)appium自动化po模式封装base
(实践记录一)appium自动化po模式封装base:# -*- coding:utf-8 -*-from appium.webdriver.common.touch_action import TouchActionimport os,sys#所有pages继承父类base封装的方法class base: _path = os.path.dirname(os.path.d...
2019-12-06 13:50:27
807
1
原创 python 封装调用之class 、_init__、self搞懂了
python 封装调用之class 、_init__、self搞懂了参考:https://www.cnblogs.com/yulongzhou/p/10654185.html__init__方法其前面带有”__“,故此函数被声明为私有方法,不可类外调用。此方法可以带参数初始化1.写了模块searchpage.py:# -*- coding:utf-8 -*-class...
2019-11-30 12:41:54
881
原创 (封装)截图-APPIUM 以当前函数为名sys._getframe().f_code.co_name保存测试截图driver.save_screenshot
一、简单封装:def save_img(self,fname): return self.driver.save_screenshot(path+"/result/img/"+fname+".png")for i in range(4): self.save_img(sys._getframe().f_code.co_name+str(i))1.截图API:d...
2019-11-29 17:27:11
1628
原创 allure+pytest测试报告
allure+pytest测试报告:已设置allure环境变量生成HTML报告allure generate XX\result\xml -o YYY\report\html\ --clean查看HTML报告allure open -h 127.0.0.1 -p 8083 YYY\report\html\...
2019-11-29 16:21:30
304
原创 jmeter beanshell (BeanShell PreProcessor)
参考:密码解密:https://www.cmd5.com/sha256 java算法参考此:https://blog.youkuaiyun.com/wang864676212/article/details/81776261参考:java打包 jar方法一、BeanShell PreProcessor可用于发request前的数据处理(比如密码加密)1.把java 写的算法 打包成...
2019-11-28 20:48:28
363
原创 JENKINS+ANT+JMETER+GIT接口自动化(简记)
JENKINS+ANT+JMETER+GIT接口自动化一、安装JENKINS(官网下载安装)安装成功后登入,在Manage Jenkins板块安装插件GIT等:二、ANT、JAVA下载安装后配置环境变量三、JMETER下载安装并配置环境变量四、代码仓库把本地代码上传到GITLAB、码云等能够多人协助的仓库Git链接(SSH)git上传代码:...
2019-11-27 20:28:26
995
原创 appium自动化测试实践(demo)
使用APPIUM框架+PYTHON脚本实现自动化(发个动态)一、python# -*- coding:utf-8 -*-from time import sleepfrom appium import webdriverimport pytestimport os,sysimport yamlimport allureimport loggerfrom appium.we...
2019-11-27 20:05:21
396
原创 selenium+chrome+python+jenkins实现ui自动化(学会webui自动化运用到项目测试)
# -*- coding:utf-8 -*-from selenium import webdriverfrom selenium.webdriver.support.ui import Selectimport timedef jenk_autobuild():wd = webdriver.Chrome()wd.get("http://jenkins.goodibe...
2019-07-05 13:45:28
1500
转载 移动平台崩溃收集分析系统之 --crashlytics、友盟、bugly、网易云捕对比
原文:http://blog.youkuaiyun.com/zhuobattle/article/details/50848745?locationNum=13大家在开发移动APP时,会涉及到很多非产品本身的功能,比如数据统计分析、APP 质量跟踪、APP加密、漏洞扫描分析等等,这些功能目前都有很多第三方的SDK及平台可以使用,这些平台各有特点,很多时候开发者是凭借自己的慧眼来选择,也有很多是通过
2018-01-10 11:16:14
2464
原创 使用testsuit执行测试用例,选择特定用例执行多次的方法(appium+python)
python代码:# -*- coding:utf-8 -*-import unittestdef MultiRun(): #列出所有的用例名,方便在cmd窗口copy try: f_casesname = open(r'E:\test\scrips\nameoftestcases.txt') print u'
2017-12-13 11:45:57
4189
原创 封装等待方法WebDriverWait
实际测试过程中,等待下一个界面元素出现的超时时间设置时,常用的调用超时方法:WebDriverWait(_driver,timeout).until(expected_conditions.visibility_of_element_located((By.ID,id)))感觉太麻烦了,简单的封装一下,调用方便一些:def WaitElem(_driver,id,timeo
2017-12-06 20:55:57
1710
原创 多个相同classname的控件中查找子控件(父控件text、resource-id为空,classname不是唯一...)
测试目的:搜索结果中找到联系人名为appium的名片,点击打开详情。调试时发现,如果直接在当前页面使用self.driver.find_element_by_name("appium"),查找失败。此时需要通过父控件查找子控件的方法。接下来,一、首先要找到父控件了。。。然而搜索结果有多个,并且通过uiautomator看到 ,父控件text、resource
2017-12-06 14:19:06
4217
转载 appium根据屏幕大小滑动界面driver.get_window_size()、driver.swipe()
driver.get_window_size() 获取屏幕的宽、高;driver.swipe()从坐标1滑动到坐标2,t毫秒时间内完成。上下滑动时,坐标的x值可以不变,只改变坐标y值的大小。左右滑动时,坐标的y值可以不变,只改变坐标x值的大小。 上下滑动的代码:def test_contactlistswipe(self): try:
2017-12-05 14:37:08
9340
转载 python使用 time.strftime() 命名文件名包含当前时间
#encoding:utf-8import os,sysimport csvimport timenow = time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime(time.time())) fname="D:/logs/"+now+r"report.csv"csvFile = open(fname,'wb')
2017-12-05 14:30:08
34887
2
原创 appium driver.swipe () 实现界面滑动执行报错 AttributeError: 'WebDriver' object has no attribute 'swipe'
问题:使用swipe ()未实现滑动,报错:注释掉后实现上下滑动了:
2017-12-01 22:40:39
5924
1
转载 Appium python 框架
转载地址:https://testerhome.com/topics/3460希望给点意见和建议,毕竟周围没有人可以交流。。。前言嘿嘿,第一次发帖有点小激动。接触appium也有一个多月了,自己根据以前做selenium的经验(其实只有一年不到!!!)搭建了框架,希望大家给点意见啊!!!毕竟我身边没有可以和我交流的!!!万分感谢流程1.打开a
2017-11-13 18:02:31
2009
2
翻译 Android应用或界面启动时间性能
Android应用或界面时间测量:从Android 4.4(API Level 19)开始,logcat包含了输出displayed时间相关的日志信息,dispalyed行后面的时间值表示应用启动进程和完成绘制屏幕上相应活动之间所花费的时间。
2017-11-13 14:11:09
1520
原创 Android稳定性测试之monkey学习与实践
一 、monkey简介:monkey是Android系统自带的命令行工具,可以运行在模拟器或真机,monkey主要通过模拟用户事件比如触摸屏,滑动,按键输入等操作对正在运行的程序进行压力测试,看看程序多久时间会出现异常,可以用来测试系统的稳定性。官网地址: https://developer.android.com/studio/test/monkey.html二、monk
2017-11-06 12:08:22
438
原创 appium+python自动化实践之添加移动端logcat日志
使用appium框架执行Android自动化测试时,如果移动端程序发生了异常,期望有相应的log辅助分析,于是想到了需要测试过程需要打印logcat,实践了以下的方法:方法1:执行自动化测试时,同时打开另外一个cmd,用来抓取日志,以下是使用python脚本或直接在命令行获取logcat日志实例:1)python(log文件名加上了当前时间):#encoding:utf-8
2017-11-01 17:35:36
4407
2
转载 appium自动化测试实践之python利用unittest进行测试用例执行的几种方式(转载)
原文:http://www.51testing.com/html/10/448910-3648852.html利用python进行测试时,测试用例的加载方式有2种: 一种是通过unittest.main()来启动所需测试的测试模块; 一种是添加到testsuite集合中再加载所有的被测试对象,而testsuit里存放的就是所需测试的用例,下面分别列出3种方法的具体使用方式:
2017-11-01 17:17:12
3200
转载 Android性能测试之内存分析以及MAT工具
学习资料转载自:http://blog.youkuaiyun.com/guolin_blog/article/details/42238633/
2017-11-01 17:09:20
588
原创 appium+python自动化实践之查找元素的等待方式
实际测试过程中,比如点击一个控件需要启动一个新activiy界面,或需要加载弹框,或请求网络加载数据成功后刷新界面,此时需要等待一段时间,新界面出现了才能继续执行UI操作,否则还在加载中,程序已开始执行新界面操作的代码,脚本就会报错了。开始写测试脚本时,没有考虑到等待过程,导致脚本调试失败,报错后考虑到实践过程,于是添加了等待,搜索了一些资料,发现主要是通过以下3种方式实现:
2017-10-31 20:28:17
5537
原创 appium+python自动化测试实践之使用uiautomatorviewer.bat+webdriver模块查找定位app界面控件(Android)
1.连接手机,在Android sdk安装目录下的tools里面找到uiautomatorviewer.bat,点击运行该.bat文件:ui automator viewer打开后,界面显示如下,左侧显示的是当前连接的手机界截图,点击界面上的一个控件,比如完成按钮√,右侧可以看到该控件的id,chassname等信息。如截图红框中,查看到了完成√按钮的resource-id,结合web
2017-10-31 10:05:54
3198
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人