Web自动化测试如何做?Web自动化测试的详细流程和步骤

article/2025/10/9 7:32:53

一、什么是web自动化测试

自动化(Automation)是指机器设备、系统或过程(生产、管理过程)在没有人或较少人的直接参与下,按照人的要求,经过自动检测、信息处理、分析判断、操纵控制,实现预期的目标的过程。

这是教科书里面的自动化的定义,回归到自动化测试其实自动化测试就是什么呢?

指的是测试的过程在没有人或者较少的人为的干预的情况下进行的测试,再简单点说就是用程序或者脚本来测试程序,那么在web自动化测试中主要用来把测试人员从繁琐的内容中解放出来,主要做一些比如需要多次输入,多次运行的,比如我们用边界值,等价类设计的很多测试数据需要执行,比如业务流程需要执行很多遍的时候我们就可以使用web自动化测试。

二、web自动化测试的工具

现在主流的web测试工具我们常用的就是selenium的那一套工具包括

浏览器一般选择chrome
浏览器对应的driver(chromedriver)
Python
Selenium库

三、web自动化测试的环境安装

浏览器安装 下载浏览器下一步按照就好了
chromedriver 下载 可以到 npmmirror.com/
注:100的大版本对的上就Ok了

 
四、web自动化测试的方法

Web自动化测试一般使用设计测试用例的方法跟功能测试相同,使用等价类划分,边界值,因果图,场景法等等就好了

 Web自动化测试实施的使用我们一般会采用po模式设计

PO是page object的简称,核心思想是通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化, 只需要调整页面元素封装的代码,提高测试用例的可维护性、可读性。

PO模式可以把一个页面分为三层,对象库层、操作层、业务层。

对象库层:封装定位元素的方法。

操作层:封装对元素的操作。

业务层:将一个或多个操作组合起来完成一个业务功能。

比如登录:需要输入帐号、密码、点 击登录三个操作。

测试脚本只需要调用业务层代码就可以完成

当出现页面需要的时候只需要测试代码可以完全不用修改只需要修改操作层就好了

五、web自动化测试的流程实施

web自动化测试流程和功能测试基本一致:

下面我们已登录需求为例

(1)需求分析

 这里我们以手机登录为例

 (2)设计测试用例与测试数据

自动化测试测试用例不用像手工测试设计的那么详细

ID测试模块标题前置条件测试输入
login_001登录错误的手机号登录网络正常,功能正常手机号错误其他输入项正常

【下方为测试数据】

  

(3)搭建web自动化测试环境

在上面环境安装那里已经搭建了

(4)设计web自动化测试框架

一般测试po模式的内容包括

 

(5)编写代码

在po文件夹中创建page_login

 

脚本执行代码 创建test_login 


(6)执行测试用例

可以使用pytest控制测试用例的执行

@pytest.mark.parametrize([“username”,“pwd”,“code”,“asrt_msg”],get_data())


(7)生成测试报告

 可以使用allure生成测试报告

 

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助,有需要的朋友你可以dd我。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近100个G。

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。
 


http://chatgpt.dhexx.cn/article/UPvDare1.shtml

相关文章

[方向]国外作者笔下的中国创业指南

摘要:国外媒体TheNextWeb刊登了一篇中国创业指南的文章,内容从五个方面剖析了中国移动市场的创业机遇和环境,文中最后还提出一些他们认为很知名的投资商。当局者迷,让我们看看在外国人眼中的中国市场拥有什么神奇色彩。 随着移动、…

创业公司

掌赢信息科技(上海)有限公司编辑掌赢信息科技一般指掌赢信息科技(上海)有限公司 资料已通过 工商局官网 查验核实 掌赢信息科技(上海)有限公司 成立时间 2011-03-17 注册资本 1020万元人民币 企业类型 一…

“斯坦福系”的中国创业者

有的人不读大学就能改变世界,但i黑马认为还是上个好大学你创业成功的几率会大得多。i黑马接触的成功创业者中,有60%~80%都是名校毕业生。 有的人不读大学就能改变世界,但i黑马认为还是上个好大学你创业成功的几率会大得多。i黑马接…

创业,到底去哪里?

大数据产业创新服务媒体 ——聚焦数据 改变商业 1998年的夏天,IDG在中国开了第一枪。2000万人民币的投资代表了中国VC元年启动。之后开始了两轮巨大的互联网流量红利。第一次属于2000-2010年,这一代是PC时代的互联网;2010年开始到今天&#…

国外作者笔下的中国创业指南

摘要:国外媒体TheNextWeb刊登了一篇中国创业指南的文章,内容从五个方面剖析了中国移动市场的创业机遇和环境,文中最后还提出一些他们认为很知名的投资商。当局者迷,让我们看看在外国人眼中的中国市场拥有什么神奇色彩。 随着移动、…

