Web功能测试有哪些常用方法?

检验方法

1页面链接检查每一个链接是否都有对应的页面,并且页面之间切换正确;

2相关性检查删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确。

3检查按钮的功能是否正确如update, cancel, delete, save等功能是否正确。

4字符串长度检查输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度,会不会出错。

5字符类型检查在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型,会否报错.

6标点符号检查输入内容包括各种标点符号,特别是空格,各种引号,回车键.看系统处理是否正确.

7中文字符处理在可以输入中文的系统输入中文,看会否出现乱码或出错.

8检查带出信息的完整性在查看信息和update信息时,查看所填写的信息是不是全部带出.,带出信息和添加的是否一致

9信息重复在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.

10检查删除功能在一些可以一次删除多个信息的地方,不选择任何信息,按”delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除,看是否正确处理.

11检查添加和修改是否一致检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型.

12检查修改重名修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错.

13重复提交表单一条已经成功提交的纪录,back后再提交,看看系统是否做了处理。

14检查多次使用back键的情况在有back的地方,back,回到原来页面,再back,重复多次,看会否出错.

15Search检查在有search功能的地方输入系统存在和不存在的内容,看search结果是否正确.如果可以输入多个search条件,可以同时添加合理和不合理的条件,看系统处理是否正确.

16输入信息位置注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方.

17上传下载文件检查上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。

18必填键检查应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加*

19快捷键检查是否支持常用快捷键,如Ctrl+C Ctrl+V Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。

20回车键检查在输入结束后直接按回车键,看系统处理如何,会否报错。

 功能测试

  1.1.链接测试

链接是Web 应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web 应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL 地址才能访问。

链接测试可以自动进行,现在已经有许多工具可以采用。链接测试必须在集成测试阶段完成,也就是说,在整个Web 应用系统的所有页面开发完成之后进行链接测试。

1.2. 表单测试

当用户给Web 应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。

1.3.Cookies测试

Cookies 通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies 访问了某一个应用系统时,Web 服务器将发送关于用户的信息,把该信息以Cookies 的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。

如果Web 应用系统使用了Cookies ,就必须检查Cookies 是否能正常工作。测试的内容可包括Cookies 是否起作用,是否按预定的时间进行保存,刷新对Cookies 有什么影响等。

1.4.设计语言测试

Web 设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML 等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML 的版本问题外,不同的脚本语言,例如Java 、JavaScript 、ActiveX 、VBScript 或Perl 等也要进行验证。

1.5.数据库测试

在Web 应用技术中,数据库起着重要的作用,数据库为Web 应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web 应用中,最常用的数据库类型是关系型数据库,可以使用SQL 对信息进行处理。

在使用了数据库的Web 应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。

性能测试

2.1.连接速度测试

用户连接到Web 应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web 系统响应时间太长(例如超过5 秒钟),用户就会因没有耐心等待而离开。

另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。

2.2.负载测试

负载测试是为了测量Web 系统在某一负载级别上的性能,以保证Web 系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web 系统的用户数量,也可以是在线数据处理的数量。例如:Web 应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web 应用系统能否处理大量用户对同一个页面的请求?

2.3.压力测试

负载测试应该安排在Web 系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web 系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet 上,接受负载测试,其结果才是正确可信的。

进行压力测试是指实际破坏一个Web 应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web 应用系统会不会崩溃,在什么情况下会崩溃。***常常提供错误的数据负载,直到Web 应用系统崩溃,接着当系统重新启动时获得存取权。

压力测试的区域包括表单、登陆和其他信息传输页面等。

可用性测试

3.1.导航测试

导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个Web 应用系统是否易于导航:导航是否直观?Web 系统的主要部分是否可通过主页存取?Web 系统是否需要站点地图、搜索引擎或其他的导航帮助?

在一个页面上放太多的信息往往起到与预期相反的效果。Web 应用系统的用户趋向于目的驱动,很快地扫描一个Web 应用系统,看是否有满足自己需要的信息,如果没有,就会很快地离开。很少有用户愿意花时间去熟悉Web 应用系统的结构,因此,Web 应用系统导航帮助要尽可能地准确。

导航的另一个重要方面是Web 应用系统的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉就知道Web 应用系统里面是否还有内容,内容在什么地方。

