Web自动化测试怎么做?Web网页测试全流程解析_网页进行自动化测试的方法-程序员宅基地

技术标签: 自动化测试  软件测试  单元测试  职场和发展  程序人生  

1、功能测试

web网页测试中的功能测试,主要测试网页中的所有链接、数据库连接、用于在网页中提交或获取用户信息的表单、Cookie 测试等。

(1)查看所有链接:

·测试从所有页面到被测特定域的传出链接。

· 测试所有内部链接。

· 测试链接在同一页面上跳转。

· 测试链接用于从网页向管理员或其他用户发送电子邮件。

· 测试是否有任何被孤立的页面。

· 最后,链接检查包括检查所有上述链接中的损坏链接。

(2)测试所有页面上的表单:

表单是任何网站都不可或缺的一部分。表单用于接收来自用户的信息并与他们进行交互。那么在这些表格中应该检查什么?

· 首先,检查每个字段的所有验证。

· 检查字段中的默认值。

· 表单中的字段输入错误。

· 用于创建表单(如果有)、表单删除视图或修改表单的选项。

以搜索引擎项目的测试为例。在这个项目中,我们有广告商和会员注册步骤。每个注册步骤和流程都不同。我们需要测试注册流程是否能够正确执行。注册表单有不同的字段验证,如电子邮件、ID、用户财务信息验证等。所有这些验证都应在手动或自动 Web 测试中进行检查。

(3)Cookie测试:

Cookie是存储在用户计算机设备上的小文件。Cookie基本上用于维护登录状态的验证。通过在浏览器选项中启用或禁用 cookie 来测试应用程序。

在写入用户计算机之前测试 cookie 是否已加密。如果当下正在测试会话 cookie(即会话结束后过期的 cookie),需要在会话结束后检查登录会话和用户统计信息。通过删除 cookie 检查对应用程序安全性的影响。

(4)检查页面HTML/CSS:

如果我们的网站正在针对搜索引擎做相关的SEO类优化工作,那么 HTML/CSS 验证是最重要的一项。这一块儿主要验证站点是否存在HTML语法错误。检查网站是否可以被不同的搜索引擎抓取。

(5)数据库测试:

数据一致性在 Web 应用程序中也非常重要。我们在编辑、删除、修改表单或执行任何与数据库相关的功能时,都应检查数据的完整性和错误。

检查所有数据库的查询是否正确执行、数据是否被检索以及是否正确更新。另外一项关于数据库的测试则是数据库的负载,这一块儿会在下方的Web负载和性能测试这一块讲到。

2、可用性测试

可用性测试是测量系统的人机交互特性并识别弱点以进行纠正的过程。

· 易于学习

· 导航

· 主观用户满意度

· 整体外观

(1)导航测试:

导航是指用户如何浏览网页、不同的控件(如按钮、框)或用户如何使用页面上的链接来浏览不同的页面。

可用性测试包括以下内容:

· 该网站应该易于使用。

· 提供的说明应该非常清楚。

· 检查提供的说明是否完美满足其目的。

· 主菜单应在每一页上提供。

· 它应该足够一致。

(2)内容检查:

内容应该合乎逻辑且易于理解。检查是否有文字错误。网站配色的使用,是否符合用户体验。

您可以遵循一些用于网页和内容构建的标准颜色。这些是普遍接受的标准,就像我上面提到的关于恼人的颜色、字体、框架等的标准。

内容应该是有意义的。所有锚文本链接都应该正常工作。图像应以适当的尺寸正确放置。这些是 Web 开发中应该遵循的一些基本的重要标准。您的任务是验证 UI 测试的所有内容。

(3)网站地图:

与搜索选项一样,站点地图也有助于处理文件等。站点地图应与网站上的所有链接一起提供,并具有适当的导航树视图。检查网站网站地图上的所有链接。

“站内搜索”选项将帮助用户轻松快速地找到他们正在寻找的内容页面。这些都是可选项目,如果存在,则应进行验证。

3、接口测试

在 web 测试中,应该测试服务器端接口。这可以通过验证通信是否正确完成来完成。应测试服务器与软件、硬件、网络和数据库的兼容性。

主要接口有:

· Web服务器和应用服务器接口

· 应用服务器和数据库服务器接口。

检查是否执行了这些服务器之间的所有交互并正确处理了错误。如果数据库或 Web 服务器针对应用程序服务器的任何查询返回错误消息,则应用程序服务器应捕获这些错误消息并将其适当地显示给用户。

检查如果用户在中间中断任何事务会发生什么?检查如果在两者之间重置与网络服务器的连接会发生什么?

4、兼容性测试

网站的兼容性是一个非常重要的测试。

兼容性测试具体测试以下几项:

· 浏览器兼容性

· 操作系统兼容性

· 手机浏览

(1)浏览器兼容性:

浏览器的兼容性测试,可以说是网站测试中最具影响力的部分。 一些应用程序非常依赖浏览器。不同的浏览器有不同的配置和设置,我们需要测试网页在各系统、各浏览器品牌和版本下展示效果是否一致。

