如果你还想从头学起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. socket编程-多个客户端向服务器发送人脸照片,服务器返回识别结果(服务器使用多线程)...

    recognition.py import numpy as np import face_recognition import os class recognition: def __init__( ...

  2. Mybatis详解系列(五)--Mybatis Generator和全注解风格的MyBatis3DynamicSql

    简介 Mybatis Generator (MBG) 是 Mybatis 官方提供的代码生成器,通过它可以在项目中自动生成简单的 CRUD 方法,甚至"无所不能"的高级条件查询(M ...

  3. C++编程入门--No.7

    输出特殊图案,请在c环境中运行,看一看,Very Beautiful! 1.程序分析:字符共有256个.不同字符,图形不一样. 2.程序源代码: #include "stdio.h" ...

  4. B. Preparing for Merge Sort

    \(考虑的时候,千万不能按照题目意思一组一组去模拟\) \(要发现每组的最后一个数一定大于下一组的最后一个数\) \(那我们可以把a中的数一个一个填充到vec中\) #include <bits ...

  5. 猫狗大战("简单的二维背包")

    题面:https://www.luogu.com.cn/problem/P1489 看上去是一道简单的二维费用背包,但是要特别小心循环顺序. Ⅰ先循环物品,再循环限制条件. Ⅱ每一个限制条件都必须从后 ...

  6. 树形dp compare E - Cell Phone Network POJ - 3659 B - Strategic game POJ - 1463

    B - Strategic game POJ - 1463   题目大意:给你一棵树,让你放最少的东西来覆盖所有的边   这个题目之前写过,就是一个简单的树形dp的板题,因为这个每一个节点都需要挺好处 ...

  7. vue项目兼容ie

    一.兼容ES6 Vue 的核心框架 vuejs 本身,以及官方核心插件(VueRouter.Vuex等)均可以在 ie9 上正常使用.但ie不兼容es6,所以需要安装插件将“Promise”等高级语法 ...

  8. 报错:Maven创建An internal error occurred during: "Retrieving archetypes:". Java heap space

    在Eclipse中创建Maven的Web项目时出现错误:An internal error occurred during: "Retrieving archetypes:". J ...

  9. 【不断更新】mysql经典50道题自我练习

    mysql经典50道题自我练习 测试数据和练习题均转载自CSDN博主@启明星的指引的文章sql语句练习50题(Mysql版),用于mysql的每日自我练习 表名和字段 –1.学生表 Student(s ...

  10. Web(4)servlet

    一.servlet.GenericServlet.HttpServlet 1.servlet具有四个生命周期方法 特性:单例模式,线程不安全,效率高 2.servletConfig接口对应根元素对应的 ...