51Testing软件测试论坛

标题: 3个步骤,轻松实现web自动化测试! [打印本页]

作者: lsekfe    时间: 2020-11-24 10:39
标题: 3个步骤,轻松实现web自动化测试!
Robotframework框架是一个通用的测试框架,他的其中的一个特性是功能全面,能够支持进行Web自动化测试(通过导入selenium相关测试库)、GUI测试、接口测试等。
  本文主要介绍,在Robotframework测试框架上,实现基于Selenium的Selenium2Library的Web自动化测试。
  整个教程分为3个部分:
  1.环境准备
  2.启动浏览器
  3.在浏览器上实现网页登录
  Web自动化环境准备
  前提:已安装Python环境、Robotframework环境
  导入依赖的Selenium2Library库
  1.使用pip安装Selenium2Library库后,在Python的安装目录下存在Selenium2Library文件夹。
[attach]130906[/attach]
2.在Robotframework RIDE的测试套件上导入Selenium2Library库。
[attach]130907[/attach]
导入成功后显示正常黑色(若是导入失败或错误,则会显示红色)。
[attach]130908[/attach]
启动浏览器
  注意:
  Python3.8版本会和Robotframework兼容有问题,导致脚本编辑区域空白,无法编辑,如下:
[attach]130909[/attach]
此时需要重新安装Python版本,改成3.7.5版本即可。
  脚本实例:
  在RIDE的脚本编辑区域,编辑脚本内容如下:

[attach]130910[/attach]
脚本部分内容说明:
  1.使用关键字open browser启动浏览器,第二栏即将打开的网址,第三栏为启动的浏览器类型。
  2.使用关键字sleep,等待5s。
  注意:在执行脚本过程中可能出现如下报错:

[attach]130911[/attach]
解决方法:
  如果你的Selenium是3.X版本的,火狐浏览器需要geckodriver这个组件的支持:
  1.下载geckodriver-v0.23.0-win64.zip

[attach]130912[/attach]
2.下载成功后,直接解压,赋值geckodriver.exe到Python3的安装目录D:\Python37
3.再次执行脚本:成功打开浏览器并打开对应的网址
  脚本执行成功后,测试结果如下:

[attach]130913[/attach]
 实现web登录
  准备
  在进行Web自动化时,首先要知道Web页面元素定位方式,元素的定位方式不外乎通过id、name、xpath等,这部分内容大家可以自行查看其他教程即可。本文直接介绍实例内的通过ID定位元素的方式。
  步骤:
  ·打开具体的登录页面
  ·按F12打开调试面板
  ·点击右侧的元素识别箭头,如下图:

[attach]130914[/attach]
 通过这里可以知道,账号文本框的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.增加断言:通过登录页面的文本是否存在,判断登录是否成功
  完整脚本实例:

[attach]130915[/attach]
脚本执行结果:
[attach]130916[/attach]
[attach]130917[/attach]







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2