robotframework自动化测试修炼宝典_Robot Framework原理精讲

Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。

官网:http://robotframework.org

RF框架是基于python 的,所以一定要有python环境。robotframework 本质就是python的一个模块,安装它的命令是:

pip install robotframework

谈到RF就要介绍一下Robot framework-ride, 它是一个图形界面的用于创建、组织、运行测试的软件。Ride也是一个Python的模块,安装它的命令是:

pip install robotframework-ride

从RIDEv1.7.3.1开始支持python3(兼容Python 2.7 和 >=3.6)。Ride并不是RF的核心模块,但是使用Ride,因为它友好的UI设计,提高了用户的体验和用例的编写效率。下图1是Ride UI页面,而图2是与图1对应的RF的脚本页面。

14ac42531a28371b9faab75427415d1d.png

图1.Ride UI页面

a06b7dfa8b4d55913c792f277cef60fc.png

图2.RF的脚本页面

用过RF的同学都深有体会,RF真是无所不能,可以做web自动化测试、移动端自动化测试、windows自动化测试,接口自动化测试,全面覆盖测试领域。在这里我就重点解析一下RF的无所不能。它之所以让大家感觉到无所不能,是因为在这个框架中我们可以方便的使用各种扩展类库。想使用Robotframework实现不同的功能,那么就要先安装与其功能对应的类库并导入使用类库。扩展库的安装方法与安装python模块一样,使用pip命令即可。例如安装selenium扩展库的命令如下:pip install robotframework-seleniumlibrary。

安装成功后,在[PYTHON目录]Libsite-packagesSeleniumLibrary目录下可以找到扩展库。然后我们就可以在RF中引入SeleniumLibrary进行web相关的自动化测试了,做web自动化测试并不是RF的api实现的,而是RF借用selenium的api实现的。同理,我们可以使用appiumlibrary做Android和iOS测试,其本质使用的是appium;使用HTTP library做http请求发送和解析测试,其本质使用requests模块。使用autoitlibrary做Windows的GUI测试,其本质使用AutoIt。总之RF就是一个基础框架,提供用例管理,用例运行以及生成测试报告等测试的基础功能,然后你想做哪方面的测试就需要安装对应的python模块,而我们的RF本身并不提供例如web测试、移动测试和接口测试的功能。

使用RF确实可以大幅度地提升自动化测试效率,但是对于测试小白来讲我真心不建议大家从RF开始上手自动化测试,因为这个框架的封装,使得大家在完全不需要编码的前提下,就能够完成基础的自动化测试工作,而目前编码是测试人员的刚需,自动化测试又是测试人员提升编码的最佳实践,所以大家上手自动化测试还是先从Selenium或者appium入门,待编码技能成熟后再使用RF也为时不晚。


http://www.niftyadmin.cn/n/1849350.html

相关文章

LFS笔记 01 预工具链

2019独角兽企业重金招聘Python工程师标准>>> 预工具链是一个过渡工具链,由原工具链生成,用于生成临时工具链。 汇编链接器Binutils 创建目录 mkdir -v ../binutils-build cd ../binutils-build configure ../binutils-2.23.1/configure …

浏览器的编程接口。

目前Browser的编程接口有两个:一个是Java script,一个是W3C规定的DOM接口。前者是Browser亲生的,因为Java Script解释器和浏览器的渲染引擎紧密结合在一起,效率高,效果好。而且从商业角度考虑,大多数页面离…

python命令行调用gdb_如何将参数传递给从命令行启动的python gdb脚本 - python

我想将一些命令行参数传递给通过gdb命令运行的python脚本,但是在python中导入gdb模块会从sys中删除argv属性。如何在示例中显示的python脚本中访问arg1和arg2?命令行执行:$ gdb -x a.py --args python -arg1 -arg2a.py:#!/usr/bin/env pythonimport gdbi…

Node.js安装(NPM 使用介绍)

下载 打开https://nodejs.org 下载安装包并打开 全部按照默认点击下一步 然后打开cmd 输入 node --version 新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以通过输入 "npm --version" 来测试是否成功安装。命令如下,出现版本…

python制作界面怎么触发事件_python模拟事件触发机制详解

本文实例为大家分享了python模拟事件触发机制的具体代码,供大家参考,具体内容如下EventManager.py# -*- encoding: UTF-8 -*-# 系统模块from queue import Queue, Emptyfrom threading import *class EventManager:def __init__(self):"""…

【Cocos2d-x基础概念】CCArray

2019独角兽企业重金招聘Python工程师标准>>> #Cocos2d-x-API-详解-CCArray ###CCArray-API的简单介绍 CCArray继承与CCObject类&#xff0c;只是提供了一个面向对象的封装类 创建 <!-- lang: cpp --> static CCArray* create();/** Create an array with some…

com中用bool类型。

在com用用bool类型&#xff0c;还是有些讲究。1. 如果你只是给c或java使用&#xff0c;可以用boolean.其他语言不支持。2. 你要是提高自动化变量VARIANT_BOOL,他的类型值是VARIANT_TRUE或者VARIANT_FALSE.com中可以自定义HRESULT的值。一般用S_OK&#xff0c;表示函数调用成功。…

苹果助手一键安装_iphone用爱思助手是如何刷机的

此教程只推荐给纯小白用 1、首先下载安装最新版爱思助手&#xff0c;用数据线把移动设备连接到电脑&#xff1b;点击上方“刷机越狱”进入到“一键刷机”界面&#xff0c;连接成功会自动匹配固件&#xff1b; 如果移动设备无法正常开机或移动设备已停用、无法解除密码锁等情况&…