正常web页面登录时效是多少_如何实现Web自动化测试?

Robotframework框架是一个通用的测试框架,他的其中的一个特性是功能全面,能够支持进行Web自动化测试(通过导入selenium相关测试库)、GUI测试、接口测试等。

本文主要介绍,在Robotframework测试框架上,实现基于Selenium的Selenium2Library的Web自动化测试。开始之前,先送上一波福利,软件测试小白公开课程+建议资料,戳下方卡片领取:

2020 软件测试讲义+视频+面试题集锦 0元领取​kbyx0011.mikecrm.com

整个教程分为3个部分:

1.环境准备

2.启动浏览器

3.在浏览器上实现网页登录

01

Web自动化环境准备

前提:已安装Python环境、Robotframework环境

导入依赖的Selenium2Library库

1.使用pip安装Selenium2Library库后,在Python的安装目录下存在Selenium2Library文件夹。

3c707586e1761e26724c1ce6cabe3ed7.png

2.在Robotframework RIDE的测试套件上导入Selenium2Library库。

1b0c44887c1841237f48b41c631948d6.png

导入成功后显示正常黑色(若是导入失败或错误,则会显示红色)。

77956857272a040afffa19c6237ed037.png

2.启动浏览器

注意:

Python3.8版本会和Robotframework兼容有问题,导致脚本编辑区域空白,无法编辑,如下:

d51e53791c326b70db191b07a604819b.png

此时需要重新安装Python版本,改成3.7.5版本即可。

脚本实例:

在RIDE的脚本编辑区域,编辑脚本内容如下:

0f77fa5da48597b8371f1dbb254e3799.png

脚本部分内容说明:

1.使用关键字open browser启动浏览器,第二栏即将打开的网址,第三栏为启动的浏览器类型。

2.使用关键字sleep,等待5s。

注意:在执行脚本过程中可能出现如下报错:

a901388030a63f1197d8abc226292b67.png

解决方法:

如果你的Selenium是3.X版本的,火狐浏览器需要geckodriver这个组件的支持:

1.下载geckodriver-v0.23.0-win64.zip

569981a218b51218d023e3b66579af53.png

2.下载成功后,直接解压,赋值“geckodriver.exe"到Python3的安装目录D:Python37

3.再次执行脚本:成功打开浏览器并打开对应的网址

脚本执行成功后,测试结果如下:

4a26a333ded82538fa99809a41e748bf.png

3.实现web登录

准备

在进行Web自动化时,首先要知道Web页面元素定位方式,元素的定位方式不外乎通过id、name、xpath等,这部分内容大家可以自行查看其他教程即可。本文直接介绍实例内的通过ID定位元素的方式。

步骤:

·打开具体的登录页面

·按F12打开调试面板

·点击右侧的元素识别箭头,如下图:

4f8f2137325b102cb87239281adc90ce.png

在元素识别箭头模式下,点击账号或密码输入框,可以看到如下内容:

8cf32adbcb939a6d307cbe6d858e7b98.png

通过这里可以知道,账号文本框的id=J_d_pPhone,一般在页面设计代码里面id是唯一的,所以这边我们在脚本里面就可以通过定位元素ID的方式定位到相应的元素(当然,如果id不是唯一的,那也可以选择其他的定位方式,只要能成功定位到该元素即可)。文本里面的密码文本框、登录按钮也参考此方式获取到元素属性。

脚本说明:

1.登录模块常用关键字:

由于Selenium2Library和appium的库内可能存在相同的关键字,所在在使用Selenium2的关键字时,前面直接加上相关的库名称

·Selenium2Library.open browser:打开浏览器

·Selenium2Library.Maximize Browser Window:最大化浏览器

·Selenium2Library.input text:输入文本

·Selenium2Library.Click Button:点击按钮

·Selenium2Library.close browser:关闭浏览器

·Selenium2Library.get title:获取浏览器页面标题

·Selenium2Library.get text:获取某个元素的文本值

2.断言关键字run ketword if

run ketword if:如果条件满足,则执行...,否则执行...

具体使用规则见下文脚本。

3.延时关键字sleep

4.日志打印关键字log

脚本设计过程:

1.打开浏览器

2.实现浏览器最大化

3.获取账号文本框的地址,并输入文本

4.获取密码文本框的地址,并输入文本

5.点击登录按钮,校验账号和密码

6.增加断言:通过登录页面的文本是否存在,判断登录是否成功

完整脚本实例:

183a9f391fb4405724848404a6fcd962.png

脚本执行结果:

9ce1e95570b2350a43a6e79c598ac48c.png

c0ffee2a639d7e06fb3eeed2e478e2d4.png

2020年软件测试基础视频+软件测试资料,点击下面卡片领取:

2020软件测试基础课程+资料​kbyx0011.mikecrm.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值