Robot Framework | 02 从抛弃RIDE开始创建你的RFS测试
时间:2022-05-07
本文章向大家介绍Robot Framework | 02 从抛弃RIDE开始创建你的RFS测试,主要内容包括目标、准备、YAML语法示例、小结、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
概述
大多数情况下,我们用RobotFramework时,一般基于其图形界面的RIDE来编辑、管理、执行用例。
今天我们分享下基于非编辑器模式的RobotFramework 关键字自动化测试。
目标
我们实现以下功能:
- 启动浏览器
- 访问百度
- 输入"开源优测",单击"百度一下"按钮
- 关闭浏览器
- 输出报告
准备
我们一起看下需要哪些准备工作:
需要安装的一些库:
- 安装RobotFramework,命令为:
pip install robotframework -U
- 安装最新的selenium3, 命令为:
pip install selenium -U
- 安装SeleniumLibrary,命令为:
pip install --pre --upgrade robotframework-seleniumlibrary
- 安装Selenium2Library, 命令为:
pip install --upgrade --pre robotframework-selenium2library
注意: 在最新的Robotframework里,Selenium2Library从版本3.0开始已经被重命名为SeleniumLibrary。
YAML语法示例
这里我默认大家对RobotFramework有一定的基础,即:对关键字有一定的了解。我们先看一下基于yaml语法来实现目标功能,如下:
*** Settings ***
# 使用SeleniumLibrary库实现百度搜索测试
Library SeleniumLibrary
*** Variables ***
# 变量定义
${baidu} http://www.baidu.com # 百度首页
${browser} Chrome # 浏览器
${searchWord} 开源优测 # 搜索词
${search_input} id=kw # 搜索框ID
${search_btn} id=su # 百度一下按钮
*** Test Cases ***
# 测试用例
启动浏览器
Open Browsers
百度搜索测试
Input Search Word
Click Search Button
断言验证搜索结果标题
Assert Search Result
关闭浏览器
Quit Search
*** Keywords ***
# 自定义关键字
Open Browsers
Open Browser ${baidu} ${browser}
Title Should Be 百度一下,你就知道
Input Search Word
Input Text ${search_input} ${searchWord}
Click Search Button
Click Button ${search_btn}
Sleep 5s
Assert Search Result
Title Should Be 开源优测_百度搜索
Quit Search
Close All Browsers
将上述内容保存至search_baidu_demo.robot文件中,执行以下命令:
pybot search_baidu_demo.robot
运行日志如下图:
其中:
- output.xml 为原始的测试结果记录
- log.html 为测试过程日志
- report.html 为html格式的测试报告
也截图看看报告:
小结
本文基于文本编辑器,利用Robotframework关键字语法格式实现了自动化测试实践,那也可以尝试基于表格式语法来实现一个试试。
- 神经网络太臃肿?教你如何将神经网络减小四分之一
- WPF中ListView如何改变选中条背景颜色
- WPF Trigger for IsSelected in a DataTemplate for ListBox items
- C#基础知识回顾--BackgroundWorker介绍
- Elasticsearch 瞬间入门
- 使用OpenLDAP 操作 Windows Active Directory
- 优化算法:到底是数学还是代码?
- Email 服务器之 SPF 记录
- WPF中播放声音媒体文件
- 设计模式学习--装饰者模式(Decorator Pattern)
- SQL Server 存储过程
- MySQL 转换 latin1 到 UTF-8
- C#/ASP.NET应用程序配置文件app.config/web.config的增、删、改操作
- Spring boot with Email
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法