一文1000字彻底搞懂Web测试与App测试的区别

总结分享一些项目需要结合Web测试和App测试的工作经验给大家:

从功能测试区分,Web测试与App测试在测试用例设计和测试流程上没什么区别。

而两者的主要区别体现在如下几个方面:

1 系统结构方面

Web项目,B/S架构,基于浏览器的;Web测试过程中,客户端会随服务器端同步更新,所以只需更新服务器端即可

App项目,C/S架构,基于客户端的;App测试过程中,只要修改了服务端,那么客户端用户所有核心版本都需要进行回归测试1次

2 性能方面

Web项目,需要监测响应时间、CPU、Memory,另外则还需系统能支持多少用户同时在线;超过最大用户数,系统会给出什么样的反映

App项目,需要监测响应时间、CPU、Memory,另外则还需监测流量、电量等

3 兼容方面

Web项目

首先,考虑操作系统兼容(Windows7、Windows10、Linux等);其次,考虑浏览器兼容(IE6、IE8、Firefox、Chrome、360等)

App项目

首先,考虑设备系统兼容(Android【华为、联想、小米、三星等】、 iOS【ipad、iphone】、Windows【Win7、Win8】、OSX【Mac】);其次,考虑手机设备的大小、型号、分辨率的兼容

4 测试工具方面

Web测试,自动化工具通常使用Selenium,性能测试工具通常使用LoadRunner / JMeter

App测试,自动化工具通常使用Appium / Monkey,性能测试工具通常使用JMeter

5 专项测试方面

Web专项测试

链接测试

主要是保证链接的可用性和正确性,考虑链接的页面是否存在?是否按指示链接到了相应链接的页面?是否存在空白页面等

图形测试

首先,确保图形有明确用途,图片或动画不要过于紧凑,以免浪费传输时间;其次,验证文字回绕是否正确

打印机测试

考虑网页打印是否正常(显示的图片和文本的对齐方式可能与打印出来的东西不一样,是否完整打印)

App专项测试

安装、更新、卸载

安装:需考虑安装时的中断、弱网以及安装后删除安装文件等情况

更新:分强制更新、非强制更新、增量包更新、断点续传、弱网状态下更新等几种情况

卸载:需考虑卸载后App相关文件是否删除干净

权限测试

设置某个App是否可以获取该权限,比如是否可访问短信、读取联系人、相册、照相机、位置信息等

安全测试

安装包是否可反编译代码、安装包是否签名、权限设置

边界测试

可用存储空间少、飞行模式、系统时间有误、第三方登录(QQ、微信、微博登录)以及没有SD卡/双SD卡等

界面操作

关于手机端测试,需注意横竖屏切换、多点触控、手势、事件触发区、前后台的切换(从后台回到App,检查是否停留在上次操作界面、功能和应用状态是否一样)等

干扰测试

电话响应(接通、呼叫挂断、呼叫保持)、收发短信、中断(插拔数据线、手机锁屏、闹钟、蓝牙等)、电量不足、关机、重启、死机等

网络测试

首先,弱网络测试(模拟2G、3G、4G、WiFi网络状态以及丢包情况,重点要考虑回退和刷新是否会造成二次提交);其次,网络切换测试(网络断开后重连、3G切换到4G/WiFi等)

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

免费领取软件测试+自动化测试全套资料+软件测试面试宝典+面试刷题工具+简历模板

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!     

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

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

相关文章

冒泡排序(适合编程新手的体质)

冒泡排序:简单而高效的排序技巧 欢迎来到我们今天的博客,我们将一起探索计算机科学中最基本但同时也非常重要的概念之一:冒泡排序。无论你是编程新手还是有一些编程经验的读者,这篇博客都将帮助你更好地理解冒泡排序的原理和应用…

Android中实现RecyclerView,并对item及其多个子控件的点击事件监听

目录 背景 实现RecyclerView 第一步、 新建item的xml 第二步、在activity的布局中引入 RecyclerView 第三步、新建一个adapter 第四步、在activity中初始化绑定adapter即可 实现item及其多个子组件点击事件监听 第一步、 适配器中创建监听对象 第二步、适配器中绑定监听…

uniapp ios 授权弹窗 uniapp弹出框怎么实现

新版本的信息弹窗组件 可以弹出很多条信息,并单独控制消失时间、点击消失。 用循环来生成很多个弹窗,用this.$refs来传值,并添加数组。 1.布局 2.js 具体流程。需要一个弹窗,基本信息传入组件,处理后添加入数组&am…

Linux unset命令详解:如何删除已定义的 shell 变量(包括环境变量)和 shell 函数(附实例教程和注意事项)

Linux unset命令介绍 unset是一个内建于Linux的命令,用于在程序执行过程中删除变量(包括环境变量)或函数。unset命令可以删除函数和shell变量。如果指定了"varName",它将指向一个变量名,shell将取消设置它并…

智能优化算法应用:基于闪电搜索算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于闪电搜索算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于闪电搜索算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.闪电搜索算法4.实验参数设定5.算法结果6.参考…

