如果你还想从头学起Robot Framework,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1770899.html

前言

在RF 测试库里面,分为三种测试库

  • 标准测试库
  • 扩展测试库
  • 远程测试库

标准测试库

啥是标准库

  • 它们随 Robot Framework 版本一同发布的测试库, 不需要单独安装,但部分标准库仍然需要手动导入
  • 只有 BuiltIn 库是自动导入,不需要手动导入

标准库类别

介绍
BuiltIn 常用 且 最基础 的关键字
Collections 用于处理 List 和 Dict 的关键字 
DateTime 支持创建和验证日期和时间值以及它们之间的计算
Dialogs 支持暂停测试执行并从用户那里获取输入数据
OperatingSystem 支持执行各种与操作系统有关的任务
Process  支持执行系统进程相关
Screenshot 截图
String 处理字符串和验证字符串内容
Telnet 支持连接到Telnet 服务器,并执行命令
XML 用于验证和修改 XML 文档

扩展测试库

啥是扩展测试库

标准库以外的其他测试库都统称为扩展测试库,它们是在 RF 开源社区实现的各种库;当然包括了你自己开发的测试库

常见的扩展测试库

常见领域 扩展库
Web 自动化测试

SeleniumLibrary

Selenium2Library

Selenium2Library for Java

watir-robot

Window GUI 测试

AutoItLibrary
移动端自动化测试

Android library

iOS library

AppiumLibrary

数据库测试

Database Library (Java)

Database Library (Python)

MongoDB library

HTTP测试

HTTP library (livetest)

HTTP library (Requests)

文件对比测试 Diff Library

远程测试库

啥是远程测试库

  • 是一个特殊的标准库,没有关键字
  • 它作为一个代理存在于 Robot Framework 和 实际(远程的)测试库中间
  • 实际的测试库可以运行在其它机器上, 而且实现语言也不再限于Robot Framework原生支持的编程语言

Library 导入测试库

直接看栗子

栗子说明

  • 下图项目目录结构,上面的栗子在第二个红圈的文件内
  • MyLibrary 的 两个 library 文件是自己创建的 Python 文件【属于用户自定义的关键字文件】

知识点

  • 测试库通常在  Setting 表格中声明  Library 来导入,库名称跟在  Library 后面.
  • 库名称既是大小写敏感的,也是空格敏感
  • 如果一个测试库是在某个包里的,则必须指明完整的包名称路径【如: MyLibrary.library2 】
  • 测试库的参数也可以使用默认值,不定数量参数【如: MyLibrary.library1 arg1 agr2 】
  • 测试库名称和参数都可以使用变量【如: Library ${LIBRARY} ,其实导入的是 DateTime 库】

可以导入测试库的文件包括

  • 测试用例文件
  • 资源文件
  • test suite initialization files【测试条件初始化文件,后面讲】

所有这些场景中,一旦在这些文件中导入了测试库,则测试库中所有关键字在当前文件内都是可见的

对于资源文件,这些关键字在引用这些资源文件的地方也是可见的

Import Library 导入测试库

  • 导入测试库的另一种方式是使用  BuiltIn  库提供的关键字 Import Library
  • 该关键字也可以传参数
  • 导入的关键字在当前的测试套件中可用
  • 当测试库在测试执行前不能导入( Settings 中不能导入),只能在执行过程中通过某些关键字来启用时,就可以用 Import Library 来导入某些关键字

测试库设置别名

别名大家应该都知道,就是为了避免不同测试库但是关键字重名的情况

简单栗子

知识点

指定别名是用 WITH NAME ,必须大写,小写会报错

传参数和别名指定关键字的栗子(忽略爆红)

知识点

  • 如果测试库要传参,则参数列表在WITH NAME 前面(如红圈)
  • 调用不同库但相同名字关键字的写法: 别名.guan jian zi (如箭头)

