Robotframework-Ride 编辑自动化脚本

前言

自动化测试这个词已经不再陌生,自动化框架、工具多种多样层出不穷,例如,uiautomator、unittest、selenium、Appium等等。
在《软件测试艺术》书中,写到:程序测试是为了发现错误而执行的过程,自动化测试是我们通过代码手段将测试用例变为测试脚本,从而转变为机器自动执行测试的过程。
自动化测试前首先要了解项目是否是一个长期维护的项目,其次分析项目、模块是否适用,满足条件后编写测试脚本,为测试提供有力保障,本文主要介绍一款python编写的功能自动化测试框架- Robot Framework。

Robot Framework

Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。

Robot Framework特性

1.测试用例使用文本文件(TXT或者TSV文件)保存,使用制表符分隔数据。可以方便的使用任何文本编辑器,或者EXCEL编辑测试用例。也可以使用HTML格式创建用例。
2.测试用例中支持变量使用,可以使用IF语句和FOR循环语句。
3.可以利用“标签”功能对测试用例进行分类和有选择执行。
4.支持关键字驱动、数据驱动和行为驱动。
5.测试执行报告和日志是HTML格式,容易阅读。
6.Robot Framework并不是一款像QTP一样的自动化测试工具。它是一个自动化测试框架,或者说是一个自动化测试平台。
7.Robot Framework是通过测试库识别被对象、操纵被测对象,有很多自带的或者第三方的开源测试库。例如,使用“seleniumLibrary”库测试web客户端。此外还可以测试java客户端、Win32客户端、SSH协议的字符终端等。
8.测试人员可以使用Python和java创建自己需要的测试库。
9.提供了远程测试执行接口,可以进行分布式测试执行。

Robot Framework-RIDE

RIDE是一款专门用来编辑Robot Framework用例的软件,用Python编写并且开源。
在这里插入图片描述

环境搭建

前面已经说到了,Robot Framework是以python语言开发的一款测试框架,所以我们的电脑中一定要有python环境,可以直接通过pip直接安装,还可以在网上直接下载源码。
Pip安装:pip install robotframework。
源码下载:https://pypi.python.org/pypi/robotframework
解压后,执行命令“python setup.py install”进行安装。

Python环境变量配置

Python环境搭建,我选择的是python3.7.7版本
Python下载地址:https://www.python.org/进入网址后点击Downloads进入下载界面
在这里插入图片描述
选择要下载的python版本
在这里插入图片描述

进入对应版本界面后选择下载安装包,Windows选择Windows x86-64 executable installer下载
在这里插入图片描述
下载完成后会得到一个python.exe文件

在这里插入图片描述
双击.exe程序,会出现安装界面
在这里插入图片描述
点击Customize installation 自定义安装,出现以下界面,不用做改动直接点击Next按钮
在这里插入图片描述
点击Next按钮后会显示目录选择界面,此时我们将路径改为在C盘根目录下,例如:
C:\python\python37,然后其他选项可以不做改动,然后点击Install按键,进行最后的安装
在这里插入图片描述
进入安装状态等待安装结束即可
在这里插入图片描述
安装完成点Close关闭即可
在这里插入图片描述

环境变量的配置

1.右键我的电脑 -> 属性 -> 高级配置 -> 环境变量
2.选择系统变量中的Path双击或者选中后点击编辑按钮
在这里插入图片描述
环境变量界面,点击新增将python的环境放进去,首先将python的安装目录加入进去,再将python下的Scripts目录加入进去,加入完成后就可以点击确定保存了。
在这里插入图片描述
检查一下是否安装配置成功
首先打开cmd窗口,Win+R(运行输入cmd)
在这里插入图片描述
输入python ––version,若出现版本信息则代表安装成功。
在这里插入图片描述

RIDE相关模块安装

1.安装WxPython,因为Robotframework的可视化界面ride就是用其开发的。
2.安装Robot framework用Python编写的用来写自动化测试用例的框架。
3.安装Robotframework-ride 用于创建、组织和运行测试用例的软件。
4.安装Robot framework-seleniumlibrary,本文我们引入seleniumlibrary用于web自动化测试,里面包含了很多封装好的关键字,例如打开浏览器、关闭浏览器等等,同时它也支持其他library。

拓展-RIDE测试库分类

1.web端自动化测试:SeleniumLibrary,Selenium2Library,Selenium2Library for Java、watir-robot 等。
2.Windows GUI 测试:AutoItLibrary。
3.移动端测试:Android library、iOS library、AppiumLibrary 等。
4.数据库测试:Database Library (Java)、Database Library (Python)、MongoDB library 等。
5.文件对比测试:Diff Library。
6.HTTP 测试:HTTP library (livetest)、HTTP library (Requests)等。

