专栏文章 软件测试技能 - 移动端测试篇

小文 · 2019年06月13日 · 最后由 MonGol 回复于 2021年10月26日 · 2643 次阅读

移动端测试 (Android、iOS) 从开发语言来说 iOS 使用Objective-C/Swift语言、Android 为Java由于机制不同,建议大家看下移动测试 iOS、和 Android 的生命周期,个人认为当你对被测系统机制有了解后,测试时会更知道如何开展,在这里不做太多介绍,后续再给大家分享。

从测试角度来看,移动端测试主要从以下几点开展:(下面会一一举几个例子)

用户界面测试:

用户界面一般会对照需求设计图进行风格、样式、颜色、文字、控件位置的对比测试,如颜色是否一致,知否有排版错误、中英文文案是否正确等。

用户体验测试:

俗称易用性测试,软件设计是否符合用户的基本操作使用,如用户界面是否布局合理,主要功能是否易于查找和方便使用,消息文案提示是否容易理解等。

功能测试:

这里说的大多数指黑盒测试,就是在测试中,把被测程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构(代码)的情况下,进行测试,它只检查程序功能是否按照需求文档的要求。常用测试方法为等价类划分法、边界值分析法、场景法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。

性能测试:

接口性能(Jemeter、ab、Loadrunner 等)、CPU(Traceview、Adb Top)、内存(内存泄漏、内存占用 Android Studio-Memory Monitor、Android-ddms、MAT、ddms、adb meminfo)、启动时间(Adb am strat 、录制视频、代码打点加 Log)、访问速度、流量、耗电(三方工具或性能数据也可以调用底层 api 自己写工具监控)、iOS Xcode-instrument 工具。

客户端稳定性:

泛指长时间运行,通过随机或固定操作,观察被测程序不会 Anr、崩溃退出、内存溢出等现象,要保证程序长时间稳定可用。一般常用测试工具如 Monkey,自动遍历工具 AppCrawler,UI 自动化工具。(自动化工具结合功能测试时使用)

安装卸载:(版本升级)

验证 App 是否能正确安装、运行、卸载以及操作过程和操作前后对系统资源的使用情况。

新版本覆盖旧版本。

网络测试:

wifi/2G/3G/4G/5G 网络的切换;

断网;

飞行模式;

弱网测试;

异常测试:

如空间满时软件是否正常使用或保存时能否给出相应提示。

反复操作某个功能,不断点击和刷新,是否会出现闪退;

操作一个页面 Home 或退出再进入;

手机关机锁屏;接入来电;短信,微信,或其他消息等中断操作;

适配测试:

分为系统版本(Android、iOS 系统版本)、分辨率测试(主流分辨率、高、低)、机型测试(国内、海外主流机型),可根据实际软件用户占比进行调整。

安全测试:

代码静态扫描(Scan-Build、Infer、Findbugs 等)、数据安全如重要数据是否加密、传输协议是否安全,权限、支付安全、防盗链等。

数据测试:

对接口数据、数据库、数据准确和数据异常的模拟测试。(最常用工具 Charles、Fiddler、Sqlite、Mysql、Mock、Wireshark)

推送测试:

推送文案及展示样式、点击跳转的测试、开机、关机、锁屏多场景的推送测试。

自动化测试:

XCUITesting、Kif、Instrumentation、Appium、Robotium、UIautomator 等。

单元测试:

XCTest、Junit、robolectric、Instrumentation 等

相关的性能指标可以拿竞品做对比,或和上一版本对比、可以结合自动化测试使用出测试报告。

以上,希望今天的内容,给你灵感和启发。码字不易,欢迎点击【关注】。

声明:上述观点为个人经验总结和观察,如有不对的地方请随时指正或留言交流,微信公众号:软件测试之路 小文讲测试。

作者:小文(一个即将从业 10 年的软件测试行业工作者)

共收到 3 条回复 时间 点赞

let do it

赞👍🏻

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册