首先,网站编码应该是跨浏览器平台兼容的。如果我们使用 java 脚本或 AJAX 调用来实现 UI 功能、执行安全检查或验证,那么会对我们的 Web 应用程序的浏览器兼容性测试带来更多的压力。

在 Internet Explorer、Firefox、Netscape Navigator、AOL、Safari 和 Opera 浏览器等不同版本的浏览器上测试 Web 应用程序。

(2)操作系统兼容性:

Web 应用程序中的一些功能是它可能不与所有操作系统兼容。Web 开发中使用的所有新技术(如图形设计和不同 API 等接口调用)可能并非在所有操作系统中都可用。

因此,在具有不同操作系统风格的不同操作系统(如 Windows、MAC、Linux)上测试您的 Web 应用程序。

(3)移动浏览:

我们正处于新技术时代。目前移动端的用户访问量已经远超PC端用户使用量。所以测试网页在移动端各个设备和浏览器上的展示体验显得尤为重要。

5、性能测试

Web 应用程序应该承受很大的负载。Web 性能测试应包括:

· 网络负载测试

· 网络压力测试

在不同的互联网连接速度下测试应用程序性能。

(1)Web 负载测试

我们需要测试是否有许多用户正在访问或请求同一页面。系统能够承受峰值负载的持续时间?该站点应处理多并发的用户请求、来自用户的大量输入数据、同时连接到数据库的请求、特定页面上的负载等。

(2)网络压力测试

通常压力意味着将系统拉伸到超出其指定限制。执行 Web 压力测试以通过施加压力来破坏站点,并检查系统如何对压力做出反应以及如何从崩溃中恢复。通常强调输入字段、登录和注册区域。

在 Web 性能测试中,不同操作系统和不同硬件平台上测试网站功能,检查软件和硬件内存泄漏相关的错误。

性能测试可用于了解网站的可扩展性或对第三方产品(如服务器和中间件)环境中的性能进行基准测试。

6、安全测试

以下是 Web 安全测试的一些测试用例

通过将内部 URL 直接粘贴到浏览器地址栏中进行测试,无需登录。这个时候网站的内部页面不应被打开。

在登录用户名、密码、输入文本框等输入字段中尝试一些无效输入。检查系统对所有无效输入的反应。

除非网站提供了下载选项,否则普通用不能通过URL直接访问Web目录和系统文件。

测试 CAPTCHA 以自动化脚本登录。

测试网站是否应用了SSL安全措施。如果使用,当用户从非安全 HTTP:// 页面切换到安全 HTTPS:// 页面时,应该会显示正确的提示信息,反之亦然。

所有交易、错误消息和安全漏洞尝试都应记录在 Web 服务器某处的日志文件中。

测试 Web 安全性的主要原因是识别潜在漏洞并随后修复它们。

· 网络扫描

· 漏洞扫描

· 密码破解

· 日志审查

· 完整性检查器

· 病毒检测

最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】

在这里插入图片描述

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

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wx17343624830/article/details/129215729

智能推荐

