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框架,它提供了三大核心能力:面向接口的远程方法调 ...
随机推荐
- BootStrap【四、插件】
BootStrap插件基于: 1.BootStrap.js 2.BootStrap.js基于JQuery data属性 1.通过data属性控制页面交互 2.$(document).off('.dat ...
- 第一章、前端之html
目录 第一章.前端之html 一. html介绍 第一章.前端之html 一. html介绍 web服务本质 import socket sk = socket.socket() sk.bind((& ...
- 在idea中相同的字符串使用equals()进行比较时,返回值是flase问题
最近在idea中遇到了一个编码的问题,我的程序是从前台传过来一个字符串,判断用户的角色(学生,教师,管理员), 在进行equals()判断时,返回的确是false,然后就在网上查了查,发现是编码的问题 ...
- c#读取文件路径并保存在textBox2中
private void button1_Click_1(object sender, EventArgs e) { OpenFileDialog openFileDialog1 = new Open ...
- 自动化测试环境搭建(appium+selenium+python)
一.需要安装的软件(根据你所需要的版本安装即可,不一定必须按照小编的版本来) JDK:1.8.0_171 Python:3.7.1 node.js:10.13.0 android-sdk_r24.4. ...
- linux批量添加用户和批量修改密码
一.批量创建用户通过命令newusers可以实现批量的创建用户.这个命令的用法为 newusers file.txt(一个文本文件)文本文件内存放需要批量添加的用户信息但是对格式有要求格式:pw_na ...
- 洛谷-P3808-AC自动机(模板)
链接: https://www.luogu.org/problem/P3808 题意: 给定n个模式串和1个文本串,求有多少个模式串在文本串里出现过. 思路: 模板, 代码: #include < ...
- 菜鸟刷面试题(五、Java容器篇)
目录: java 容器都有哪些? Collection 和 Collections 有什么区别? List.Set.Map 之间的区别是什么? HashMap 和 Hashtable 有什么区别? 如 ...
- React-router的使用:标签跳转和编程式跳转
目录: 1.demo:NavLink 标签跳转 2.标签渲染路由组件时,获取url参数 3.编程式跳转 参考文档 1)https://reacttraining.com/react-router/we ...
- google中select添加onclick
有下拉跳转框如下所示: <select name="page" size="1" > <option onclick="refurb ...