30个有发展前景的创业项目

30个有发展前景的创业项目 创业项目指创业者为了达到商业目的具体实施和操作的工作。以下是小编整理的30个有发展前景的创业项目,仅供参考,大家一起来看看吧。 30个有发展前景的创业项目1 有发展前景的行业:环保领域 包括垃圾回收、加工利用…

关于创业

作者:xubin341719 创业是个美妙的话题,身边不乏朋友创业。 可是发现一个共同的现象,那就是开始创业的人(电子方面),好多都卡在PCBA这块。不是板子贴的有问题,就是PCB layout的过程中出问题&a…

创业了...

大家好,我是楼仔! 告诉大家一个消息,我创业了!!! 不过我这个属于兼职创业,老本肯定还是不能丢,楼哥的房贷和车贷,都还指望这个还,中年男人,都不…

老外的“中国创业指南”

最近老外也看上了中国移动市场这块肥肉了,TNW更是悉心列出中国创业指南,旁观者清,来看看他们眼里中国移动市场是怎样的,他们打算从哪里入手? 如果你需要潜在的创业市场,中国是块又大又香的肥肉,…

国外优秀区块链创业公司梳理

本文属于转载文章,原文请点击这里 引言 本文按照公司的服务类别类别总结了40家国外目前区块链的创业公司,旨在帮助技术人员和创业人员加深对区块链技术和行业的认知。服务类别总体分类2类:金融服务和非金融服务,其中金融服务包括电…

android的单元测试,Android 单元测试(Button 点击测试)

android源码中引入了java单元测试的框架(android源码目录:libcore\junit\src\main\java\junit\framework中可见),然后在java单元测试框架的基础上扩展属于android自己的测试框架。android具体框架类的关系图如下: 从上图的类关系图中可以知道,通过android测试类可以实现对a…

android单元测试教程,Android单元测试-Junit

基本用法实际操作 public class Caculation { public double sum(double numA, double numB) { return numA numB; } public double multiply(double numA, double numB) { return numA * numB; } } 2、类名右键--Go To--Test,生成测试类 项目中androidTest文件夹里…

Android单元测试读写文件,如何在Android单元测试中读取仅测试文件

对于我的Android应用程序,我正在编写需要读取一些文件的单元测试。 由于这些是仅测试文件,因此我不希望它们出现在res文件夹中,因为我不希望它们最终出现在最终的.apk文件中。 我想做与此问题类似的事情,但要使用新添加的(在Gradl…

安卓项目如何做单元测试

前言 先说一下创建篇文章的目的,近期负责搭建公司的单元测试框架,于是查阅了网上的很多文章,以及参考了github上很多的项目例子,并且也进行了相当多的尝试。这其中花费了很多的精力,大约有两三周的时间,远…

android单元测试作用,关于 Android 单元测试

本文不会用各种高大上的理由试图去说服你写单元测试,只是描述笔者在单元测试这条路上一路走来的思考和简单的示例,如果顺便能让你觉得单元测试其实也没那么遥远、回头也在实际项目中尝试一下,估计就是本文最大的收获了。 一、提起单元测试&am…

分享基于安卓项目的单元测试总结

前言: 负责公司的单元测试体系的搭建,大约有一两个月的时间了,从最初的框架的调研,到中期全员的培训,以及后期对几十个项目单元测试的引入和推进,也算是对安卓的单元测试有了一些初步的收获以及一些新的认…

java 线程 js_js javascript 实现多线程

在讲之前,大家都知道js是基于单线程的,而这个线程就是浏览器的js引擎。 首先来看一下大家用的浏览器都具有那些线程吧。 假如我们要执行一些耗时的操作,比如加载一张很大的图片,我们可能需要一个进度条来让用户进行等待&#xff0…

js创建多线程

我们知道js是单线程的,如果把占用大量计算资源的代码,或者获取大量数据,耗时较多的请求分离出去,用一个单独的线程去处理,会不会提升页面的性能的,答案是肯定的,尤其是现在我们开发大多是单页应…

javascript-js实现多线程

在讲之前,大家都知道js是基于单线程的,而这个线程就是浏览器的js引擎。 首先来看一下大家用的浏览器都具有那些线程吧。 假如我们要执行一些耗时的操作,比如加载一张很大的图片,我们可能需要一个进度条来让用户进行等待&#xff…

html5多线程例子,javascript的单线程事件循环及多线程介绍

前言 其实我前面文章对于改变js的执行顺序及多线程都有相关介绍!例如,我们可以用setTimeout(fn,0)改变代码执行循序,文章最后也提及了Event Loop(事件循环)。同时,js的Worker可以模拟实现多线程,我前面文章也有类似的应…