RF框架(三)_ 常用内置关键字库和第三方库介绍

2021-03-22 11:37:49 浏览数 (1)

一、Robot Framework介绍

RF官网:https://robotframework.org/

Robot Framework是通用的开源自动化框架。它可以用于测试自动化和Robot过程自动化(RPA)。

Robot Framework使用易于理解的关键字,语法简单。它的功能可以通过使用Python或Java实现的库进行扩展。该框架周围有一个丰富的生态系统,由作为独立项目开发的库和工具组成。

Robot Framework本身是根据Apache License 2.0发布的开源软件,并且该生态系统中的大多数库和工具也是开源的。该框架最初由诺基亚网络开发,并于2008年开源。

TEST CASE

代码语言:javascript复制
* Settings ***
Documentation     A test suite with a single test for valid login.
...
...               This test has a workflow that is created using keywords in
...               the imported resource file.
Resource          resource.txt

*** Test Cases ***
Valid Login
    Open Browser To Login Page
    Input Username    demo
    Input Password    mode
    Submit Credentials
    Welcome Page Should Be Open
    [Teardown]    Close Browser

二、RobotFramework内置库

1、安装robotframework
代码语言:javascript复制
pip install robotframework

tip:安装成功如下图所示:

tip: 安装成功后,内置库的源码位置:

2、内置库的概念

RF内置库官网:http://robotframework.org/robotframework/#standard-libraries

内置库实际在官网称为standard library,就是标准库。标准库是直接绑定在RF内的,无须再下载。 对于标准库,又分两类,类似BuiltIn库是RF自动加载到内存的,安装后按下F5就能直接使用,不需要再次import,而其它库需要再次import才能正常使用。因为BuiltIn library 提供了很多常用的关键字,比如Should Be Equal,Convert To Integer等,故RF把这个常库自动加载到了内存。

3、有哪些常见的内置库

Library Name

描述

官方文档

Builtin

包含经常需要的关键字。自动导入无需import

http://robotframework.org/robotframework/latest/libraries/BuiltIn.html

Collections

提供一组关键词处理Python列表和字典

http://robotframework.org/robotframework/latest/libraries/Collections.html

OperatingSystem

允许执行各种操作系统相关的任务,使各种操作系统相关的任务在robot framework正在运行的系统中执行

http://robotframework.org/robotframework/latest/libraries/OperatingSystem.html

String

用于生成、修改和验证字符串的库

http://robotframework.org/robotframework/latest/libraries/String.html

Telnet

支持连接到Telnet服务器上打开的连接执行命令

http://robotframework.org/robotframework/latest/libraries/Telnet.html

XML

用于生成、修改和验证XML文件的库

http://robotframework.org/robotframework/latest/libraries/XML.html

DateTime

日期和时间转换的库,支持创建和验证日期和时间值以及它们之间的计算

http://robotframework.org/robotframework/latest/libraries/DateTime.html

三、RobotFramework第三方库

1、External Libraries 第三方库

Library Name

描述

AppiumLibrary

Android和iOS测试库,内部使用的是appium

AutoItLibrary

Windows的GUI测试库,使用AutoIt的免费工具作为驱动

Archive library

用于处理zip和tar压缩文件

AutoItLibrary

Database Library (Python)

基于Python数据库测试库,支持任何Python解释器,包括Jython

DataDriver Library

用于外部数据驱动的测试,外部数据源可以是csv、xls、xlsx等

Diff Library

比较两个file的差异的库

robotframework-faker

faker库(一个假测试数据生成器)

FTP library

测试和使用FTP服务的库

HTTP library (livetest)

内部使用LiveTest工具的HTTP测试的库

HTTP library (Requests)

内部使用Request的HTTP测试的库

HttpRequestLibrary (Java)

使用Apache HTTP client的HTTP测试的库

iOS library

所有iOS自动化需要的测试库,内部使用Calabash iOS服务

ImageHorizonLibrary

跨平台、基于图像识别的GUI自动化纯Python库

MongoDB library

使用pymongo和MongoDB交互的库(MongoDB是一个基于分布式文件存储的数据库)

RESTinstance

用于测试HTTP JSON API的库

SapGuiLibrary

内部通过SAP Scripting Engine,用于测试SAPGUI client的库

Selenium2Screenshots

通过Selenium2Library来截屏的库

SeleniumLibrary

Web测试库,内部使用比较流行的selenium工具

Selenium2Library

使用selenium2的Web测试库,替换了大部分老的seleniumlibrary

Selenium2Library for Java

selenium2library的java接口

ExtendedSelenium2Library

Selenium2Library的扩展库,支持了AngularJS

SikuliLibrary

支持使用Sikulix来测试UI的库

SSHLibrary

支持通过SSH连接,在远程机器上执行命令。还支持使用SFTP进行文件传输

SudsLibrary

支持对基于SOAP的Web服务进行功能测试

SwingLibrary

用Swing GUI测试java应用程序的库

附录:

  • RF框架(一)_ Anaconda虚拟环境安装及使用教程
  • RF框架(二)_ 开发工具RIDE介绍
  • RF框架(四)_ 常见问题集锦
  • RF框架 — 自动化UI框架解决方案模版

本文由来源 jackaroo2020,由 javajgs_com 整理编辑,其版权均为 jackaroo2020 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。

0 人点赞