java学习笔记day09 final、多态、抽象类、接口_} } class a { public void show() { show2(); } publ-程序员宅基地

文章浏览阅读155次。java学习笔记day09思维导图final 、 多态 、 抽象类 、 接口 (都很重要)一、final二、多态多态中的成员访问特点 【P237】多态的好处 【P239]多态的弊端向上转型、向下转型 【P241】形象案例:孔子装爹多态的问题理解: class 孔子爹 { public int age = 40; public void teach() { System.out.println("讲解JavaSE"); } _} } class a { public void show() { show2(); } public void show2() { s

Qt5通信 QByteArray中文字符 出现乱码 解决方法_qbytearray中文乱码-程序员宅基地

文章浏览阅读2.4k次,点赞3次,收藏9次。在写qt网口通信的过程中,遇到中文就乱码。解决方法如下:1.接收端处理中文乱码代码如下 QByteArray-> QString 中文乱码解决: #include <QTextCodec>QByteArray data= tcpSocket->readAll(); QTextCodec *tc = QTextCodec::codecForName("GBK"); QString str = tc->toUnicode(data);//str如果是中文则是中文字符_qbytearray中文乱码

JavaScript之DOM操作获取元素、事件、操作元素、节点操作_元素事件-程序员宅基地

文章浏览阅读2.5k次,点赞2次,收藏15次。什么是 DOM?文档对象模型(Document Object Model,简称 DOM),是 W3C 组织推荐的处理可扩展标记语言(HTML或者XML)的标准编程接口。W3C 已经定义了一系列的 DOM 接口,通过这些 DOM 接口可以改变网页的内容、结构和样式DOM 树文档:一个页面就是一个文档,DOM 中使用 document 表示元素:页面中的所有标签都是元素,DOM 中使用 element 表示节点:网页中的所有内容都是节点(标签、属性、文本、注释等),DOM 中使用 node._元素事件

安卓基础知识(一) 服务(Service)_安卓服务-程序员宅基地

文章浏览阅读1.4k次,点赞3次,收藏7次。关于服务的一些基本知识,包括活动对接口的方法调用,接口实现,服务生命周期等知识。_安卓服务

JDBC使用数据库连接池连接数据库(DBCP,C3P0,Druid)_采用连接池方式连接数据库-程序员宅基地

文章浏览阅读7.9k次,点赞5次,收藏8次。小白式数据库连接池使用,看完拿捏数据库连接池。_采用连接池方式连接数据库

C++多线程同步_c++线程同步-程序员宅基地

文章浏览阅读4.9k次,点赞5次,收藏36次。摘要:本文介绍了C++11中如何开启新线程,并详细讲解了线程的基础同步原语:mutex, lock_guard, unique_lock, condition variable和semaphore等。如何采用async, packaged_task和promise实现future同步机制?怎样处理spurious wakeup?本文以质数判定服务为例为大家分享C++多线程同步措施!1. C++线程和基础同步原语Thread mutex, lock_guard, unique_lock con._c++线程同步

随便推点

【flink番外篇】1、flink的23种常用算子介绍及详细示例(1)- map、flatmap和filter_flink 常用的分类和计算-程序员宅基地

文章浏览阅读1.6w次,点赞25次,收藏20次。本文主要介绍Flink 的3种常用的operator(map、flatmap和filter)及以具体可运行示例进行说明.将集合中的每个元素变成一个或多个元素,并返回扁平化之后的结果。按照指定的条件对集合中的元素进行过滤,过滤出返回true/符合条件的元素。本文主要介绍Flink 的3种常用的operator及以具体可运行示例进行说明。这是最简单的转换之一,其中输入是一个数据流,输出的也是一个数据流。下文中所有示例都是用该maven依赖,除非有特殊说明的情况。中了解更新系统的内容。中了解更新系统的内容。_flink 常用的分类和计算

(转)30 IMP-00019: row rejected due to ORACLE error 12899-程序员宅基地

文章浏览阅读590次。IMP-00019: row rejected due to ORACLE error 12899IMP-00003: ORACLE error 12899 encounteredORA-12899: value too large for column "CRM"."BK_ECS_ORDER_INFO_00413"."POSTSCRIPT" (actual: 895, maximum..._row rejected due to oracle

降低Nginx代理服务器的磁盘IO使用率,提高转发性能_nginx tcp转发 硬盘io-程序员宅基地

文章浏览阅读918次。目前很多Web的项目在部署的时候会采用Nginx做为前端的反向代理服务器,后端会部署很多业务处理服务器,通常情况下Nginx代理服务器部署的还是比较少,而且其以高效性能著称,几万的并发连接处理速度都不在话下。然而去年的时候,我们的线上系统也采用类似的部署结构,同时由于我们的业务需求,Nginx的部署环境在虚拟机上面,复用了其他虚拟机的整体磁盘,在高IO消耗的场景中,我们发现Nginx的磁盘_nginx tcp转发 硬盘io

Activiti 开发环境搭建_antdev activity-程序员宅基地

文章浏览阅读645次。Activiti 开发环境的搭建非常简单,主要分为 Activiti runtime 的安装以及 Eclipse 开发环境的配置。本文以 Windows 平台为例介绍 Activiti 5.8 版的开发环境的搭建配置过程。Activiti 的运行时程序可以从http://www.activiti.org/download.html 下载,目前最新版本为 5.8。为了配置使用 Activ_antdev activity

Vuex: 实现同级组件的简单通信_vuex的组件同级通信-程序员宅基地

文章浏览阅读2.3k次。1. Vuex 是什么?Vuex 是专门为Vue 组件化思想带来的组件间通信问题提供的解决方案,主要解决以下两个问题:多个视图依赖于同一状态 来自不同视图的行为需要变更同一状态2. 核心概念State: 可以简单理解为Vue 维持的全局变量(状态)。 Getter: 获取State 中的状态的方法,可以在取出前对数据进行二次处理。 Mutation: 是改变State 中的状态..._vuex的组件同级通信

逆向中常见的Hash算法和对称加密算法的分析_findcrypt3 支持哪些算法-程序员宅基地

文章浏览阅读8.4k次,点赞31次,收藏33次。逆向中常常出现一些加密算法,如果我们能对这些加密算法进行快速识别则会大大减少我们逆向的难度,虽然IDA已有密码分析神器Findcrypt,但掌握手动分析方法能帮助我们应对更多的情况。这篇文章将介绍逆向中常见的单项散列算法和对称加密算法的识别方法。0xFF. 前言在很长一段时间里我经常发现自己面对复杂的加密算法无从下手,可能是因为还没有系统学过密码学吧orz,总之这个问题困扰了我很久。于是最近我花了一些时间来解决自己在密码学这块的薄弱点,写下这篇文章的目的之一也是为了巩固所学知识。加密算法的部分没有_findcrypt3 支持哪些算法

推荐文章

热门文章

相关标签