Python3+RobotFramewok 快速入门(二)
1. 原理
首先解释一下RF的工作原理,官方文档介绍就不赘述了,笔者就框架架构做出一个更加具体的描述

测试套及测试用例集(Test Data即需要用户编写的脚本)通过RF特定的语法解析,然后知道用户要做什么事,通过RF的API接口调用内置关键字和第三方库(也可以称库关键字),通过Test Libraries再去操作被测系统,收集结果并断言是否符合预期,输出测试报告,这样描述应该比较通俗易懂了,这个框架的可扩展性就在于Test Libraries的开发,只要按照RF框架特定的语法要求完成自定义库的个性开发,就可以完成扩展,用户需要关心和维护就只有Test Data和Test Libraries。
2. 测试用例
先弄明白几个概念:目录,测试套件,测试用例

创建测试用例:New Project -> New Directory -> New Suite -> New Test Case
这里还有特殊的文件Resource,该文件一般是robot或者txt格式的文件,用于编写用户自定义关键字,使用时需要在测试套件里面导入。
3. 关键字
RF关键字包括内置关键字、库关键字、用户关键字。
(1)内置关键字:不需要import,如:BuiltIn,下面总结常用的内置关键字

(2)库关键字:需要import,在测试套件或者Resource文件编辑菜单,点击Library或者Resource,如:RequestsLibrary,Selenium2Library

(3)用户关键字:需要import,导入用户自定义编写关键字Resource文件

4. 变量
变量包括Scalar,List,Dict,可以选择在测试套件或者Resource文件编辑菜单下面添加,也可以在用例使用关键字创建Set Global Variable/Set Variable。
Scalar:一般的全局变量可以用这个,格式${}
List:列表变量,格式@{}
Dict:字典变量,格式&{}
5. Setup和Teardown
Setup:包括测试套级别和测试用例级别,意思是在执行测试套件之前或者执行测试用例之前执行,一般用于前置条件
Teardown:包括测试套级别和测试用例级别,意思是在执行测试套件之后或者执行测试用例之后执行,一般用于执行完用例或者测试套件之后清理测试环境
执行顺序:Suite Setup -> Test Setup -> Test Case -> Test Teardown -> Suite Teardown
6. 标签
标签包括Force Tags和Default Tags,在选择执行用例的时候,标签很实用。
Force Tags:该测试套件下所有测试用例全部打上force tags
Default Tags:该测试套件下测试用例没有打标签的用例默认打上Default Tags
7. 快捷键

Python3+RobotFramewok 快速入门(二)的更多相关文章
- python3.5+django2.0快速入门(二)
昨天写了python3.5+django2.0快速入门(一)今天将讲解配置数据库,创建模型,还有admin的后台管理. 配置数据库 我们打开mysite/mysite/settings.py这个文件. ...
- Linux Bash Shell快速入门 (二)
BASH 中的变量介绍BASH 中的变量都是不能含有保留字,不能含有 "-" 等保留字符,也不能含有空格. 简单变量在 BASH 中变量定义是不需要的,没有 "int i ...
- Mysql快速入门(二)
多表关联查询 JOIN 按照功能大致分为如下三类: CROSS JOIN(交叉连接) INNER JOIN(内连接或等值连接). OUTER JOIN(外连接) 交叉连接 交叉连接的关键字:CROSS ...
- Ant快速入门(二)-----使用Ant工具
使用Ant非常简单,当正确安装Ant后,只要输入ant或ant.bat即可. 如果运行ant命令时没有指定任何参数,Ant会在当前目录下搜索build.xml文件.如果找到了就以该文件作为生成文件,并 ...
- mybatis快速入门(二)
这次接着上次写增删改查吧. 现将上节的方法改造一下,改造测试类. package cn.my.test; import java.io.IOException; import java.io.Inpu ...
- python3爬虫-快速入门-爬取图片和标题
直接上代码,先来个爬取豆瓣图片的,大致思路就是发送请求-得到响应数据-储存数据,原理的话可以先看看这个 https://www.cnblogs.com/sss4/p/7809821.html impo ...
- jquery 快速入门二
---恢复内容开始--- 操作标签 样式操作 样式类 addClass();//添加指定的CSS类名. removeClass();//移除指定的类名. hasClass();//判断样式不存在 to ...
- Solr.NET快速入门(二)
字典映射和动态字段 Solr dynamicFields可以根据用例不同地映射. 它们可以被"静态地"映射,例如,给定: <dynamicField name="p ...
- Dubbo快速入门 二
2.dubbo核心概念 2.1).简介 Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能.轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调 ...
随机推荐
- 一周死磕fastreport ----ASP.NET (一)
https://blog.csdn.net/wuyuander/article/details/52692435 原文链接,点击跳转 首先是安装好FastReport .net: 然后在vs2012中 ...
- 010.简单查询、分组统计查询、多表连接查询(sql实例)
-------------------------------------day3------------ --添加多行数据:------INSERT [INTO] 表名 [(列的列表)] --SEL ...
- ARM体系结构与编程读书笔记——处理器的寄存器
ARM处理器共有37个寄存器,其中包括: 31个通用寄存器,包括程序计数器(PC)在内,寄存器都是32位: 6个状态寄存器,这些寄存器都是32位的,目前只使用了其中12位: 通用寄存器 可以分为下面3 ...
- thymeleaf的内联th:inline(在javascript访问model中的数据)
thymeleaf模板引擎为前端数据的获取提供了较大的便利,在html标签内可通过th标签加${}表达式访问model里的对象数据.但如果不想通过th标签而是简单地访问model对象数据,或是想在ja ...
- linux firewall指令
CentOS7中firewall防火墙详解和配置,.xml服务配置详解修改防火墙配置文件之前,需要对之前防火墙做好备份 重启防火墙后,需要确认防火墙状态和防火墙规则是否加载,若重启失败或规则加载失败, ...
- Python Flask学习笔记(1)
1.搭建虚拟环境 a. 安装 virtualenv : pip3 install virtualenv b. 建立虚拟环境 : 任意目录下建立一个空文件(我的是 Py_WorkSpace) ,在该文件 ...
- Ubuntu系统---安装QQ
使用Ubuntu很不方便,如果有什么消息的话,还要回到windows中查看.预想在Ubuntu上直接安装一个QQ,有网友说使用WebQQ发现老是掉线,于是这里安装QQ国际版. 首先,下载安装包. 这里 ...
- MessageBox和ShellExecute初体验
#include <stdio.h> //包含头文件,标准输入输出库 #include <windows.h> //包含windows头文件,ShellExecute正来自于此 ...
- NodeList对象的特点
nodeList对象的特点1,nodeList是一种类数组对象,用于保存一组有序的节点.2,通过方括号来访问nodeList的值,有item方法与length属性.3,它并不是Array的实例,没有数 ...
- BZOJ 4152: [AMPPZ2014]The Captain Dijkstra+贪心
Code: #include <queue> #include <cstdio> #include <cstring> #include <algorithm ...