手机app测试杂谈

news2024/7/4 15:50:15

         

        手机上的 app 分为基于 HTML5 的 app(类似于 pc 上的 b/S 应用)和本地 app(类似于 C/S 结构)。

        所以测试上我们也可以充分吸收 web 的 b/s 和 c/s 测试经验。但是不同于 pc 上的应用 测试,手机上的测试有其独特性

        测试前的思考:我们这个产品主要是做什么的?为什么我要做这个产品?市场上有那些 同类型的产品?

        测试前的准备:1.使用同类型的产品,不仅仅是使用,应该是测试同类型的产品。2.熟 悉我们产品的 spec 文档,积极和 pm 交流。3,写测试用例,没有时间至少要有一个 checklist。

        1.功能

        a.基本功能,主要指 app 是否完成了设计的所有功能。分清模块,写一份 checklist,避 免漏测。考虑横竖屏切换,不过很多 app 现在只支持竖屏。

        b.系统交互:电话短信干扰,低电量提醒,push 提醒,usb 数据线插拔提醒,充电提醒等,

        2.性能:稳定性,兼用型(android 碎片化是个难题,bug 也多,ios 相对 bug 少),app 运 行的内存消耗和 cpu 消耗,app 后台长时间运行的耗流量,耗电量。

        3.易用性:面是否吸引人、容易理解。界面整洁、简单。无错别字。点击范围确定等。 这部分测试中,如果测试认为有不合理的地方通常会提交需求 bug。

        4.外场:网络切换,网络信号强,弱下的 app 运行情况。
        对自动化的一些看法:

        目前我们可以接触到手机方面的自动化工具:robotium,monkey,monkeyrunner,

androidjunit。但是由于 ui 变化快,自动化测试往往不方便维护。前三个不需要源码支持, 但是功能有限,androidjunit 很强大,对代码能力要求高,同时需要源码支持。app 的开发周 期一般都很短,ui 变化大,用自动化要考虑投入成本,大多数的公司估计都不适用。不过测 接口之类的通过自动化是个不错的选择。

        转,说得多有道理的。

        1.移动互联网开发节奏很快,版本快速迭代,如何让测试敏捷起来? Monkey:我建议放弃完全得 Test Case。全部用 feature list 或者测试思维导图或者功能

点划分表来进行引导得测试。主要目的不会漏掉功能点以及防止 regression 得 bug。其次要 敏捷必须要有自动化得支持。关于这点就是根据不同得 app 进行定义了。首先 UT 无论如何 就要做起来。其次是 api 和 regression test 得自动化要做起来。当然 CI 也一定要搭建的。

        2.移动应用测试,如何更全面的保证产品质量?如何让用户参与到测试中来?

Monkey:更全面得保证产品质量。如果要说到全面,那么必须就是功能,压力,性能, 安全,用户体验面面具到了。其实还是和我第一个问题说得一样。将 app 结合 os 得特性分 层进行逐个得测试或者自动化测试。关于让用户参与到测试中来的话。我建议可以将不同的 用户集合起来,qq 或者 weixin 保持联系。然后 android 可以定期发布内测版本,ios 可以发 布 testflight 版本。

        3.用户反馈问题建议非常多,如何做好有效管理、分析和反馈?

Monkey:这个我相信无论哪家公司都会碰见。用户的反馈不一定都是有效的。管理的 话,我建议还是需要安排一个专门的人进行记录。将反馈全部作为 bug 的一种,随后填入 bug 系统方便跟踪。其次关于 crash 或者无法重现的问题。就需要自己在软件中增加自动反 馈 crash log 的机制。包括用第三方的友盟等也可以。随后再定期的进行 log 的分析。这些其 实都不难,主要就是需要坚持,一直去做。

        4.竞争产品很多,测试如何做竞品分析?

        Monkey:这个其实我并不是很在行。不过我觉得分析的话。主要有几点。其一,核心功
