RobotFramework自动化测试

2022-08-07,,

文章目录

  • Robot介绍与环境搭建
    • Robot特性初探
    • Robot 技术架构
    • WxPython GUI工具箱
    • Robot Framework+RIDE安装
  • 第一个案例
    • 启动RIDE
    • 自定义一个函数
    • 新建项目及测试用例
    • 导入自定义库函数
    • 使用自定义函数
    • 运行测试用例及查看其报告

Robot介绍与环境搭建

Robot特性初探

Robot Framework是一个基于Python的,可扩展的关键字驱动的测试自动化框架,用于端到端验收测试和验收测试驱动开发(ATDD)。它可用于测试分布式异构应用程序,其中验证需要涉及多种技术和接口。更本质一点就是可以把你编写好的函数导出来,然后像写存储过程一样写代码,达到降低难度的目的。比如你在python文件中写好了一个函数login_system(username,password),然后Robot Framework就可以导出为Login System,别人写脚本时就可以写成Login System username password。

  1. 启用易于使用的表格语法,以统一的方式创建测试套件、用例
  2. 提供从现有关键字创建可重复使用的更高级别关键字的功能
  3. 提供易于阅读的结果报告和HTML格式的日志
  4. 为Selenium提供Web测试,GUI测试,运行进程,Telnet,SSH等支持
  5. 支持创建数据驱动的测试用例
  6. 内置对变量的支持,支持if、for语句特别适用于不同环境下的测试

Robot 技术架构

该测试数据是简单,易于编辑表格格式。启动Robot Framework时,它会处理测试数据,执行测试用例并生成日志和报告。核心框架对测试中的目标一无所知,与它的交互由测试库处理。库可以直接使用应用程序接口,也可以使用低级测试工具作为驱动程序。

Libraries Tool:Selenium、Request

WxPython GUI工具箱

WxPython是Python编程语言的一个GUI工具箱。他使得Python程序员能够轻松的创建具有健壮、功能强大的图形用户界面的程序。

Robot Framework+RIDE安装

RIDE是使用wxPython库编写的Robot Framework的图形界面。虽然Robot Framework的使用者仍是程序员。但有了RIDE图形界面则可以算一套工程化的管理工具,对初学者而言Robot Framework其实也是讲通过RIDE使用的方式。

安装方法千千万,pip大法最简单。直接使用pip安装ride就可以了,Robot Framework、wxPython等依赖库都会自动安装好。

pip install robotframework-ride

第一个案例

启动RIDE

进入自己当前python环境的Scripts目录(比如我这里是F:\PyChram\robot\Scripts)使用以下命令启动ride:

pythonw ride.py

启动后界面如下,常规的一个窗口程序界面。

自定义一个函数

将以下代码使存到桌面,并命名为test_lib.py

import urllib.request

def get_url_source_code(url):
    """这个函数的功能是获取传来的url页面的代码并打印
        url----形如https://www.baidu.com"""
    request_obj=urllib.request.Request(url)
    response_obj=urllib.request.urlopen(request_obj)
    html_source_code=response_obj.read().decode('utf-8')
    print(html_source_code)

# 这个main只是用于运行演示,作为Robot Framework的库是不需要的
if __name__ == "__main__":
    url = "https://www.baidu.com"
    get_url_source_code(url)

我们先看一下直接运行的结果,在main中传入的百度的url,然后打印出返回的页面的代码。

新建项目及测试用例

主菜单----File----New Project。主要是填写项目名称(比如我这里是test),其他默认即可。Type/Format这种东西无非是存放格式的区别不必太在意。

在新建的项目上鼠标右键—New Test Case—输入测试用例(我这里是testCase1)名称点击OK。

经以上步骤项目和测试用例都已创建好,当前界面如下:

导入自定义库函数

对我们这里页言,自定义库就是前面的test_lib.py,库含数就是其中的get_url_source_code。左侧窗格选中项目,右侧窗格选中Edit选项卡,点击Library按钮,测试用例是不能导入库的,只有测试套件才可以导入库文件

通过Browse选中我们的test_lib.py,其他不用填,点击OK。

回到主窗口上可以看到导入了一个库(如果呈红色说明导入报错,一般是脚本代码有问题,可借助cmd窗口的输出进行定位)

在上边界面中使用F5键,唤出关键字搜索对话框,Source中下拉选中test_lib。如无意外,可以看到如下图我们脚本中的get_url_source_code被抽取成了Get Url Source Code关键字,注释这些也都有展现在上面(url那行没换行是\n和\r\n的问题)。

使用自定义函数

经过前面几步我们已经将自己写的函数导入了进来,下来看如何调用,这步也是Robot Framework(或者RIDE)的主要用法。
回到主窗口,左侧窗口选中测试用例,右侧窗口选中Edit选项卡,界面如下。测试用例就真的是测试用例,其中的1、2、3、4、5就是测试步骤,其中第一列是关键字(即本质上的函数),其后各列用于输入参数。

我们输入我们要使用的关键字“Get Url Source Code”(可使用Ctrl+Alt+Space获取补全提示),此时界面如下图。一列为粉红底色,表示需要一个参数;其余后续列为灰色表示不使用(但如果想的话可以把自己的注释写在这些灰色格子上)

我们把参数设置成“https://www.baidu.com”,此时再看界面如下,白色底表明填写上没有错误。

运行测试用例及查看其报告

运行很简单,左侧窗格钩选要运行的测试用例,右侧窗格切换到Run选项卡,点击Start按钮。底部窗格的输出其实就只是我们在get_url_source_code函数中的打印。

点击Report和Log按钮查看生成的报告,可以看到主要仍旧只是把打印记录到文件里。

本文地址:https://blog.csdn.net/lsqzedu/article/details/107279242

《RobotFramework自动化测试.doc》

下载本文的Word格式文档,以方便收藏与打印。