3个步骤,轻松实现web自动化测试!

发表于:2020-9-02 09:55

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:绿豆芽呀    来源:51Testing软件测试网原创

  Robotframework框架是一个通用的测试框架,他的其中的一个特性是功能全面,能够支持进行Web自动化测试(通过导入selenium相关测试库)、GUI测试、接口测试等。
  本文主要介绍,在Robotframework测试框架上,实现基于Selenium的Selenium2Library的Web自动化测试。
  整个教程分为3个部分:
  1.环境准备
  2.启动浏览器
  3.在浏览器上实现网页登录
  Web自动化环境准备
  前提:已安装Python环境、Robotframework环境
  导入依赖的Selenium2Library库
  1.使用pip安装Selenium2Library库后,在Python的安装目录下存在Selenium2Library文件夹。
  2.在Robotframework RIDE的测试套件上导入Selenium2Library库。
  导入成功后显示正常黑色(若是导入失败或错误,则会显示红色)。
  启动浏览器
  注意:
  Python3.8版本会和Robotframework兼容有问题,导致脚本编辑区域空白,无法编辑,如下:
  此时需要重新安装Python版本,改成3.7.5版本即可。
  脚本实例:
  在RIDE的脚本编辑区域,编辑脚本内容如下:
  脚本部分内容说明:
  1.使用关键字open browser启动浏览器,第二栏即将打开的网址,第三栏为启动的浏览器类型。
  2.使用关键字sleep,等待5s。
  注意:在执行脚本过程中可能出现如下报错:
  解决方法:
  如果你的Selenium是3.X版本的,火狐浏览器需要geckodriver这个组件的支持:
  1.下载geckodriver-v0.23.0-win64.zip
  2.下载成功后,直接解压,赋值到Python3的安装目录D:\Python37
  3.再次执行脚本:成功打开浏览器并打开对应的网址
  脚本执行成功后,测试结果如下:
  实现web登录
  准备
  在进行Web自动化时,首先要知道Web页面元素定位方式,元素的定位方式不外乎通过id、name、xpath等,这部分内容大家可以自行查看其他教程即可。本文直接介绍实例内的通过ID定位元素的方式。
  步骤:
  ·打开具体的登录页面
  ·按F12打开调试面板
  ·点击右侧的元素识别箭头,如下图:
  在元素识别箭头模式下,点击账号或密码输入框,可以看到如下内容:
  通过这里可以知道,账号文本框的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.增加断言:通过登录页面的文本是否存在,判断登录是否成功
  完整脚本实例:
  脚本执行结果:

  本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号