RobotFramework-ride使用

界面启动

ride安装完后在CMD输入ride.py启动 备注:如果无法启动是因为缺少 wxPython,安装后即可(pip install wxpython)
在这里插入图片描述

创建新的工程

首先点击菜单栏的 File—>New Project。(这里选择”Directory“,因为我们要创建一个文件夹来存放用例,其实用File也可以,看自己需求吧)
在这里插入图片描述

创建测试套件(Suite)

右击新创建的文件“testBaidu”——>点击“New Suite
在这里插入图片描述

创建测试用例(Test Case)

右击新创建的文件“New Suite”——>点击” New Test Case”
在这里插入图片描述

引入Library

1.点击创建好的测试套,选择添加Library
2.添加好以后文件名是黑色的,如果是红色,则说明加载不成功,需要检查库文件是否已安装,或者名称是否正确
在这里插入图片描述

编写脚本

用例情景如下:
a.打开浏览器进入百度主页
b.在搜索框中输入搜索文字” test”
c.点击搜索按钮
d.等待10s
e.关闭浏览器
在这里插入图片描述

运行脚本

选择测试用例,点击菜单栏的”Tools“—>“Run Tests”,或者直接点击运行图标,在运行过程中可暂停、终止。
在这里插入图片描述

报告与日志

框架自带html报告及LOG展示
在这里插入图片描述

异常情况

1.执行报No keyword with name ‘Open Browser’ found.代表可能selenium版本过高了,尝试降低版本例如3.14.0
2.打开谷歌浏览器报错,检查是否安装了chrome并将其放在了python环境下,并且检查是否python环境配置到了环境变量中
3.程序在打开chrome浏览器时报错,可能是chromedriver版本和chrome浏览器版本不兼容,先查看当前浏览器版本,再查看chromedriver版本,若不复合的话,重新下载一个对应浏览器版本的chromedriver再运行就可以了。
4.Log输出中文乱码,解决方法:Python 安装路径下修改 \Lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py 文件,将 ‘SYSTEM’: SYSTEM_ENCODING,改成 ‘SYSTEM’: OUTPUT_ENCODING

拓展-封库与界面修改

前面也说到了robotframework开源支持二次开发,所有我们可以自己重新创建一个新的libray,同时也可以修改、增加已有的libray。

1.自定义libray

首先在Lib\site-packages目录创建NewLibrary文件夹,此文件夹就是最后要导入的库,,文件名可以自定义。
在文件夹下创建文件xxx.py和__init__.py,在xxx.py内写入我们要封装的内容,举例:

# coding:utf-8
import requests
class xxx (object):
    def post_cookies(self, url, uri, payload, cookies): 
        r = requests.post(url+uri, json=payload, cookies=cookies)
        return r

打开__init__.py文件,写入如下,注意:类名要和第一步的文件夹名一致,入参要与上面的模块名一致

# coding:utf-8
from xxx import xxx
class CustomLibrary(post_cookies):
	ROBOT_LIBRARY_SCOPE = 'GLOBAL'\

打开ride界面导入library,如果没有报红则代表引入成功

2.修改已有libray

我们拿seleniumlibrary举例,进入到seleniumlibrary文件下
在这里插入图片描述
选择想要修改的文件进入,以selectelement.py 举例:
在这里插入图片描述
@Keyword这个必须要加,因为只有加了标签才可以在脚本编辑时调用,三个双引号里是对这个关键字的描述,表格边缘以 | 表示,看一下例子:
在这里插入图片描述
其中带有标签的是我们使用的关键字,下面的_get_Test是具体的实现方法,我们来引入测试一下
在这里插入图片描述

出现以上的内容就代表引入成功了,由此我们就可以正常使用自己封装的关键字了。

3.UI修改

Ride的UI也是可以修改的,目录就python环境下的\Lib\site-packages\robotide里,可以根据实际需要来求改,举个两个例子:
3.1将某个title修改
修改前
在这里插入图片描述
修改代码位置(截图中有文件所在位置)
在这里插入图片描述

运行结果

在这里插入图片描述
将提示框内容修改
修改前
在这里插入图片描述
修改代码位置(截图中有文件所在位置)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

结语

自动化测试可以快速自动完成大量测试用例,节约人工测试成本,对于需求稳定变更不频繁的项目,可以节省很多测试的时间。使用RIDE编写测试用例非常方便,而且它提供了日志记录功能,对用例运行过程中出现的各种情况都进行的详细记录,这样在用例运行失败的时候就很容易找到错误的地方了
探索更多的更新的测试技术,让我们的测试变得简单变得快乐。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值