超实用的Web兼容性测试经验总结,建议Mark

news2024/12/25 2:18:08

在日常工作中,我们经常碰到网页不兼容的问题。我们之所以要做兼容性测试,目的在于保证待测试项目在不同的操作系统平台上正常运行。

主要包括待测试项目能在同一操作系统平台的不同版本上正常运行;待测试项目能与相关的其他软件或系统的“和平共处”;待测试项目能在指定的硬件环境中正常运行;待测试项目能在不同的网络环境中正常运行。

虽然兼容性测试无法做到完全的质量保证,但对于一个项目来讲,兼容性测试是必不可少的一个步骤。今天,我们就来逐一探讨这几个兼容性问题的测试方法和一些注意事项。

Web兼容性测试的主要类型:Web兼容性测试主要是针对不同的操作系统平台,浏览器,以及分辨率进行的测试。

01 操作系统兼容性

市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。

这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。

因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。

常见的操作系统有Windows,Unix,Linux等,对于普通用户来讲,最常用的是Windows操作系统。Windows操作系统包括 Windows XP,windows 2003,vista,Win2000/NT,Windows9x等等。

用户使用操作系统的类型,直接决定了我们操作系统平台兼容性测试的操作系统平台数量,进行操作系统平台的兼容性测试的主要目的就是保证我们的待测试项目在该操作系统平台下能正常运行。

对于一些特殊项目(比如定制项目),可以指定某一类型的操作系统版本,这些都应该在需求规格说明书中指明,针对这些指明的操作系统版本必须进行兼容性测试。

大部分的其他项目,是不指定操作系统版本的,针对这样的项目,我们应当针对当前的主流操作系统版本进行兼容性测试,在确保主流操作系统版本兼容性测试的前提下在对非主流操作系统版本进行测试,尽量保证项目的操作系统版本的兼容性测试的完整性。

02 浏览器兼容性

浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java,、javascript、ActiveX、plug-ins或不同的HTML规格有不同的支持。

例如,ActiveX是Microsoft的产品,是为Internet Explorer而设计的,javascript是Netscape的产品,Java是Sun的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和Java的设置也不一样。

测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。

浏览器是Web系统中对核心的组成构件,来自不同厂家的浏览器对Javascrīpt、 ActiveX或不同的HTML规格有不同的支持,即使是同一厂家的浏览器,也存在不同的版本的问题。不同的浏览器对安全性和JAVA的设置也不一样。

目前最为常用的浏览器为:

(1)IE内核常见的浏览器有:IE6、IE7、IE8、IE9、IE10、IE11、360安全浏览器(兼容模式)、360极速浏览器(兼容模式)、搜狗浏览器(兼容模式)、QQ浏览器等等;

(2)Firefox内核常见的浏览器即火狐浏览器(Firefox);

(3)Chrome内核常见的浏览器有:Chrome、360安全浏览器(极速模式)、360极速浏览器(极速模式)、搜狗浏览器(高速模式)。

对于一些特殊项目(比如定制项目),可以指定某一类型的浏览器(包括版本),这些都必须在需求规格说明书中指明。针对这些主流的浏览器必须进行兼容性测试。

但大部分的项目,是不能指定浏览器的,针对这样的项目,那么我们必须针对当前的主流浏览器(含版本),在确保主流浏览器的兼容性测试通过的前提下,再对非主流浏览器(含版本)进行测试,尽量保证项目的浏览器的兼容性测试的完整性。

03 分辨率兼容性

分辨率的测试是为了页面版式在不同的分辨率模式下能正常显示,字体符合要求而进行的测试。

用户使用什么模式的分辨率,对于我们来讲是未知的。通常情况下,在我们的需求规格说明书中会建议某些分辨率。对于测试来讲,必须针对需求规格说明书中建议的分辨率进行专门的测试。

现在常见的分辨率是1024×768,800×600。对于需求规格说明书中规定的分辨率,测试必须保证测试通过,但对于其他分辨率,原则上也应该尽量保证,但由于这个在需求规格说明书中没有加以约束,所以在一定程度上,开发往往会拒绝进行调整。

对于需求规格说明书中没有规定分辨率的项目,测试应该在完成主流分辨率的兼容性测试的前提下,尽可能进行一些非主流分辨率的兼容性测试,在一定程度上保证大部分。