能的体验。也就是说核心功能路径长短。比如 A 用了 3 步完成 B 用了 4 步完成的功能,那
么 A 明显有优势。其二,核心功能的交互,包括用户的学习成本。其三,场景分析,比如我
们可以设计 N 个场景,在这 N 个场景中我们自己的产品和竞争对手的产品,用户会做什么
选择。其实往往我们一设计之后就发现,有些功能用户根本无法理解,或者根本不用去做。
自然也就没有意义。当然分析还有很多,包括下载量,点击数,评论等等。都可以观察。
        app 的测试方式我在我自己的书中会有写。这里我简单介绍以下。不过首先需要肯定是
不是拿到手就可以测的。更多的是需要了解
        a.产品功能 feature list 需要熟悉
        b.需要产品所在的系统的架构
        c.需要熟悉产品本身的结构,本身的逻辑,包括 cs 结构,生命周期,api 等
        d.根据 abc 来设计测试点,测试点可以是思维导图或者别的。但是并不需要去编写很
详细的测试用例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/670104.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

03. 青龙面板配置B站快速升级任务天选时刻脚本(保姆级图文)

目录 功能介绍与环境要求1. 修改配置文件拉取.sh脚本2. 拉取库脚本3. 安装 dotnet 环境4.1 扫码登录方式4.2 b站cookie方式登录(如果你扫码成功了就不用看这个了)获取cookie新建cookie的环境变量 5. 配置任务设置变量6. 运行每日任务测试一下总结 欢迎关…

搭建cloud项目以及各个依赖和配置说明

文章目录 背景步骤配置父pom文件spring-cloud和spring-cloud-alibaba的区别 添加网关模块配置网关的application.yml文件网关入口 普通模块普通模块的配置文件:普通模块的pom文件启动类:application.yml文件和bootstrap.yml文件的区别 总结 背景 最近在…

chatgpt赋能python:Python描述符:更加灵活的属性管理方式

Python描述符:更加灵活的属性管理方式 Python是一种高级编程语言,它的简单易用、高效性和灵活性使得它成为了现代企业和开发者的首选开发语言之一。然而,在使用Python编写代码时,很多时候需要对属性进行访问和修改,而…

C++单目运算符和特殊运算符的重载(9)

运算符的重载 原理和机制 C中运算符只支持基本数据类型运算,如果需要运算符支持类类型的运算,需要使用C提供的新语法 ------- 运算符的重载 运算符的重载本质上是通过函数来实现的,将类类型数据的运算过程写成一个特殊的函数,当…

YOLOv8 图像分割

一、背景 二、环境配置 官网:Previous PyTorch Versions | PyTorch cuda 11.7 pytorch 1.13.0 torchvision 0.14.0 pytorch-cuda 11.7 三、安装yolov8 官网:GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX &…

Mendix 10 树形组件分析及应用

一、前言 产品研发目标是服务于业务,解决具体业务问题,带来业务价值。 因此,任何产品功能的推出,都应该秉承“从实践中来,到实践中去”的原则,在实战中发现问题,通过新功能设计和功能改进解决…

chatgpt科普

引言 chatgpt没有国内开放,为什么如此重要。抛开技术细节,少用专业名词,在整体功能上讲解 ChatGPT 的工作原理、制造过程、涌现的能力、未来的影响以及如何应对。让大家明白: ChatGPT是如何回答问题的。 它是怎么被制造的&…

Go语言实现单链表

博主最近在学习Go语言,所以打算更新一期Go语言版本的数据结构。这篇文章将的是Go语言如何实现单链表。 文章目录 前言一、个人见解,为什么学GO?二、Go语言实现单链表1.创建节点2.通过数组创建一个单链表3.遍历单链表4.单链表插入操作4.1 伪代…

HOOPS Visualize SDK 2023 Crack