Robot Framework(5)- 使用测试库的更多相关文章

  1. Robot Framework - 2 - 创建测试库

    04- 创建测试库--基础概念 Robot Framework 实际的测试能力是由测试库提供的. ***** 支持的编程语言 Robot Framework 自身是用 Python 编写的,能使用 P ...

  2. Robot Framework - 建立本地测试环境

    注意:本文内容是以“在Window7系统中安装本地RobotFrmamework自动化测试环境”为例. Robot Framework简介 HomePage:http://robotframework ...

  3. Robot Framework常用的操作库列表

    标准库是Robot Framework可以直接导入使用的库,包含以下几类: Builtin:包含经常需要的关键字.自动导入无需import,因此总是可用的 Dialogs:提供了暂停测试执行和从用户的 ...

  4. Robot Framework - 基础关键字 BuiltIn 库(二)

    本篇教程,我们继续接着上篇内容进行讲解,我们本节教程讲解的是Robot Framework 机器人框架中的变量中使用判断.字符串的拼接.Evaluate的用法.调用Python文件.条件分支语句.以及 ...

  5. Robot Framework - 基础关键字 BuiltIn 库(一)

    今天给大家分享的是Robot Framework 机器人框架中 BuiltIn 基础库的使用...BuiltIn 库里面提供了很多基础方法助力于我们在自动化测试领域中做的更好!——本系列教程是教会大家 ...

  6. 学习Robot Framework必须掌握的库—-BuiltIn库

    作为一门表格语言,为了保持简单的结构,RF没有像别的高级语言那样提供类似if else while等内置关键字来实现各种逻辑功能,而是提供给了用户BuiltIn库.如果用户想在测试用例中实现比较复杂的 ...

  7. robotframework的学习笔记(十四)------学习Robot Framework必须掌握的库—-BuiltIn库

    作为一门表格语言,为了保持简单的结构,RF没有像别的高级语言那样提供类似if else while等内置关键字来实现各种逻辑功能,而是提供给了用户BuiltIn库.如果用户想在测试用例中实现比较复杂的 ...

  8. 【转】学习Robot Framework必须掌握的库—-BuiltIn库

    作为一门表格语言,为了保持简单的结构,RF没有像别的高级语言那样提供类似if else while等内置关键字来实现各种逻辑功能,而是提供给了用户BuiltIn库.如果用户想在测试用例中实现比较复杂的 ...

  9. 用Robot Framework+python来测试基于socket通讯的C/S系统(网络游戏)

    项目终于换了方案,改用socket来实现而不是之前的http了,所以测试工具就不能用以前的了,因为测试人手少,逼不得已的必须要挖掘更多的自动化方案来弥补.于是先研究了下python的socket解决方 ...

  10. robot framework学习五——AutoltLibrary库

    安装中遇到的问题: 安装好了AutoItLibrary,但是导入到RIDE后,仍然红色显示 搜索了下解决办法,说要安装下autoit-v3-setup.exe https://www.autoitsc ...

随机推荐

  1. 题解 CF1286A 【Garland】

    updata on 2020.3.19 往博客园搬的时候看了看自己以前写的blog 其实没多久,才两个多月,感觉自己之前写的东西好罗嗦啊.. 但也是最近写的blog才开始多起来 当然现在也没好到哪去. ...

  2. muduo网络库源码学习————线程特定数据

    muduo库线程特定数据源码文件为ThreadLocal.h //线程本地存储 // Use of this source code is governed by a BSD-style licens ...

  3. 数据库——数据库SQL语句大全,最常用的SQL语句

    检索数据 检索单个列: SELECT pname FROM product 检索多个列: SELECT pname,market_price,is_hot FROM product 检索所有列: SE ...

  4. ztree根据参数动态控制是否显示复选框/单选框(静态JSON数据)

    本文不再更新,可能存在内容过时的情况,实时更新请访问原地址:ztree根据参数动态控制是否显示复选框/单选框(静态JSON数据): 现有全省各地区静态JSON数据,现在想通过Url参数,动态控制是否显 ...

  5. 201771010113-李婷华 实验一 软件工程准备-<软件工程的相关了解>

    项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE 这个作业要求链接 https://www.cnblogs.com/nwnu- ...

  6. 【FPGA篇章四】FPGA状态机:三段式以及书写方法

    欢迎大家关注我的微信公众账号,支持程序媛写出更多优秀的文章 状态机是fpga设计中极其重要的一种技巧,状态机通过不同的状态迁移来完成特定的逻辑操作,掌握状态机的写法可以使fpga的开发事半功倍. 状态 ...

  7. 【Spark】通过SparkStreaming实现从socket接受数据,并进行简单的单词计数

    文章目录 步骤 一.创建maven工程并导入jar包 二.安装并启动生产者 三.开发SparkStreaming代码 四.查看结果 步骤 一.创建maven工程并导入jar包 <properti ...

  8. OpenCV之Mat类使用总结

    #前言 Mat 是Opencv中很常用的一个图像容器类,图像在计算机中的存储形式是二进制字节流,其本质的存储形式如下图所示: 而一张图片是由很多像素点组成,单个像素点又会因为图像格式的不同而不同.例如 ...

  9. JDBC14 ORM03 JavaBean封装

    Javabean对象封装一条信息(推荐) 让JavaBean的属性名和类型尽量和数据库保持一致 一条记录对应一个对象,将这些查询到的对象放到容器中(List) 表信息如下 List封装多条信息 Con ...

  10. spring mvc json返回防止乱码

    乱码问题 乱码一直是编程的常见问题,spring mvc 返回json数据时可能导致乱码,需要在controller中添加如下代码: @RequestMapping("/test" ...