04 网速测试

待测项目在不同的网络环境中能正常的运行测试,可以通过Fiddler、360插件等软件进行设置限速测试。

05 打印机

用户可能会将网页打印下来。因此网页在设计的时候要考虑到打印问题,注意节约纸张和油墨。有不少用户喜欢阅读而不是盯着屏幕,因此需要验证网页打印是否正常。有时在屏幕上显示的图片和文本的对齐方式可能与打印出来的东西不一样。测试人员至少需要验证订单确认页面打印是正常的。

06 组合测试

最后需要进行组合测试。600x800 的分辨率在 MAC 机上可能不错,但是在 IBM 兼容机上却很难看。

在 IBM 机器上使用 Netscape 能正常显示,但却无法使用 Lynx 来浏览。如果是内部使用的 web 站点,测试可能会轻松一些。如果公司指定使用某个类型的浏览器,那么只需在该浏览器上进行测试。

如果所有的人都使用 T1 专线,可能不需要测试下载施加。(但需要注意的是,可能会有员工从家里拨号进入系统) 有些内部应用程序,开发部门可能在系统需求中声明不支持某些系统而只支持一些那些已设置的系统。

但是,理想的情况是,系统能在所有机器上运行,这样就不会限制将来的发展和变动。

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

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

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

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

相关文章

Halcon深度学习方法

1、异常检测和全局上下文异常检测 图(1)异常检测示例 在图(1)上图中,异常检测示例:为输入图像的每个像素都分配一个分数,表明它显示未知特征(即异常)的可能性;在图(1)下图中,全局上下文异常检测示例:为输入…

浅谈云性能测试的关键要点

随着云计算的广泛应用,云性能测试成为确保云服务质量和性能的关键环节。云性能测试不仅涵盖了传统性能测试的方面,还需要考虑云环境的特殊性。以下是云性能测试的几个关键要点: 1. 模拟真实云环境 云环境具有虚拟化、弹性扩展等特点&#xff…

Python基础教程——最详细python安装库的方法(安装pygame库为例)!

Python安装库方法大全(以安装pygame库为例) 方法一、在pycharm内部直接安装【直接上图】 第一种方法安装不了就用第二种 如果显示package pygame (库名) install successfully 到此第一种方法结束恭喜你安装成功 如果报了错那就…

Python---进程

1. 进程的介绍 在Python程序中,想要实现多任务可以使用进程来完成,进程是实现多任务的一种方式。 2. 进程的概念 一个正在运行的程序或者软件就是一个进程,它是操作系统进行资源分配的基本单位,也就是说每启动一个进程&#xf…

德人合科技 | 防止公司电脑文件数据资料外泄,自动智能透明加密保护系统

【透明加密软件】——防止公司电脑文件数据资料防止外泄,自动智能透明加密保护内部核心文件、文档、图纸、源代码、音视频等资料! PC端访问地址: www.drhchina.com 🌟 核心功能: 透明加密:采用高级加密算…

telnet的交互原理(wireshark分析)

telnet的交互原理(wireshark篇) telnet的协议类型是tcp,他的密钥用的是明文的,容易被捕获,所以后来的windows基本弃用了telnet服务端但依然保留了客户端。 下面是他的交互抓包: 这里面的前三条运用的是tc…

如何通过控制台排查定位EasyTsdb

过去我们发现EasyTsdb占用磁盘较大,但我们却不能直接看到哪个模型占用空间多?更不可能知道是哪个指标数据量大? 当EasyTsdb负载高时,我们无法定位当时哪个模型或者哪个请求占用了资源,也不知道是从什么时候开始出现高…

net6使用StackExchangeRedis实现分布式缓存

上一篇讲解了Redis的搭建及ServiceStack.Redis 与 StackExchange.Reids 的区别https://blog.csdn.net/qq_39569480/article/details/105249607 这篇文章遗我们来说下使用Microsoft.Extensions.Caching.StackExchangeRedis来对redis进行操作及帮助类。 首先在windows上安装red…

springboot 学生信息管理