桌面和移动工程应用程序的图形引擎 HOOPS Visualize 是 3D 图形 SDK,支持来自市场领导者 Hexagon、Trimble、Ansys、SOLIDWORKS、™ Autodesk 等的数百个工程应用程序。 用于 3D CAD 渲染的图形 SDK HOOPS Visualize 是一个以工程为中心的高性能图形库&#xff0c…

安卓蓝牙ATT协议介绍

介绍 ATT,Attribute Protocol,用于发现、读、写对端设备的协议(针对BLE设备) ATT允许蓝牙远程设备(比如遥控器)作为服务端提供拥有关联值的属性集,让作为客户端的设备(比如手机、电视)来发现、…

通用能力及AI核心能力表现优异!合合信息智能文档处理系统(IDP)高评级通过中国信通院评估

数字经济快速发展的背后,全球数据总量呈现出爆发式增长趋势。智能文档处理(IDP)技术能够高效地从多格式文档中捕捉、提取和处理数据,帮助机构和企业大幅提升文档处理效率,节约时间和人力成本。近期,合合信息…

C语言进阶--字符函数与内存函数

目录 一.字符函数 1.strlen函数 模拟实现strlen 2.strcpy函数 模拟实现strcpy 3.strcat函数 模拟实现strcat strcat能否用于自己追加自己? 4.strcmp函数 模拟实现strcmp 5.strncpy函数 6.strncat函数 7.strncmp函数 模拟实现strncmp 8.strstr函数 模…

哨兵2号数据下载与利用Python处理(波段融合、降采样、可视化、裁剪等)

简单介绍 网址:https://scihub.copernicus.eu/dhus/#/home 哨兵2号(Sentinel-2)是欧洲空间局(European Space Agency,简称ESA)推出的一组遥感卫星,旨在为地球观测和环境监测提供高质量的光学图像数据。 S2MSI2A是哨兵2号卫星的一种传感器。 S2MSI2A是哨兵2号卫星搭载…

huggingface - PEFT.参数效率微调

GitHub - huggingface/peft: 🤗 PEFT: State-of-the-art Parameter-Efficient Fine-Tuning. 最先进的参数高效微调 (PEFT) 方法 Parameter-Efficient Fine-Tuning (PEFT) 方法可以使预训练语言模型 (PLM) 高效适应各种下游应用程序,而无需微调模型的所有…

记录--Vue3 封装 ECharts 通用组件

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 按需导入的配置文件 配置文件这里就不再赘述,内容都是一样的,主打一个随用随取,按需导入。 import * as echarts from "echarts/core"; // 引入用到的图表…

ctfshow web入门 php特性 web93-97

1.web93 intval($num,0),0代表根据变量类型进行使用哪一种进制进行取整 可以使用8进制,正负数,小数点 payload: 010574 4476.0 4476.0 2.web94 过滤了0,不能使用8进制了,还可以使用小数点,正负数等 payload&#xff1…

【Java算法题】剑指offer_算法之02动态规划

对于动态规划问题,我将拆解为如下五步曲,这五步都搞清楚了,才能说把动态规划真的掌握了! 确定dp数组(dp table)以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序举例推导dp数组 JZ42 连续子数组的…

CTFshow-pwn入门-栈溢出pwn35-pwn36

pwn35 首先还是先下载pwn文件拖进虚拟机加上可执行权限,使用checksec命令查看文件的信息。 chmod x pwn checksec pwn32位的我们直接拖进ida中反编译: // main int __cdecl main(int argc, const char **argv, const char **envp) {FILE *stream; // […

阿里云 OSS介绍

1、什么是阿里云 OSS? OSS 为 Object Storage Service,即对象存储服务。是阿里云提供的海量、安全、低成本、高可靠的云存储服务。 OSS 具有与平台无关的 RESTful API 接口,可以在任意应用、任意时间、任意地点 存储与访问 任何类型的数据。…

软考:软件工程:软件可行性分析,需求分析,ER实体图,数据流图,状态转换图,数据字典

软考:软件工程: 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的 (1&#…