A. 测试一个手机app的测试用例怎么写
手机app测试主要有以下: 1.安全测试 1)软件权限 -扣费风险:包括发送短信、拨打电话、连接网络等 -隐私泄露风险:包括访问手机信息、访问联系人信息等 -新增风险项 2)开发者官方权限列表信息比对分析 2.安装、运行、卸载测试 验证App是否能正确...
一、 等价类分析法
等价类划分方法针对手机状态大致可以归几个大类:
1. 按键类(等价法):有效输入和无效输入(有效输入指UM和菜单指示;无效输入指测试菜单功能此时没有定义的按键和用户动作);
2. 外部中断类(等价法):常用、不常用及无效
2.1. 常用:来电和来消息(短信、彩信、push消息);掀合盖;侧键;耳机&FM;情景模式;电量不足
2.2. 不常用:充电;闹钟&记事本&关机时间&整点报时提示;Icon&动画显示;Icon&动画刷新;编辑界面&pop显示框输入为空或满;编辑界面&pop显示框状态输入法默认&字符编码默认;失效SIM卡;大容量等SIM卡兼容;排序;号码识别;
二、 边界值分析
例子1:
短消息发送功能的等价类划分方法:.
三、 错误猜测法
例子1:
利用手机闹钟重响的例子引入错误猜测法基本概念,讲解错误猜测法的意义
未接来电29通,内存中规划的分区一直分配被占用。即使同一号码也同样占用资源。假设此时第30通电话正好为来电号码不显示,即“来电号码未知”或境外来电号码隐藏时(国外保护个人隐私,自动开启来电号码隐藏功能),可能会出现BUG,实际情况证明,此时会出现Reset问题。
C. 手机软件测试的基本流程
手机软件测试的基本流程:
1、需求分析阶段:阅读需求,理解需求,分析需求点,参与需求评审会议。
2、测试计划阶段:主要任务就是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围,进度安排,人力物力分配,整体测试策略的制定。
3、编写测试用例:适当的了解设计,搭建测试用例框架,根据需求和设计编写测试用例。
4、测试执行阶段:搭建环境准备数据,执行预测试然后进入正式测试(系统测试、回归测试、交叉测试、自由测试),bug管理直到测试结束。
5、输出测试报告:输出测试报告,确认是否可以上线。
(3)安卓手机软件测试用例扩展阅读
软件测试方法
1、动态测试
计算机动态测试的主要目的为检测软件运行中出现的问题,较静态测试方式相比,其被称为动态的原因即为其测试方式主要依赖程序的运用,主要为检测软件中动态行为是否缺失、软件运行效果是否良好。
2、黑盒测试
黑盒测试,顾名思义即为将软件测试环境模拟为不可见的“黑盒”。通过数据输入观察数据输出,检查软件内部功能是否正常。测试展开时,数据输入软件中,等待数据输出。数据输出时若与预计数据一致,则证明该软件通过测试。
3、白盒测试
白盒测试相对于黑盒测试而言具有一定透明性,原理为根据软件内部应用、源代码等对产品内部工作过程进行调试。
测试过程中常将其与软件内部结构协同展开分析,最大优点即为其能够有效解决软件内部应用程序出现的问题,测试过程中常将其与黑盒测试方式结合,当测试软件功能较多时,白盒测试法亦可对此类情况展开有效调试。
D. 请问自动化测试android和iphone手机软件的工具是什么功能测试和性能测试分别是什么
功能测试是最重要的测试内容,主要测试每个开发模块所要实现的功能是否能正常使用!性能测试是说,APP正常使用的基础上,使用起来的直观感受是否令人满意,比如启动快慢、流量耗用多少之类。
安卓的自动化测试方面,网络做的还不错,兼容测试、性能测试、功能测试都涵盖了的。最近推出了MTC录制回放客户端,用着感觉不错哦~是基于Eclipse开发环境的,能够按照开发者的操作自动生成基于控件的测试代码,都不用再自己写测试用例了,推荐你试试吧!!
E. 如何设计Android App测试用例
一般安卓开发者在其日常工作中面临的最大挑战之一是:终端设备和[url=]操作系统[/url]版本的范围太广。OpenSignal进行的一项研究表明,2013年7月市场上有超过11,828的不同安卓终端设备,所有设备在类型/大小/屏幕分辨率以及特定配置方面有所不同。考虑到前一年的调查仅记录有3,997款不同设备,这实在是一个越来越大的挑战障碍。
从一个移动APP开发角度出发,定义终端设备有四个基本特征:
1.操作系统:由“API指标”( 1 ~18 )专业定义的安卓操作系统版本( 1.1~ 4.3 ),。
2.显示器:屏幕主要是由屏幕分辨率(以像素为单位),屏幕像素密度( 以DPI为单位),和/或屏幕尺寸(以英寸为单位)定义的。
3.CPU:该“应用程序二进制接口” (ABI )定义CPU的指令集。这里的主要区别是ARM和基于Intel的CPU。
4.内存:一个设备包括内存储器( RAM)和Dalvik 虚拟存储器( VM堆)的预定义的堆内存。
这是前两个特点,操作系统和显示器,都需要特别注意,因为他们是直接由最终用户明显感受,且应该不断严格地被测试覆盖。至于安卓的版本, 2013年7月市场上有八个同时运行导致不可避免的碎片的不同版本。七月,近90%这些设备中的34.1 %正在运行Gingerbread版本( 2.3.3-2.3.7 ),32.3 %正在运行Jelly Bean( 4.1.x版),23.3 %正在运行Ice Cream Sandwich( 4.0.3 - 4.0.4 )。
考虑设备显示器,一项TechCrunch从2013年4月进行的研究显示,绝大多数(79.9%)有效设备正在使用尺寸为3和4.5英寸的“正常”屏幕。这些设备的屏幕密度在“MDPI”(~160 DPI),“hdpi”(~240 DPI)和“xhdpi”(~320 DPI)之间变化。也有例外, 一种只占9.5%的设备屏幕密度低“hdpi”(~120 DPI)且屏幕小。
如果这种多样性在质量保证过程中被忽略了,那么绝对可以预见:bugs会潜入应用程序,然后是bug报告的风暴,最后Google Play Store中出现负面用户评论。因此,目前的问题是:你怎么使用合理水平的测试工作切实解决这一挑战?定义测试用例及一个伴随测试过程是一个应付这一挑战的有效武器。
用例—“在哪测试”、“测试什么”、“怎么测试”、“何时测试”?
“在哪测试”
为了节省你测试工作上所花的昂贵时间,我们建议首先要减少之前所提到的32个安卓版本组合及代表市场上在用的领先设备屏的5-10个版本的显示屏。选择参考设备时,你应该确保覆盖了足够广范围的版本和屏幕类型。作为参考,您可以使用OpenSignal的调查或使用手机检测的信息图[3],来帮助选择使用最广的设备。
为了满足好奇心,可以从安卓文件[5]将屏幕的尺寸和分辨率映射到上面数据的密度(“ldpi”,“mdpi”等)及分辨率(“小的”,“标准的”,等等)上。
有了2013手机检测研究的帮助,很容易就找到了代表性的一系列设备。有一件有趣的琐事:30%印度安卓用户的设备分辨率很低只有240×320像素,如上面列表中看到的,三星Galaxy Y S5360也在其中。另外,480×800分辨率像素现在最常用(上表中三星Galaxy S II中可见)。
“测试什么”
移动APP必须提供最佳用户体验,以及在不同尺寸和分辨率(关键字“响应式设计”)的各种智能手机和平板电脑上被正确显示(UI测试)。与此同时,apps必须是功能性的和兼容的(兼容性测试),有尽可能多的设备规格(内存,CPU,传感器等)。加上先前获得的“直接”碎片化问题(关于安卓的版本和屏幕的特性), “环境相关的”碎片化有着举足轻重的作用。这种作用涉及到多种不同的情况或环境,其中用户正在自己的环境中使用的终端设备。作为一个例子,如果网络连接不稳定,来电中断,屏幕锁定等情况出现,你应该慎重考虑压力测试[4]和探索性测试以确保完美无错。
有必要提前准备覆盖app最常用功能的所有可能的测试场景。早期bug检测和源代码中的简单修改,只能通过不断的测试才能实现。
“怎么测试”
将这种广泛的多样性考虑在内的一种务实方法是, 安卓模拟器 - 提供了一个可调节的工具,该工具几乎可以模仿标准PC上安卓的终端用户设备。简而言之,安卓模拟器是QA流程中用各种设备配置(兼容性测试)进行连续回归测试(用户界面,单元和集成测试)的理想工具。探索性测试中,模拟器可以被配置到一个范围广泛的不同场景中。例如,模拟器可以用一种能模拟连接速度或质量中变化的方式来设定。然而,真实设备上的QA是不可缺少的。实践中,用作参考的虚拟设备依然可以在一些小的(但对于某些应用程序来说非常重要)方面有所不同,比如安卓操作系统中没有提供程序特定的调整或不支持耳机和蓝牙。真实硬件上的性能在评价过程中发挥了自身的显着作用,它还应该在考虑了触摸硬件支持和设备物理形式等方面的所有可能终端设备上进行测试(可用性测试)。
“何时测试”
既然我们已经定义了在哪里(参考设备)测试 ,测试什么(测试场景),以及如何( 安卓模拟器和真实设备)测试,简述一个过程并确定何时执行哪一个测试场景就至关重要了。因此,我们建议下面的两级流程:
1 .用虚拟设备进行的回归测试。
这包括虚拟参考设备上用来在早期识别出基本错误的连续自动化回归测试。这里的理念是快速地、成本高效地识别bugs。
2 .用真实设备进行的验收测试。
这涉及到:“策划推广”期间将之发布到Google Play Store前在真实设备上的密集测试(主要是手动测试),(例如,Google Play[ 5 ]中的 alpha和beta测试组) 。
在第一阶段,测试自动化极大地有助于以经济实惠的方式实现这一策略。在这一阶段,只有能轻易被自动化(即可以每日执行)的测试用例才能包含在内。
在一个app的持续开发过程中,这种自动化测试为开发人员和测试人员提供了一个安全网。日常测试运行确保了核心功能正常工作,app的整体稳定性和质量由测试数据透明地反映出来,认证回归可以轻易地与最近的变化关联。这种测试可以很轻易地被设计并使用SaaS解决方案(如云中的TestObject的UI移动app测试)从测试人员电脑上被记录下来。
当且仅当这个阶段已被成功执行了,这个过程才会在第二阶段继续劳动密集测试。这里的想法是:如果核心功能通过自动测试就只投入测试资源,使测试人员能够专注于先进场景。这个阶段可能包括测试用例,例如性能测试,可用性测试,或兼容性测试。这两种方法相结合产生了一个强大的移动apps质量保证策略[ 7 ] 。
结论 - 做对测试
用正确的方式使用,测试可以在对抗零散的安卓的斗争中成为一个有力的工具。一个有效的测试策略的关键之处在于定义手头app的定制测试用例,并定义一个简化测试的工作流程或过程。测试一个移动app是一个重大的挑战,但它可以用一个结构化的方法和正确的工具集合以及专业知识被有效解决掉。
F. APP测试的测试用例怎么写
手机app测试主要有以下: 1.安全测试 1)软件权限 -扣费风险
G. 如何制作移动app测试方案及详细流程
1.首先是测试 资源确认及准备
(1)产品需求文档,产品原型图 ,接口说明文档及设计文档应该齐全
(2)测试设备及测试工具 的准备:IOS和Android的不同年版本的真机,以及测试相关工具的准备
2.测试用例的设计及评审
(1)根据产品需求文档,产品原型图等文档,设计客户端的一般功能测试用例
(2)测试用例评审,修改与完善,评审过后着手进入正式测试阶段
3. UI测试
(1)确保手头的原型图与效果图为当前最新版本,符合产品经理及用户需求
(2)测试过程一切以效果图为准,若用户体验方面有建议,先以邮件的形式 与产品经理确认,确认通过后,可以正式的发出用户体验方面的问题
4.功能测试
(1)APP功能测试主要依据编写的功能 测试用例进行软件功能的遍历
(2)涉及的测试主要包括基本功能测试,安装,卸载,运行测试 ,异常处理(包括网络 突然中断或者网速 过慢,机器内存不足等异常情况的处理 )
5.中断测试
(1)软件运行 过程中接电话,收短信,锁屏,闹铃,充电,收到通知提醒后在 使用软件,软件任可以 正常运行
(2)运行软件时由前台切换到后台,再切换回前台 仍能继续运行
6.兼容性及适配器测试
(1)硬件的适配 :不同手机 厂商,硬件 性能,不同屏幕大小的适配
(2)OS版本的兼容
(3)不同屏幕分辨率的适配:移动端设备的屏幕分辨率多种多样 ,如果 app没有做合适的处理可能会显示不好,甚至影响功能的操作
(4)兼容性测试必须放在 一定数量的真机上运行 ,由于真机类型较多,兼容性测试 的时候可以选取典型的几种运用较多的真机进行兼容性测试
7.性能测试
(1)客户端性能测试注重安装卸载时间,启动时间,页面加载时间,主要功能占用的床铺,内存,流量,耗电量 等,以及与同类产品相比较是否具有优势
(2)至于服务器端的性能,主要利用接口对服务器进行加压,重点关注相应时间,吞吐量,并发数,事务通过率等
8.稳定性测试
(1)安卓app的稳定性常常使用 monkey进行测试,通过随机事件流模拟个人操作,对检查程序的内存溢出,空指针有很大的作用
9.检测分析及测试报告输出
以上各种形式的APP测试结束后,应该形成完整的分析及报告文档,输出给相关人员
TestBird
H. APP测试从用例层面开始如何能够将整个过程进行地更加高效全面
在测试行业已经多年了,你的那些问题对于新人来说的确经常发生的。无非就是提高测试效率,积累测试经验上面。
在测试上为了避免遗漏,你需要形成一个体系式的流程,功能遍历。比如说安卓的测试,在设计用例的时候要特别注意以下几个方面:APP覆盖安装、网络切换、分辨率的适配、安卓手机自带的物理键、被其他程序控制、记录多时,上下滑动。
还比如:用两个手指同时点击并列的Banner广告,Android会同时请求两个广告的数据,属于跨view交互了。现在的手机都装有微博客户端,一些应用授权时直接用微博客户端授权登录,忽略了用网页微博授权登录。Android App应用中,如果有下拉选项的操作,双击下拉选或快速点击选项,会有意想不到的结果,之前我们的应用出现过两次直接导致应用Crash。图片处理过的地方,是否容易出现程序崩溃,主要是图片压缩机制的问题。
另外,测试工具的选择可以很大的提高测试效率。我们团队一直在用TestBird的自动化测试,不管在成本节约和效率提升上面都感觉不错。也用过TestBird的兼容性测试,感觉他们的专业程度不错。