-------------android
持续集成: 持续更新代码,持续编译和测试web
方向:
移动:
monkey测试-复习
monkey测试-用于压力稳定测试,产品基本稳定没有特别多的bug时,通常会用monkey去测试;
压力测试:是否发生闪退,奔溃,以及整机测试;
adb monkey 命令:指定monkey相同的:尾随机数
-s 就是一个指定序列的操做顺序 -s 后面是随机数
--日志文件可指定-重定向到一个文本
--- adb shell monkey -p com.android.phone --throttle 500 --pct-touch 80 -v -v 1000 > /mnt/sdcard/monkey_log.txtsql
log日志:复习
日志文件:logcat/trace.txt
记录和查看系统调试信息的功能,经过命令查看:
adb logcat[]
闪退不等于:Crash ,ANR
------
Dropbox 能够查实际一段时间内的异常信息:包括ANR
——————————————————————————————————————shell
android应用测试有什么侧重点
应用闪退的缘由?
一、缓存垃圾过多
平时在使用软件的过程当中,会产生一些垃圾文件,若是长时间不清理会致使手机愈来愈卡,也会出现闪退情况。
进入设置–应用程序——所有——找到有问题的应用程序,清除数据或者缓存。(注:清除数据,会清除掉应用的我的设置、帐户信息等。)
二、运行程序过多
若是不进行设置,不少软件都会本身运行,而手机后台程序过多会形成内存不足,从而形成应用闪退。如出现软件闪退,可先清理内存后再试试。
三、手机杀毒软件
部分手机软件存在着恶意代码,会被杀毒软件拦截于是不能正常进入,应该经过绿色下载平台或者使用软件商店来下载安全系数较高的游戏。
(注:以上三个缘由都如今均可以经过安全软件清理,轻松解决。但须要注意在删除一些大型文件时请谨慎。)
四、应用版本问题
若是应用的版本较低,会致使应用软件不兼容,形成闪退。若是是版本太旧,更新为新版本便可。
如新版本若是出现闪退,是应用改版本还在调试中,无需担忧,会很快修复。
五、网速问题
部分软件须要一个稳定的网络,使用的是2G/3G网络,形成闪退的可能性比较大,建议在有WiFi的状况下玩比较好。
六、缺乏数据包
一些大型游戏须要数据包才能运行。因此要先安装好数据包才能使用。
七、系统不兼容
部分软件对版本有必定的要求,若是系统版本太低,软件是不能支持的,因此会闪退。
八、分辨率不兼容
一些软件对手机分辨率有必定的要求,若是手机分辨率不兼容,有部分软件就容易出现闪退或其它错误。数据库
应用从哪些方面测试
首先要测试正常的流程。
测试各类分辨率
测试后退操做等,可能的非正常操做致使的错误
可使用monkey等测试工具
一、功能正确性测试;
根据这个安桌软件的需求,看它到底支持那些功能,对每一个功能,编写测试用例,验证这个功能是否正确;例如:有注册,登录,编辑消息,发送消息,删除消息,察看消息等功能,那么你就要测试这每一个功能是否正确实现了。
二、界面易用性测试;
主要考虑(1)易理解性;(2)易学习性;(3)易操做性;是否达到要求。
三、兼容性测试;
不一样安卓版本的兼容性;不一样安卓设备的兼容性,例如:不一样厂家的手机,PAD等;看该软件在不一样的软件和硬件下显示是否正常,功能是否正确;
四、安全性测试;
用户信息是否不被泄漏等;
五、不一样网络状态下的测试;
wifi和2g,3g不一样的网络速度下的功能是否正确;没有网络链接的状况下会怎么样,等等。编程
如何抓取日志:
日志重定向;adb logcat -b main -v time缓存
如何作接口测试 -复习接口测试
.接口测试质量评估标准
3.性能测试如何作,性能测试相关指标
4.压力测试和负载测试的区别安全
--自动化
3.什么是分层自动化网络
测试用例分层结构:
大多数分为四层
1 case测试用例的运行case
2 case直接调的lib。(如对被测试系统的操做类,对比测试结果类,清理环境类等)
3 lib调用的公共基础函数或类baselib。(操做数据库,操做文件,操做Linux命令,操做基础数据)
4 数据层(数据库数据结构,加载数据文件等)
测试目录结构:
case :测试用例。
lib;case直接调的lib
baselib:lib调用的公共基础函数或类
conf:测试用例的配置文件
data:存放数据层的数据文件
log:测试用例生成log的目录
mock:上下游mock模块
report:测试报告的目录
tools:测试中使用的一些工具数据结构
4.测试数据如何准备 ——开发人员一块儿准备
5.测试脚本的维护成本怎么样:提升复用性
6.webDriver相关:
a.定位策略
id,name,CSS,tag,link,XPath 等
b.如何实现用例失败or异常时须要用到截图
引入截图模块
---
c 分布式执行webdriver用例
利用jenkins 执行用例
--
7.移动应用相关:
a.Appium的定位策略有哪些
通常为resrouce-id:
name定位
ClassName定位
xpath定位
AccessibilityId定位元素
b.简述appium的原理
能够把自动化测试脚本,翻译成UIAutomator能识别的Java语言,而后调用UIAutomator来执行测试。
c.IOS和Aandroid的UI自动化原理是什么
UiAutomator
UIAutomation
d.定位策略都失败,如何操做?
e.monkey测试的优缺点
对于稳定一点的机器
f.使用monkey发现闪退,如何使用monkey重现
使用随机尾数
Jmeter:
a.使用jmeter作什么测试
b。若是有一个登录接口须要服务端返回参数,再带这个参数去请求才能完成登录,用jmeter怎么作
编程:
什么是面向对象编程
面向对象程序设计将对象做为程序的基本单元,将程序和数据封装其中,以提升软件的重用性、灵活性和扩展性;
继承(inheritance):
封装性(Encapsulation):
多态性(Polymorphism)
SQL:
1.说一下左链接和右链接
2.介绍一下索引
3.sql建表题--百度
----
数据驱动:
数据的改变,驱动自动化的执行,从而引发测试结果的改变;
能够理解为:参数化,输入数据不一样,输出结果不一样的变化;
关键字驱动:
经过关键字,引发测试结果的变化。
关键字是对类的封装;
--webdriver错误截图:get_screenshot_as_file()