介绍 一个学生信息管理后台,适用于大作业,课设等 软件架构 springbootmybatisthymeleaf (前后端未分离) 安装教程 注:mysql数据库要8.0以上,,本地mysql新建一个名为 student 的空数据库&am…

关于“Python”的核心知识点整理大全29

目录 11.2.4 方法 setUp() 注意 11.3 小结 第二部分 项目1 外星人入侵 第12 章 武装飞船 注意 12.1 规划项目 12.2 安装 Pygame 注意 12.2.1 使用 pip 安装 Python 包 注意 如果你启动终端会话时使用的是命令python3,那么在这里应使用命令…

论文Rebuttal常见格式与模板之下篇

论文Rebuttal常见格式与模板之下篇 前言7. Rebuttal 常见表达一些推荐阅读总体感谢表示感谢和赞同表示不同意或澄清尾句模板 Rebuttal模板的好文 前言 这里承接上一篇笔记:论文Rebuttal常见格式与模板之中篇 其中篇的内容主要讲述可能遇到Rebuttal问题(…

5. Prism系列之区域管理器

Prism系列之区域管理器 文章目录 Prism系列之区域管理器一、区域管理器二、区域创建与视图的注入1. ViewDiscovery2. ViewInjection 三、激活与失效视图1. Activate和Deactivate2. 监控视图激活状态3. Add和Remove 四、自定义区域适配器1. 创建自定义适配器2. 注册映射3. 创建区…

Postgresql中PL/pgSQL代码块的语法与使用-声明与赋值、IF语句、CASE语句、循环语句

场景 PostGresSQL简介与Windows上的安装教程: PostGresSQL简介与Windows上的安装教程_postgressql windows安装免费吗?-CSDN博客 除了标准 SQL 语句之外,PostgreSQL 还支持使用各种过程语言(例如 PL/pgSQL、C、PL/Tcl、PL/Python、PL/Per…

fiddler的下载、安装

在官网下载fiddler 点击Download For Windows 下载完成 安装fiddler 点击.exe文件,进行傻瓜式安装,即可安装成功 配置fiddler 点击OK后,重启fiddler, 即可抓包

Next.js 学习笔记(三)——路由

路由 路由基础知识 每个应用程序的骨架都是路由。本页将向你介绍互联网路由的基本概念以及如何在 Next.js 中处理路由。 术语 首先,你将在整个文档中看到这些术语的使用情况。以下是一个快速参考: 树(Tree):用于可…

XXE利用的工作原理,利用方法及防御的案例讲解

XXE(XML外部实体注入)利用是一种网络安全攻击手段,其中攻击者利用XML解析器处理外部实体的方式中的漏洞。这种攻击主要针对的是那些使用XML来处理数据的应用程序,尤其是当这些应用程序没有正确限制外部实体的处理时。通过XXE利用&…

2018年第七届数学建模国际赛小美赛D题速度扼杀爱情解题全过程文档及程序

2018年第七届数学建模国际赛小美赛 D题 速度扼杀爱情 原题再现: 在网上约会的时代,有比鱼更多的浪漫选择,好吧,你知道的。例如,在命名恰当的网站Plenty of Fish上,你可以仔细查看数百或数千名潜在伴侣的档…

云原生之深入解析强大的镜像构建工具Earthly

一、Earthly 简介 Earthly 是一个更加高级的 Docker 镜像构建工具,Earthly 通过自己定义的 Earthfile 来代替传统的 Dockerfile 完成镜像构建;Earthfile 就如同 Earthly 官方所描述: Makefile Dockerfile Earthfile在使用 Earthly 进行构建镜像时目前…

护肤品类小红书素人达人的推广报价是多少?

小红书是一款集社交和电商于一体的平台,用户可以在上面分享生活点滴、购物心得、旅游攻略等。近年来,随着护肤美妆市场的不断扩大,越来越多的品牌和商家选择在小红书上投放广告,借助素人达人的影响力为产品引流。那么,…

Java第十七章总结

数据库基础 SQL语言 1、select 语句 select 语句用于从数据中检索数据。语法如下: SELECT 搜选字段列表 FROM 数据表名 WHERE 条件表达式 GROUP BY 字段名 HAVING 条件表达式(指定分组的条件) ORDER BY 字段名[ASC|DESC] 2、insert 语句 insert 语句用于向表中插入…