RobotFramework+Jenkins自动化测试环境搭建及使用方法(上)

发表于:2022-4-12 09:35

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

 作者:小白典    来源:博客园

  RobotFramework介绍
  robotframework是由Python编写的一个开源的基于关键字驱动的自动化测试框架,可进行UI和接口自动化测试,语法简单易用,扩展性强,可通过使用Python或Java实现的测试库进行扩展,还可以自定义测试库,执行完毕后还会自动生成一份HTML格式的测试报告。
  RobotFramework安装
  因为robotframework本身存在一些小bug,兼容性也不太友好,需注意安装环境
  ·在python3.6/3.7/3.8环境安装
  pip install robotframework
  pip install robotframework-ride

  · 在python3.9/3.10环境安装
  pip install robotframework
  pip install wxpython
  pip install -U https://github.com/robotframework/RIDE/archive/master.zip

  · Beta版安装
  pip install robotframework
  pip install psutil
  pip install -U --pre robotframework-ride

  若因网络问题安装失败,可通过国内源安装,以下是常见的国内镜像源,添加参数-i跟url即可
  清华:https://pypi.tuna.tsinghua.edu.cn/simple
  豆瓣:https://pypi.douban.com/simple
  华为云:https://repo.huaweicloud.com/repository/pypi/simple
  阿里云:https://mirrors.aliyun.com/pypi/simple
  中科大:https://pypi.mirrors.ustc.edu.cn/simple

  RobotFramework使用
  常用库
  以下为robotframework常用标准库无需安装,但需导入才能使用
  ·BuiltIn:包含常用关键字,是默认库,已自动导入,可以直接使用
  · String:处理字符串的库,可生成、修改和验证字符串
  · Collections:处理Python中的列表(list)和字典(dict)时会用到
  · Screenshoot:测试过程中截图时会用到
  · DateTime:时间库,可创建和验证时间
  以下为常见的扩展库,需通过pip安装后再导入使用,导包名称区分大小写,请在…\Python\Lib\site-packages目录下查看包名。
  · Selenium2Library:Web自动化测试库,安装命令:pip install robotframework-selenium2library
  · RequestsLibrary:API自动化测试库,安装命令:pip install robotframework-requests
  · AppiumLibrary:APP自动化测试库,安装命令:pip install robotframework-appiumlibrary
  RobotFramework主要是进行UI测试的,虽然能够进行接口测试和APP测试,但是很少用!测试API和APP有更好的方法和工具。
  Web项目测试案例
  需先安装浏览器驱动,以Chrome浏览器为例,先查看Chrome版本,然后下载相应版本的ChromeDriver,可通过官网,或者国内源(淘宝源、华为源等)下载。最后将文件放到Chrome安装目录即可,或者放到指定目录后添加到环境变量中。
  创建项目目录(注意类型需选择Directory),可在项目下创建子目录,然后创建测试套件,最后在测试套件中创建测试用例,流程及目录结构如下图所示:
  在测试套件中导入所需使用的库,第三方扩展库需要先安装再导入,库名区分大小写。
  使用默认库和Selenium2Library库中的关键字编写测试用例,如下图示例,使用关键字登录OpenStack页面,断言判断登录成功后等待5秒,最后关闭浏览器,Comment关键字和#号都是表示注释,关于元素定位,请查看此文章,id、name、xpath是常用的定位方法。
  勾选要执行的测试用例,点击Start按钮执行测试用例,完成后可查看测试报告和操作日志,测试用例图标绿色表示测试通过,蓝色表示用例执行中,红色表示测试未通过。
  至此一个基本的Web自动化测试用例完成,关于常用的高频关键字还是多敲多积累吧,此处就不罗列了,多使用快捷键F5搜索关键字,搜索关键字弹框中通常有关键字解释和示例,使用Ctrl+Shift+Space键可进行自动补全功能(关键字联想提示),在编辑用例页面(Edit)获取关键字解释,可按Ctrl键后,鼠标移至对应关键字,点击提示信息,关键字解释会以弹窗方式显示。
  用例前后置
  打开浏览器并访问登录页面设为前置条件,关闭浏览器设为后置条件,点击Setting >>展开设置,在Setup中添加前置条件,在Teardown中添加后置条件。
  关键字封装及传参
  · 自定义关键字
  在测试套件或资源文件上右键单击【New User Keyword】创建关键字,定义关键字名称和变量名。
  · 关键字提取
  选择关键字,右键点击Extract Keyword提取关键字,定义关键字名称及变量名,创建后左侧结构用例同级结构中显示自定义的关键字,将值改为变量名,进入用例tab可以看到变为自定义的关键字,填写的值会传给定义的变量名。
  创建资源文件
  在目录上右键选择Resource创建资源,文件格式建议选择TXT,其它格式也能正常运行,然后自定义的关键字拖拽到自定义关键字文件下,此时,用例中的关键字失效,变为黑色字体,用例执行会报错,处理办法是选择测试套件,点击Resource导入自定义关键字文件,蓝色表示导入成功,再次查看用例中的关键字也变为蓝色,此时用例可正确执行通过。
  使用PO模型完成测试
  基于PO模型编写用例,将用例进行分层设计,通常分为用例层、数据层和业务层,使用例可读性更高,更便于维护。
  如下案例,首先创建公共部分目录,在目录下创建公共数据资源文件,右键点击【New Scalar】,添加公共数据。
  然后在目录下创建公共元素资源文件,在文件中自定义公共关键字。
  因为PO模型是分层思想,并非规范,还可以进一步细分,比如:定义常用断言资源文件,常用业务流文件等。
  接下来创建登录目录,定义登录元素、登录业务及登录用例,登录元素定义和上文一样,就是定义各个操作步骤名称,与公共部分一样的可直接调用公共部分中的关键字,登录业务文件中定义的实际上是整个登录流程,导入所需的资源包后,调用关键字完成登录的流程。
  然后定义测试用例,首先创建登录套件,导入所需的资源包,在套件下创建测试用例,用例可使用定义的登录业务进行参数化测试,也可使用关键字重新编写测试流程,如下图所示:
  对于登录后才能操作的模块,可导入之前测试的登录模块后进行调用,如下图示例,登录操作需在第一步。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号