Web 应用系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。

3.2.图形测试

在Web 应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web 应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:

(1 )要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web 应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。

(2 )验证所有页面字体的风格是否一致。

(3 )背景颜色应该与字体颜色和前景颜色相搭配。

(4 )图片的大小和质量也是一个很重要的因素,一般采用JPG 或GIF 压缩。

3.3.内容测试

内容测试用来检验Web 应用系统提供信息的正确性、准确性和相关性。

信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsoft Word 的" 拼音与语法检查" 功能;信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web 站点中的所谓" 相关文章列表" 。

3.4.整体界面测试

整体界面是指整个Web 应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web 应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个Web 应用系统的设计风格是否一致?

对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般Web 应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。

对所有的可用性测试来说,都需要有外部人员(与Web 应用系统开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。

客户端兼容性测试

4.1.平台测试

市场上有很多不同的操作系统类型,最常见的有Windows 、Unix 、Macintosh 、Linux等。Web 应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。

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

4.2.浏览器测试

浏览器是Web 客户端最核心的构件,来自不同厂商的浏览器对Java ,、JavaScript 、ActiveX 、plug-ins 或不同的HTML 规格有不同的支持。例如,ActiveX 是Microsoft 的产品,是为Internet Explorer 而设计的,JavaScript 是Netscape 的产品,Java 是Sun 的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和Java 的设置也不一样。

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

安全性测试

Web 应用系统的安全性测试区域主要有:

(1 )现在的Web 应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

(2 )Web 应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15 分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

(3 )为了保证Web 应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。

(4 )当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。

(5 )服务器端的脚本常常构成安全漏洞,这些漏洞又常常被***利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。

总结

本文从功能、性能、可用性、客户端兼容性、安全性等方面讨论了基于Web 的系统测试方法。

基于Web 的系统测试与传统的软件测试既有相同之处,也有不同的地方,对软件测试提出了新的挑战。基于Web 的系统测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。

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

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python3函数

1、定义函数 函数代码块以def关键词开头,后接函数标识符名称和圆括号任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数函数内容以冒号:起始,并且缩进return【表达式】结束函数,选择性返回一个值调…

MySQL之BETWEEN AND包含范围查询总结

一、时间范围 查询参数格式与数据库类型相对应时,between and包含头尾,否则依情况 当数据库字段中存储的是yyyy-MM-dd格式,即date类型: 用between and查询, 参数yyyy-MM-dd格式时,包含头尾,相当…

测试老鸟告诉你,直击准备2024年初/高级测试技术面试...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 你眼中的软件测试…

基于单片机预费电表控制系统(proteus仿真+源程序)

一、系统方案 1、本设计采用这51单片机作为主控器。 2、采集电量值送到液晶1602显示。 3、按键设置预设值,实际使用电量超过设置,蜂鸣器报警。 二、硬件设计 原理图如下: 三、单片机软件设计 1、首先是系统初始化 void LCD_init(void) { …

C语言——用递归函数计算n!

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 比别人多一点努力,你…

GCC 学习

GCC Resource Center for GCC Internalshttps://www.cse.iitb.ac.in/grc/这是个不错资料网站,有兴趣的可以了解下

软文转化率如何提高,媒介盒子分享三大原则

决定软文推广的主要因素就在于软文内容,但是如何才能提高软文转化率呢?下面就让媒介盒子为你解答! 一、 软文类型 软文类型按照推广目标划分主要分为品牌软文、产品软文、营销软文。 ● 品牌软文 品牌软文的目的在于扩大品牌对群众的影响力…

消消乐游戏开发,消除类游戏

消除游戏是一类简单而又充满乐趣的休闲游戏,通过匹配相同的元素来完成任务,其简单直观的玩法吸引了大量玩家。本文将为你介绍设计和开发一款成功的消除游戏的关键步骤。 1. 确定核心玩法机制 消除游戏的核心在于匹配相同的元素。首先,明确定…

用Java实现简单的俄罗斯方块

一、创建新项目 1.首先新建一个项目,并命名为俄罗斯方块。 2.其次新建一个类,命名为Main,或其他的。 二、运行代码 package 俄罗斯方块;import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; import java.a…

SSM高考志愿辅助推荐系统-计算机毕业设计附源码21279

目 录 摘要 1 绪论 1.1 研究背景 1.2研究意义 1.3论文结构与章节安排 2 高考志愿辅助推荐系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系统用例分析 2…

LangChain的函数,工具和代理(一):OpenAI的函数调用

一、什么是函数调用功能 几个月前OpenAI官方发布了其API的函数调用功能(Function calling), 在 API 调用中,您可以描述函数,并让模型智能地选择输出包含调用一个或多个函数的参数的 JSON 对象。API函数“ChatCompletion” 虽然不会实际调用该函数&#…

FL Studio21怎么破解?2024年最新FLStudio21.2.0安装解锁特别版下载使用图文教程

用FL Studio编曲,让音乐成为你的翅膀,飞翔在无尽的创作海洋中吧! FL Studio作为一款功能强大且备受赞誉的音乐制作软件,为你提供了一个独特的创作平台。通过FL Studio,你可以自由地创作、编曲,制作属于自己…

【代数学习题4.1】从零理解范数与迹 —— 求极小多项式

从零理解范数与迹 —— 求极小多项式 写在前面概念解释题目解答 1. 极小多项式极小多项式的求法1. 对 α \alpha α 的极小多项式python求解 2. 对 α 1 \alpha 1 α1 的极小多项式python找到多项式python找到极小多项式 3. 对 α 2 α 1 \alpha^2 \alpha 1 α2α1 的…

Docker快速搭建RTMP服务(tiangolo/nginx-rtmp:Docker + Nginx+ nginx-rtmp-module)

Linux Docker快速搭建多媒体/视频流的 RTMP 服务 第一步 安装Docker 点击这里查看 第二步 拉取并运行镜像 tiangolo/nginx-rtmp/ docker pull tiangolo/nginx-rtmp docker run -d -p 1935:1935 --name nginx-rtmp tiangolo/nginx-rtmpOBS客户端测试 OBS客户端设置直播的推…

K8S精进之路-控制器Deployment-(1)

在K8S中,最小运行单位为POD,它是一个逻辑概念,其实是一组共享了某些资源的容器组。POD是能运行多个容器的,Pod 里的所有容器,共享的是同一个 Network Namespace,并且可以声明共享同一个 Volume。在POD中能够hold住网络…

3.基于多能互补的热电联供微网优化运行复现(matlab代码)

0.代码链接 基于多能互补的热电联供微电网/综合能源系统优化运行(Matlab程序Yalmip+Cplex求解)_工业综合能源系统资源-CSDN文库 2. 主要内容:代码主要做的是多能互补的热电联供型微网优化运行模型,在需求侧对负荷类型…

庖丁解牛:NIO核心概念与机制详解 07 _ 字符集

文章目录 Pre概述编码/解码处理文本的正确方式示例程序Code Pre 庖丁解牛:NIO核心概念与机制详解 01 庖丁解牛:NIO核心概念与机制详解 02 _ 缓冲区的细节实现 庖丁解牛:NIO核心概念与机制详解 03 _ 缓冲区分配、包装和分片 庖丁解牛&…

点击这里,获取数据治理加速器!

数据管理员:又双叒叕…盘一遍数据,这种工作究竟还要重复多少次?! • 上上个月,发现数据有些问题,我把数据盘了一遍,梳理完数据的关联表才定位到问题; • 上个月,进行数据…

Linux 系列之 在一个文本中查找指定的数据

我 | 在这里 🕵️ 读书 | 长沙 ⭐软件工程 ⭐ 本科 🏠 工作 | 广州 ⭐ Java 全栈开发(软件工程师) 🎃 爱好 | 研究技术、旅游、阅读、运动、喜欢流行歌曲 🏷️ 标签 | 男 自律狂人 目标明确 责任心强 ✈️公…

SO3 与so3 SE3与se3 SIM3

文章目录 1 旋转*叉乘1.1 旋转矩阵的导数1.2 物理意义1.3 实例1.4 角轴与反对称矩阵 2 SO3 与so32.1 so3 2 SO32.2 SO3 2 so3 3 SE3 与se33.1 se3 2 SE3:3.2 SE3 2 se3 4 SIM3 与sim35 Adjoint Map 1 旋转*叉乘 1.1 旋转矩阵的导数 根据旋转矩阵的性质: R R T I …