欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

RobotFramework自动化测试

程序员文章站 2021-12-07 10:10:13
文章目录Robot介绍与环境搭建Robot特性初探Robot 技术架构WxPython GUI工具箱Robot Framework+RIDE安装使用教程第一个案例启动RIDELog关键字Robot介绍与环境搭建Robot特性初探Robot Framework是一个基于Python的,可扩展的关键字驱动的测试自动化框架,用于端到端验收测试和验收测试驱动开发(ATDD)。它可用于测试分布式异构应用程序,其中验证需要涉及多种技术和接口。更本质一点就是可以把你编写好的函数导出来,然后像写存储过程一样写代码....

RobotFramework自动化测试

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时,它会处理测试数据,执行测试用例并生成日志和报告。核心框架对测试中的目标一无所知,与它的交互由测试库处理。库可以直接使用应用程序接口,也可以使用低级测试工具作为驱动程序。

RobotFramework自动化测试
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

RobotFramework自动化测试
启动后界面如下,常规的一个窗口程序界面。
RobotFramework自动化测试

自定义一个函数

将以下代码使存到桌面,并命名为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,然后打印出返回的页面的代码。
RobotFramework自动化测试

新建项目及测试用例

主菜单----File----New Project。主要是填写项目名称(比如我这里是test),其他默认即可。Type/Format这种东西无非是存放格式的区别不必太在意。
RobotFramework自动化测试
在新建的项目上鼠标右键—New Test Case—输入测试用例(我这里是testCase1)名称点击OK。
RobotFramework自动化测试
经以上步骤项目和测试用例都已创建好,当前界面如下:
RobotFramework自动化测试

导入自定义库函数

对我们这里页言,自定义库就是前面的test_lib.py,库含数就是其中的get_url_source_code。左侧窗格选中项目,右侧窗格选中Edit选项卡,点击Library按钮,测试用例是不能导入库的,只有测试套件才可以导入库文件
RobotFramework自动化测试
通过Browse选中我们的test_lib.py,其他不用填,点击OK。
RobotFramework自动化测试
回到主窗口上可以看到导入了一个库(如果呈红色说明导入报错,一般是脚本代码有问题,可借助cmd窗口的输出进行定位)
RobotFramework自动化测试
在上边界面中使用F5键,唤出关键字搜索对话框,Source中下拉选中test_lib。如无意外,可以看到如下图我们脚本中的get_url_source_code被抽取成了Get Url Source Code关键字,注释这些也都有展现在上面(url那行没换行是\n和\r\n的问题)。
RobotFramework自动化测试

使用自定义函数

经过前面几步我们已经将自己写的函数导入了进来,下来看如何调用,这步也是Robot Framework(或者RIDE)的主要用法。
回到主窗口,左侧窗口选中测试用例,右侧窗口选中Edit选项卡,界面如下。测试用例就真的是测试用例,其中的1、2、3、4、5就是测试步骤,其中第一列是关键字(即本质上的函数),其后各列用于输入参数。
RobotFramework自动化测试
我们输入我们要使用的关键字“Get Url Source Code”(可使用Ctrl+Alt+Space获取补全提示),此时界面如下图。一列为粉红底色,表示需要一个参数;其余后续列为灰色表示不使用(但如果想的话可以把自己的注释写在这些灰色格子上)
RobotFramework自动化测试
我们把参数设置成“https://www.baidu.com”,此时再看界面如下,白色底表明填写上没有错误。
RobotFramework自动化测试

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

运行很简单,左侧窗格钩选要运行的测试用例,右侧窗格切换到Run选项卡,点击Start按钮。底部窗格的输出其实就只是我们在get_url_source_code函数中的打印。
RobotFramework自动化测试
点击Report和Log按钮查看生成的报告,可以看到主要仍旧只是把打印记录到文件里。
RobotFramework自动化测试

RobotFramework自动化测试

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