软件测试---自动化测试

目录

一、自动化测试

1、概念

2、自动化测试分类

3、自动化测试步骤

二、selenium

1、selenium概念

2、selenium的特点

3、selenium工作原理

4、selenium在java下的环境搭建

5、selenium api

①基本操作

②打印信息

③浏览器操作

④键盘操作

⑤鼠标操作

⑥切换窗口

⑦截图

⑧进阶操作

三、Junit

1、Junit概念

2、Junit环境搭建

3、常用注解

4、指定测试用例执行顺序

5、参数化

6、测试套件

7、断言

四、LoadRunner

1、性能测试的概念

2、性能指标

3、性能测试 vs 功能测试

4、性能测试分类

5、LoadRunner的特点

6、LoadRunner的三大组件

7、Web Tours网站

8、LoadRunner脚本录制

一、自动化测试

1、概念

自动化测试指软件测试的自动化,将人为驱动的测试行为转化为机器执行的过程。在预设状态下运行应用程序或系统,预设条件包括正常和异常,最后评估运行结果。

2、自动化测试分类

单元测试:对软件组成单元进行测试,测试工具:JUnit;

接口测试:对软件接口进行测试,测试工具:postman;

UI测试:对软件界面进行测试,测试工具:selenium。

3、自动化测试步骤

分析系统核心体系结构---设计测试用例---实现脚本---执行脚本---测试结果分析---测试脚本维护。

二、selenium

1、selenium概念

selenium是做UI自动化测试的一个工具。

2、selenium的特点

(1)免费、开源;

(2)可以支持许多浏览器---edge、chrome、opera等;

(3)跨平台---windows、linux、mac;

(4)有丰富的API。

3、selenium工作原理

三个角色:自动化脚本代码、驱动、浏览器

具体原理:①自动化脚本代码发送请求给浏览器驱动;②浏览器驱动解析自动化脚本代码,解析完成后发送给浏览器;③浏览器执行浏览器驱动发来的指令。

4、selenium在java下的环境搭建

5、selenium api
①基本操作

(1)打开一个浏览器---百度

(2)css选择器定位元素

常见选择器:①类选择器:.class值;②id选择器:#id值;③父类选择器 子类选择器:父类选择器表达式 子类选择器表达式;④标签选择器:标签名。

采用css选择器对于百度浏览器中的某个组件进行定位:

对于一些组件如果不知道css选择器怎么定位时,可以直接copy,操作步骤:

(3)xpath选择器定位元素

绝对路径:通过/开头,从html开头开始向下走。 例如:/html/body/div/div/div

相对路径:通过//开头

①相对路径+索引:

例如该路径会搜索出来3个span:

为了确定唯一的span,可以使用索引:

②相对路径+属性值:

例如该路径会搜索出18个input:

为了确定唯一的span,可以加入属性值:

③相对路径+通配符:

例如:

在所有相对路径中,路径的所有属性中寻找值为s_ipt的。

④相对路径+文本匹配:

采用xpath选择器对于百度浏览器中的某个组件进行定位:

ps:css和xpath的区别

①css表达式更加简洁;②css效率相对更高一些;③css不支持文本搜索,xpath支持文本搜索;④xpath支持的函数较多,对于一些复杂元素的查找,xpath反而更简洁。

(4)关闭浏览器

(5)模拟按键输入

(6)点击对象

(7)等待

①强制等待

无论浏览器是否加载完成,必须等待到规定时间。

②隐式等待

在设置的时间范围内不断查找元素,直到找到元素或超过规定时间,结束等待。

该方法是全局的,设置了隐式等待后,每一条查找语句都需要去隐式等待。

③显式等待

自定义的等待,用来等待某个条件发生后在继续执行后续代码(如元素存在、元素可点击、元素可见等),该等待不是全局的,可以针对每一个元素设置不同的等待时间和等待条件,如果超时就会抛出异常。

(8)清除输入的文本内容

(9)提交

ps:click() 与 sumbit() 的不同。

两者都是点击对象,但是sumbit()方法操作的对象必须在form标签里,否则无法完成点击,click()方法没有该限制。

(10)获取元素文本信息

对于一个对象,获取文本信息指获取标签中间的内容。

例如:

(11)综合运用

打开百度浏览器,搜索嘻嘻关键字,然后判断结果中是否有嘻嘻,有的话测试通过,没有的话测试不通过,清空搜索框内容,退出浏览器。

②打印信息

打印浏览器的标题和url

③浏览器操作

(1)浏览器最大化

(2)设置浏览器大小

(3)浏览器前进和后退

(4)操作浏览器滚动条

需要通过executeScript()方法执行js脚本。

④键盘操作

(1)回车键

(2)ctrl + A、ctrl + C、ctrl + V

⑤鼠标操作

⑥切换窗口

操作:打开百度浏览器,点击新闻,搜索今日新闻热点。

以上操作发现会报错:

找不到新闻窗口的输入按钮,是因为我们的窗口句柄还处在百度首页,在点击新闻时,窗口页面已经改变了,但是窗口句柄还没有改变,需要将窗口句柄也进行改变。

⑦截图

⑧进阶操作

(1)选择复选框

选中所有复选框:

(2)定位下拉框选项

对于该下拉框,选择$8.34:

根据下标选择(下标从0开始):

根据值选择:

(3)操作弹窗

对于弹窗,先点击弹窗按钮,再选择取消,再点击弹窗按钮,再输入姓名点击确定。

(4)上传文件

上传文件:

三、Junit

1、Junit概念

是java编程语言单元测试的框架,用于编写和可重复运行的自动化测试。

2、Junit环境搭建

引入依赖:

3、常用注解

自定义一个测试类

(1)@Test

该注解是标注一个方法为一个测试用例。

(2)@BeforeAll、@AfterAll

@BeforeAll:在所有测试用例执行前执行,只执行一次;

@AfterAll:在所有测试用例执行后执行,只执行一次。

(3)@BeforeEach、@AfterEach

@BeforeEach:在所有测试用例执行前执行,每个测试用例都会执行一次;

@AfterEach:在所有测试用例执行后执行,每个测试用例都会执行一次。

4、指定测试用例执行顺序

5、参数化

自定义测试类:

(1)单参数

注:不需要加@Test注解

(2)多参数---显式指定参数

(3)多参数---文件中指定参数

(4)多参数---方法中指定参数

6、测试套件

测试套件是为了批量运行测试样例。

(1)通过class运行测试用例

(2)通过包名运行测试用例

7、断言

断言是用来验证代码是否符合开发者的预期结果。

(1)断言相等

(2)断言不相等

(3)断言为空

(4)断言不为空

四、LoadRunner

1、性能测试的概念

性能测试是测试人员利用性能测试工具,模拟各种场景,观察性能指标是否符合预期。

ps:性能测试期间发现的缺陷叫瓶颈,开发人员修改缺陷叫性能优化。

2、性能指标

(1)并发

并发是指多个用户在同一时期内进行相同的操作。由于用户在进行一系列操作时有一定的时间间隔(用户思考时间)或服务器处理请求的先后顺序,于是就产生了绝对并发和相对并发。

绝对并发:同一时刻,并发用户对服务器同时发送请求;

相对并发:一段时间内,并发用户对服务器发送请求。

(2)响应时间

响应时间是指某个请求或操作从发出到接收到反馈所消耗的时间,包括:客户端处理请求时间、服务器处理请求时间、网络传输时间以及数据库服务器处理时间。

(3)事务响应时间---TRT

事务响应时间是指系统处理一个待定事务所需要的时间。

(4)每秒事务通过数---TPS

每秒事务通过数指系统每秒通过的事务数。

(5)点击量/点击率

点击量:用户一段时间内向web服务器发送的http请求数;

点击率:用户每秒向web服务器发送的http请求数。

(6)吞吐量/吞吐率

吞吐量:一段时间内,系统处理的客户请求数;

吞吐率:单位时间内,系统处理的客户请求数。

(7)思考时间

思考时间指用户在进行操作时,每个请求之间的间隔时间。

(8)资源利用率

对不同资源的使用情况,包括cpu、磁盘、内存等。

3、性能测试 vs 功能测试

性能测试是为了评估一个系统在某些条件下的性能和稳定性,主要关注系统在某些压力或负载下的表现,包括响应时间、吞吐量、资源利用率等方面。

功能测试是为了验证软件是否满足需求规格书中的要求,主要关注系统的功能是否符合预期需求。

4、性能测试分类

(1)基准性能测试

让系统在正常情况下运行,观察各项性能指标;

(2)负载性能测试

让系统背负一定压力,观察性能指标是否出现拐点;

(3)压力测试

让系统处于饱和状态,观察系统性能指标;

(4)可靠性测试

验证系统在一段时间内持续运行,观察各项性能指标是否正常。

5、LoadRunner的特点

(1)LoadRunner有非常强大的录制功能;

(2)LoadRunner可以模拟许多的场景;

(3)LoadRunner可以输出详细的测试报告。

6、LoadRunner的三大组件

VUG:录制脚本,写代码;

Controller:设计测试场景,运行测试场景;

Analysis:产生测试报告。

7、Web Tours网站

(1)作用

Web Tours网站是惠普LoadRunner自带的一个测试网站,可以帮助我们更好的了解LoadRunner工具的使用。

(2)启动

(3)访问

(4)修改端口号

(5)用户名和密码

用户名就是文件名jojo,密码就是bean;也可以自己注册添加。

8、LoadRunner脚本录制

(1)脚本录制概念

在进行测试的时候,可能有好多界面需要操作测试,并且有些测试需要重复、多线程、高并发进行测试,我们一般会针对这些操作,进行一个脚本录制,录制好之后,往后的测试就可以在这个基础上进行测试。

(2)创建脚本文件

(3)录制脚本文件


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ambition…

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值