移动APP和传统软件测试的区别[转载]
目录
1. 移动App比PC 上的程序测试要复杂
各种兼容性,多种分辨率, 多种异常情况。 会让移动APP上的测试更复杂。
2. 移动APP测试中如何设计Test Case
移动互联网开发节奏很快,而且版本快速迭代, 建议完全放弃传统的Tese Case, 不需要写详细的测试用例。 而采用feature list.
比如使用思维导图工具+功能点 的方法。 这样能节省大量的时间。 而且思维导图比较直观,不容易漏掉功能。
3. 让自己成为真实的用户
大部分移动APP都是面向普通用户的,而不是企业用户。 要让自己成为APP的真实用户, 这样彻底了解业务逻辑,
4. 关注用户体验测试
用户体验式APP成功的关键, 在这么小的屏幕上,用户体验关系着用户对APP的满意度
5. 少做UI自动化,多做后台接口的自动化
UI自动化大部分的时候,都没什么意义,投入大,收入少。 应该多关注后台借口的自动化测试
6. 重要的原则: 测试你最终要发布给用户的APP版本
每日构建,每日测试的理念已经深入人心, 很多时候我们测试的是App的开发和Debug版本。 而不是最终的Release版本, 在打包最终的Release版本时。 我们一般还要加上数字签名,或者再加上代码混淆。那么最终的发布版本和Debug的版本肯定有不一致的地方。 很可能最终的版本会有问题。 比如Debug版本是完全工作正常,但是上线后才发现会导致奔溃
7. HTTP,HTTPS都要覆盖
许多App和后台服务都是通过HTTP来交互的,正常情况下都一切正常,为什么需要测试HTTPS环境? 一些免费上网的环境中,比如,麦当劳,万达商城,他们的网络环境都需要输入用户名和密码,通过SSL认证来访问网络。 如果你使用HTTP Client 的Library对这种异常没有做捕获处理,那么你的APP,肯定要奔溃。
8. 进行网络异常,服务器宕机或出现404,502情况下的测试。
后台服务的稳定性是你有时候很难去控制的,尤其是牵扯到DNS,空间服务商的情况下。 如果出现DNS解析故障,碰到这种情况,你对后台API的请求很可能就会出现404错误, 而你和API交互的数据应该是某种固定格式例如JSON和XML,这样你的数据解析比如会出现错误,抛出异常。如果你对异常没有进行正确的处理可能会导致程序不能正常工作。
9. 2G,3G,4G wifi 都要覆盖
这四者之间不仅仅是网络速度的差别, 它们代表了不同的网络环境。 经常会有些APP能在3G网络下运行,但是不能在wifi下运行。所以在需要check在不同的网络环境。
10. AppStore 冗长的审核机制
一旦你的应用出现严重系统错误, 你修复版本基本不可能在很短时间内在App Store上架。 那么你的用户就会离去。
转载链接:https://www.imooc.com/article/25323
移动APP和传统软件测试的区别[转载]的更多相关文章
- Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型
Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...
- 图解Nosql(hbase)与传统数据库的区别
图解Nosql(hbase)与传统数据库的区别http://www.aboutyun.com/thread-7804-1-1.html(出处: about云开发) 问题导读:1.nosql数据库能否删 ...
- apache与nginx日志文件的区别(转载)
apache与nginx日志文件的区别 转载:http://www.xfcodes.com/apache/log/3270.htm 导读:apache与nginx日志文件的区别,在apache与ngi ...
- FB01与F-02的区别(转载)
FB01与F-02的区别(转载) FB01 : a) ''Post Document'' b) No doc type as SA automatically comes. c) No automat ...
- Android Library和Android APP、Java Library的区别
Android Library和Android APP.Java Library的区别 Android Library在目录结构上与Android App相同,它能包含构建APP所需的一切(如源代码. ...
- APP测试和WEB测试区别
App测试web测试的区别 单纯从功能测试的层面上来讲的话,APP 测试.web 测试 在流程和功能测试上是没有区别的 根据两者载体不一样,则区别如下: 1.兼容性测试:web端兼容浏览器,app端兼 ...
- Hbase与传统数据库的区别
在说HBase之前,我想再唠叨几句.做互联网应用的哥们儿应该都清楚,互联网应用这东西,你没办法预测你的系统什么时候会被多少人访问,你面临的用户到底有多少,说不定今天你的用户还少,明天系统用户就变多了, ...
- 浅谈HTTP中Get与Post的区别[转载]
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP ...
- 货运APP雨后春笋 传统物流模式将被改变
移动互联网正在改变我们的生活方式,各种手机APP充斥着人们的生活,物流行业也不例外.货运APP的出现,对于物流行业是一个提升的机会,也是迈向标准化和专业化的一个有效途径.有专家预测,这将为物流行业的发 ...
随机推荐
- 用 Flask 来写个轻博客 (17) — MV(C)_应用蓝图来重构项目
目录 目录 前文列表 重构目录结构 重构代码 使用蓝图后的路由过程 总结 前文列表 用 Flask 来写个轻博客 (1) - 创建项目 用 Flask 来写个轻博客 (2) - Hello World ...
- Spring Boot控制上传文件大小
spring: http: multipart: max-file-size: 5MB max-request-size: 20MB
- shell编程:向函数中传递参数
cal.sh sh cal.sh 20 + 10 实现这样传参的函数(shell不是一个严谨的编程语言,参数这种是不用定义的,函数中直接引用,shell执行中直接写) #!/bin/bash # ca ...
- Neo4j-Cypher查询语言-函数
断言函数(Predicate functions) 函数名称 函数说明 ALL(identifier in collection WHERE predicate) 判断一个断言(predicate) ...
- servlet的ServletContext接口
ServletContext Servlet 上下文 每个web工程都只有一个ServletContext对象,也就是不管在哪个servlet里面,获取到的这个ServletContext对象都是同一 ...
- servlet配置url-pattern的匹配规则
<servlet> <servlet-name>hello</servlet-name> <servlet-class>com.qf.servlet.H ...
- Python第九节 条件和循环
while...else 当满足while循环条件的时候执行循环体内的语句,否则执行else的语句例如下面的例子: count = 1 while count <= 5: print(" ...
- LeetCode Array Easy 53. Maximum Subarray 个人解法 和分治思想的学习
Description Given an integer array nums, find the contiguous subarray (containing at least one numbe ...
- react踩坑
1.列表渲染一定要注意key的唯一性,不然会导致页面只更新部分的bug graphVertexConfigList.data.map((item, index) => { return < ...
- Alpha版本后的心得体会
Alpha版本后的心得体会 在我们一系列的努力之下,我们团队打造的校园互助式快递代取APP——U-Help的α版本终于能够问世了.尽管这个版本存在着这样那样的问题,但是我们还是对此抱有充足的信心.另一 ...