【C++】异常处理 ① ( 异常概念引入 | 抛出异常语法 | 捕获异常语法 | 异常捕获流程 | 异常处理代码示例 )

文章目录 一、异常处理1、异常概念引入2、抛出异常语法3、捕获异常语法4、异常捕获流程 二、异常处理代码示例1、错误代码示例 - 抛出异常 / 不捕获异常2、正确代码示例 - 抛出异常 / 捕获异常3、正确代码示例 - 抛出异常 / 捕获异常不处理继续抛出异常 一、异常处理 1、异常概…

Java面向对象第8天

精华笔记: 接口: 是一种引用数据类型 由interface定义 只能包含常量和抽象方法 不能被实例化 接口是需要被实现/继承的,实现类/派生类:必须重写接口中的所有抽象方法 一个类可以实现多个接口,用逗号分隔。若又继承…

接口测试入门8问(含答案+文档)

Q1:什么是接口测试,基础知识什么的讲讲吧! A:你好,接口可以分下面几种 1、系统与系统之间的调用,比如银行会提供接口供电子商务网站调用,或者说,支付宝会提供接口给淘宝调用 2、上…

Table和HashBasedTable的使用案例

------------------- 1.普通使用 package org.example.testhashbasedtable;import com.google.common.collect.HashBasedTable; import com.google.common.collect.Table;import java.util.Map;public class TestHashBasedTable {public static void main(String[] args) {Ta…

【方法】PowerPoint如何删除“限制编辑”?

如果PPT文件设置成“只读模式”,就会被限制编辑,也就是无法对PPT进行编辑或更改,那要如何删除这个“限制”呢? 下面小编会按照“无密码的只读方式”、“有密码的只读方式”以及“忘记了密码的只读方式”这3种情况,来说…

enote笔记法之附录2——5w1h2k关联词(ver0.22)

enote笔记法之附录2——5w1h2k关联词(ver0.22) 最上面的是截屏的完整版,分割线下面的是纯文字版本: 作者姓名(本人的真实姓名):胡佳吉 居住地:上海 作者网名:EverSt…

【从删库到跑路 | MySQL总结篇】表的增删查改(进阶下)

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【MySQL学习专栏】🎈 本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌 目录 一、联合…

【接口技术】实验3:可编程并行接口8255

实验3 可编程并行接口8255实验 一、实验目的 1:了解8255芯片结构及编程方法。 2:了解8255输入/输出实验方法。 3:掌握8255控制键盘及显示电路的基本功能及编程方法。 4:掌握一般键盘和显示电路的工作原理。 二、实验内容 1&…

WS2812灯条基于WLED开源项目无门槛使用简介

WS2812灯条基于WLED开源项目无门槛使用简介 📌项目github地址:https://github.com/Aircoookie/WLED📍WLED详情地址:https://kno.wled.ge/🎈网页在线烧录固件地址:https://install.wled.me/ ✨ 仅作为使用的…

linux查询某个进程使用的内存量

linux查询某个进程使用的内存量 查进程用的内存,查看进程占用的内存量,centos查询内存使用 查某个进程id使用的内存量 ps -p 24450 -o rss | awk {print int($1/1024)"MB"} 该命令的含义是: ps -p 24450: 查找进程ID为24450的进…

Nginx漏洞复现与分析

Nginx如何处理PHP请求 Nginx本身不支持直接解析和执行PHP代码,但可以通过与PHP解释器的集成来处理PHP请求。一种常见的方法是使用PHP-FPM(FastCGI Process Manager)作为PHP解释器。 原理图: Step 1 Step 2 +---------------------+ …

安全技术与防火墙

目录 一、安全技术 1、安全技术 2、防火墙的分类 二、netfilter 1、netfilter简述 2、防火墙工具 1.iptables工具 2.netfilter的四表五链 3.内核中数据包的传输过程 4.三种报文流向 5.实操 总结:本章主要介绍了安全技术与防火墙 一、安全技术 1、安全技…

天拓四方分享:危化品企业如何搭建安全生产风险预警防控平台?

危化品企业作为高风险行业,其安全生产问题一直备受关注。为了有效预防和控制危化品企业在生产过程中可能出现的安全风险,提高企业的安全性和稳定性,搭建一套有效的安全生产风险预警防控平台势在必行,通过平台实现危化品生产、储存…

【C 语言经典100例】C 练习实例1

题目&#xff1a;有 1、2、3、4 四个数字&#xff0c;能组成多少个互不相同且无重复数字的三位数&#xff1f;都是多少&#xff1f; 程序分析&#xff1a;可填在百位、十位、个位的数字都是 1、2、3、4&#xff0c;组成所有的排列后再去掉不满足条件的排列。 #include<std…

解决Unable to preventDefault inside passive event listener invocation.报错

报错信息&#xff1a; 这个报错大致说的是&#xff1a;无法在被动事件侦听器调用中防止Default 查了其他博主的解决办法&#xff1a;比如&#xff1a; 1、声明事件监听的时候设置为主动事件监听&#xff1a; window.addEventListener(‘touchmove’, handler, { passive: fal…