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框架,它提供了三大核心能力:面向接口的远程方法调 ...
随机推荐
- 说一下 HashMap 的实现原理?(未完成)
说一下 HashMap 的实现原理?(未完成)
- 一图一知-TS之泛型
- RxJava事件流变换者--操作符
对于Rxjava来说,操作符是它的一个非常重要的概念,如官网: 而上节上也贴了一下都有哪些操作符,其实还不少,所以有必要仔细学习一下关于操作符这块的东东,那操作符在Rxjava中扮演着什么样的角色呢, ...
- SpringBoot 配置 Tomcat SSL
SpringBoot 配置 Tomcat SSL SSL(Secure Sockets Layer , 安全套接层)是为网络通信提供安全及数据完整性的一种安全协议,SSL在网络传输层对网络连接进行加密 ...
- SQL拼串--小问题大毛病
用字符串拼接SQL串实现动态SQL语句,经常使用. 不过在拼接SQL串中有许多技巧和小陷阱 1.遗漏""和'' 错误案例: 错误结果: 发现没有数据产生..我还以为是连接错了数据库 ...
- python瞎练
需求:有不规则列表 singlelist3 = [ '总计', '每吨人工:', '总人工', 1748.07, '金额'],如果当前元素为字符串且该元素的下一个相邻位置仍为字符串,那么请在该元素后面 ...
- git下载代码的两种方式以及eclipse集成git
1.第一种使用tortoiseGit插件: 链接:https://pan.baidu.com/s/1ANDydwfaaVcUaqZDJWc_BQ 提取码:qgxt a.首先在setting中的Git中 ...
- Can't install '*' from pristine store, because no checksum is recorded for this file
svn同步时,提示clean up,但clean up 时提示: Error:Error performing cleanup for 'E:\project\projectProjectIDEA\b ...
- PHP mysqli_num_rows() 函数
<?php // 假定数据库用户名:root,密码:123456,数据库:RUNOOB $con=mysqli_connect("localhost","root& ...
- PHP mysqli_get_charset() 函数
mysqli_get_charset() 函数返回字符集对象. <?php $con=mysqli_connect("localhost","my_user&quo ...