android测试开发概念
一:测试分类
1.分类概览
按测试阶段划分:
单元测试
集成测试
系统测试
验收测试
按是否覆盖源代码:
黑盒测试:
功能测试:
界面测试
逻辑测试
安装测试
应用性测试
兼容性测试
性能测试:
稳定性测试
负载测试
压力测试
一般性测试
按是否运行代码:
静态测试
动态测试
按是否自动化:
自动化测试
手工测试
其他测试:
回归测试
冒烟测试
随机测试
验收测试
2.白盒应用领域
黑盒测试:贴近用户、只关注输入输出不关心代码实现;覆盖不了所有代码
白盒测试:关心源码的实现及其内部逻辑发现隐藏问题、只能从代码层面发现代码是否正确、发现的问题用户未必会涉及
二:白盒环境搭建
1.测试环境准备
JDK、Android—SDK 、Android Studio、SVN
2.环境变量配置:
依次点击 开始>计算机>系统属性>高级系统设置>环境变量>系统变量Path >点击编辑;
将光标移动到末尾输入英文分号;依次加入自己本地的jdk路径、android-sdk 的platform-tools 和android-sdk-platforms路径 C:\Program Files\Java\jdk1.8.0_131\bin ;D:\android- sdk\platform-tools;D:\android-sdk\platforms 路径之间以英文分号相隔 如本地路径不一致改成 自己本地对应路径
3.检验环境是否安装成功
点击开始输入cmd 输入命令java-version,显示jiava版本 ;adb devices ,显示已经连接的设备
如果已有连接则会显示手机的SN号
三:用例设计思路及规范
程序控制流图
逻辑覆盖
路径分析
规范:
1.设计用例流程的所有动作都要用代码实现,不能还要依赖人力或其他非自动化动作。但用例涉及界面效果时本地调试时可以观察下功能上是否和接口检测相符必须有检测点且必须用代码实现。
2.分支是否遗漏某种情况导致漏测?
逻辑漏洞:假设接口(函数)功能失效case是否一定failed?
预置初始化-执行-检测-清理(改变手机状态的恢复初始状态bimap垃圾回收
四:工具类介绍
1.BaseTestCase类公共函数介绍
1.1.BaseTestCase初始化属性
所有测试类需集成BaseTestCase、可直接调用已经实例化的 测试应用context 对象mContext、被测应用context对象 targetContext 、及Instrumentation mInstrmentation (context 对象为android获取系统服务必备参数)
1.2.封装公共函数
1.lanchActivity 可以启动一个activit并获取该activity实例
2.点击类clicikOntext
3.finishOpendActivits关掉所有窗口
4、mockhome 回到home键
5.startActivyByName 通过包名启动应用
6.dial打电话
7.takephoto 照相
8.sleep 休眠屏幕
9.wakeup 唤醒屏幕(亮屏)
10.OpenGpsSettingEvent 打开GPS
11、openTestProviderLocation 打开开发者模式等常用公共函数
五:用例来源及开发示范
1.用例来源
A)源码
B)UI用例改造
C)手动用例自动化
六:注意事项
1.android中文官网 https://developer.android.google.cn/index.html
2.申请源码访问权限
3.源码jar包
Java初转android常见问题:
1.对象new不出来、或者new出来的没有作用
2.找不到具体实现。
3.APP、装不上、工程carsh找不到原因
七:android白盒开发学习流程
1.android官方开发java
2.熟悉手机基本操作、及adb命令
3.Android开发基础(第一行代码android)
4.深入学习Android源码(深入解析android系统)
android测试开发概念的更多相关文章
- android测试开发环境搭建
本文档针对未接触过android的0基础人员,在开始熟悉android之前,首先需要一个学习环境来支撑,在此简单介绍一下android环境搭建.(当然大家也可以百度.谷歌,类似的文档很多) 环境搭建: ...
- 【Android测试】【随笔】与 “58同城” 测试开发交流
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5384698.html 初衷 一直都有一个这样的想法: 虽然 ...
- 【Android测试】【第十七节】Instrumentation——App任你摆布(反射技术的引入)
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5569844.html 前言 学习了上节之后,大家是否已经 ...
- Android NDK 开发(四)java传递数据到C【转】
转载请注明出处:http://blog.csdn.net/allen315410/article/details/41845701 前面几篇文章介绍了Android NDK开发的简单概念.常见错误及处 ...
- Android NDK 开发(二) -- 从Hlello World学起【转】
转载请注明出处:http://blog.csdn.net/allen315410/article/details/41805719 上篇文章讲述了Android NDK开发的一些基本概念,以及NDK ...
- Android NFC开发概述
NFC手机相比普通手机来说,有以下3个附加功能: 1.可以当成POS机来用,也就是“读取”模式 2.可以当成一张卡来刷,也就是NFC技术最核心的移动支付功能 3.可以像蓝牙.Wi-Fi一样做点 ...
- 转——Android应用开发性能优化完全分析
[工匠若水 http://blog.csdn.net/yanbober 转载请注明出处.] 1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关于性能的建议,感觉 ...
- Android 应用开发性能优化完全分析
1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关于性能的建议,感觉大家你一总结.我一总结的都说到了很多优化注意事项,但是看过这些文章后大多数存在一个问题就是只 ...
- 【转】Android应用开发性能优化完全分析
http://blog.csdn.net/yanbober/article/details/48394201 1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关 ...
随机推荐
- Spark2.0 Java实现将Hive运算结果保存到数据库
package com.gm.hive.SparkHive; import org.apache.spark.sql.Dataset; import org.apache.spark.sql.Row; ...
- 总结const、readonly、static三者的区别【收藏、转载】20190614
总结const.readonly.static三者的区别 const:静态常量,也称编译时常量(compile-time constants),属于类型级,通过类名直接访问,被所有对象共享! a.叫编 ...
- Mysql 数据库中9大对象
MySql 数据库9中对象1.表2.索引3.视图4.图表:数据库表之间的关系视图,并不常用5.规则6.缺省值:数据列的默认值7.触发器8.存储过程9.用户
- 日志远程更新脚本shell
log_update.sh.bak: #!/bin/bash# To Update Logs... #/bin/rsync -avz --delete --exclude=warn.log @172. ...
- AOP切面详解
一.spring-aop.xml文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns= ...
- Springboot 默认cache
1:Springboot 默认缓存为ConcurrentMapCacheManager(spring-context) 2:再启动类上开启缓存 @SpringBootApplication //相当于 ...
- [web 安全]逻辑漏洞之密码重置
原文:http://wooyun.jozxing.cc/static/drops/web-5048.html 密码找回逻辑一.用户凭证(密码找回的凭证太弱,暴力破解)1.当当网任意用户密码修改漏洞(h ...
- JVM加载class文件原理
装载的概念 所谓装载就是寻找一个类或是一个接口的二进制形式并用该二进制形式来构造代表这个类或是这个接口的class对象的过程. Java中类装载器装载类到虚拟机 在Java中,类装载器把一个类装入Ja ...
- vue中select的使用以及select设置默认选中
简介 今天写pc端引入vue,遇到了一个问题,就是我循环出select内的数据以后,发现原本默认显示第一条的select框变成了空白,要选择后才有显示,结果查了好多文档,讲的都不是很清楚,后来看到一句 ...
- 【leetcode】1078. Occurrences After Bigram
题目如下: Given words first and second, consider occurrences in some text of the form "first second ...