举个例子,我们对baidu搜索进行兼容性测试时,我们的业务逻辑是
[打开浏览器] - [输入搜索内容] - [点击搜索按钮] - [截图保存] - [关闭浏览器]
而对应的业务数据,就是我们所输入的“搜索内容”。
在后续的测试中,我们应该将这一逻辑封装为一个关键字(这里可以理解为一个自定义函数,并将搜索内容作为输入变量)。每次测试时,只需要改变“搜索内容”这一变量即可。
1.建立资源
在导航树中的项目节点点击鼠标右键,选择【New Resource】,打开新建Resource的对话框,填写Resource名称“业务关键字”
2.建立关键字
在刚刚建立的【业务关键字】节点点击右键,选择【New User Keyword】,建立新关键字“百度搜索”
3.为关键字添加变量
点击【百度搜索】节点,展开编辑面板的【Settings】配置,点击Arguments的【edit】按钮,添加变量
按照使用说明,这里的变量使用 ${key} 的格式,多个变量之间使用 | 进行分割。这里我们演示一下多变量。使用${searchword}|${result}
4.为关键字设置业务逻辑
需要注意一下的是,这里的关键字可以理解为一个“函数”的概念,我们需要在TestCase中调用的是这个“关键字”。我们刚刚添加的变量是“关键字”的一部分,在TestCase中体现为具体的业务数据。作为一个“函数”,除了变量外,我们还需要为之编写业务逻辑:
对应的脚本为
Open Browser https://www.baidu.com/ ff Input Text id=kw ${keyword} Click button id=su Sleep 2 ${title} Get Title Should Contain ${title} ${result} Capture Page Screenshot ff.png Close Browser其中${searchword}和${result}表示我们的关键字在被TestCase调用时,传入的数据。而${title}则是作为一个中间过程的临时变量进行使用。
5.为TestSuite添加Resource
与Library类似,在Resource编写完成自后,需要在TestSuite进行 一下引用。
6.编写TestCase
设置完Resource之后,添加一个TestCase,并在其中使用我们刚刚定义的关键字
7.运行测试,获取测试结果
、
总结:
RobotFrame Work 中的Resource 及关键字给我们提供的是一种类似于“函数”概念的用户自定义机制。我们可以将一些通用的业务过程封装为一个关键字,并声明业务中的业务数据。在编写测试用 例时,直接调用关键字,设置业务数据即可。而一旦业务过程发生变化,或元素定位发生变化,我们只需要更改关键字中的业务逻辑即可,而不必更改每个测试用 例。
在使用过程中,有些验证逻辑我们可能无法仅仅通过RobotFrame Work 的内置函数或自定义关键字来实现,这个时候需要我们自己编写外部函数来进行验证,也就是需要自定义外部的Library。下一篇文章,我们将会对用户自定义Library进行介绍。
相关推荐
详解modbus TCP通讯,并利用其实现欧姆龙PLC和西门子PLC的通讯
大家好,之前需要更新的MQTT通讯【2】因为硬件不足还不能发布出来,但最近在项目中涉及到西门子和欧姆龙之间的modbus TCP通讯,想到modbus TCP通讯是个非常常见并广泛使用的通讯协议,今天就结合最近做的测试给大家好好讲解一下,先提示一下,这边只给大家讲解如何实现,至于报文是什么,如何用socket来编写功能块或dll这边不会讲解,这块我会根据私信的小伙伴数量来考虑要不要出一篇如何用ST语言来编写modbus TCP功能块的博客。
Robot Framework使用resource文件
Python+Robot Framework实现登陆多个使用统一登陆页面的系统时,采用resoure文件将登陆页面独立维护,从而实现代码的复用和模块化
从零构建锂电池主动均衡系统:Simulink仿真中的Buck-Boost拓扑实战指南
本文详细介绍了如何在Simulink中从零构建基于Buck-Boost拓扑的锂电池主动均衡系统。通过仿真环境搭建、参数优化、控制策略设计和性能评估,为工程师提供了完整的实战指南,帮助快速验证和优化均衡算法,提升电池组一致性与寿命。
Robot Framework 教程 (3) - Resource及关键字 的使用
在进行软件自动化测试时,我们设计并编写好一个测试脚本的业务逻辑之后,需要将其中的业务数据提取为变量,并对业务逻辑进行封装。在后续的测试过程中,只需设置每次测试的测试数据,而不必更改业务逻辑。 举个例子,我们对baidu搜索进行兼容性测试时,我们的业务逻辑是 [打开浏览器] - [输入搜索内容] - [点击搜索按钮] - [截图保存] - [关闭浏览器] 而对应的业务数据,就...
海康威视SADP SDK实战:5分钟搞定局域网设备搜索(附C++代码示例)
本文详细解析了海康威视SADP SDK在局域网设备搜索中的高效应用,通过C++代码示例展示如何快速实现设备发现与信息获取。SADP协议支持全面设备信息采集和实时状态更新,适用于智能安防和物联网管理场景,帮助开发者5分钟内完成设备搜索功能集成。
【AI应用实战-OpenCode】OpenCode安装部署(一)
OpenCode是一款2026年流行的开源AI编程工具,兼具轻量代码编辑器和智能编码代理功能。其核心优势包括:完全免费开源(MIT协议)、全平台兼容、支持75+大模型(含本地部署)、内置完整编程功能链(代码补全/Git集成/AI调试等),且所有数据本地存储确保隐私安全。相比Copilot等商业工具,OpenCode提供更自由的模型选择和零门槛使用体验。安装要求Windows10+/macOS12+/Linux主流发行版,仅需200MB空间和4G内存。该工具完美兼容VSCode生态,支持终端/桌面/IDE三种
python自动化RobotFramework中userkeyword和resource文件(六)
用户关键字user keyword,类似于python中的函数,我们可以调用它实现特定的功能。
9、双玩家博弈中的精确与近似纳什均衡及中国股市再融资偏好研究
本文研究了双玩家博弈中精确与近似纳什均衡的计算方法,提出通过线性松弛问题LR在多项式时间内求解正则双矩阵博弈的纳什均衡,并分析其在α-平滑博弈中的近似性能。同时,探讨了中国股市2001-2009年期间再融资偏好的动态变化,重点考察非流通股改革对再融资方式选择的影响。研究表明,改革前配股为主导,改革后公开发行(含定向增发)因溢价发行和低参与门槛成为主流,显著提升了资金募集效率和市场参与度。结合博弈论模型与实证分析,揭示了制度变革对企业融资行为的深远影响。
robot framework共享封装的关键字到其他文件--资源文件Resource
比如在执行多个功能的时候,都会用到登陆,为了避免代码的重复,所以可以将登陆等设置为资源文件 先参考封装关键字的前文:https://blog.youkuaiyun.com/wudada1993/article/details/107412451 实例:登陆之后,先查看用户列表是否有用户,如果有的话,先删除已有的用户,然后添加一个新用户 ,最后删除新添加的用户 创建一个资源文件rf1.robot (把登陆 ,添加用户 , 添加的用户存在新的列表,以及删除用户全部封装为关键字) #创建一个资源文件,以便于其他脚本共享封装.
【部署】Docker部署OpenClaw及常见问题解决(win11)
给AI单独开一个隔离的小容器,AI执行所有命令、下载文件都在这个小盒子里,就算AI被诱导执行危险命令,也不会影响你Win11本机的文件和系统,是必开的安全功能。Docker容器里的OAuth回调,会尝试在你Win11本机的1455端口捕获认证信息,但容器和Win11本机的网络隔离,导致浏览器访问不到这个回调地址。「挂载」就是把你Win11本机的文件夹,共享给容器里的「虚拟小电脑」,两边都能读写文件,比如你想让AI操作你D盘里的代码文件,就需要挂载。
图神经网络实战(5)——常用图数据集
Cora 和 Facebook Page-Page 是图神经网络领域中经常使用的两个基准图数据集,通常用来比较不同模型的性能。在本节中,介绍了如何使用 PyTorch Geometric 库提供的数据集类加载 Cora 和 Facebook Page-Page 数据集,并探索了两个数据集的主要特征。
RobotFramework测试框架(10)--资源文件
RF资源文件是Robot Framework(RF)层面的库文件,其主要作用是提供一种共享用户关键字和变量的机制。资源文件中可以包含用来共享的用户关键字,也可以包含Variable表定义的变量。这使得在多个测试套件或测试用例中可以重用这些关键字和变量,提高了测试代码的可维护性和复用性。用户关键字类似于RF层面的函数,可以把多个关键字操作组成一个“宏”关键字。在RF中,用户关键字是通过Keywords表来定义的,其定义和写一个用例的写法很像,参数支持[Arguments]和返回值[Return]。
基于潜在空间分数匹配的混合型表格数据合成方法
然而,在我们的模型中,β 预计会更小,因为我们不需要嵌入的分布精确地遵循标准高斯分布,因为我们还有一个额外的扩散模型。受 Transformer 在表格数据分类/回归任务中取得成功的启发,我们首先为每一列学习一个独特的标记器,然后将标记(列)级表示输入到 Transformer 中,以捕捉列之间错综复杂的关系。在第 4 节中,我们证明了通过这种设计,TABSYN 可以在不到 20 次函数评估(NFE)的情况下生成高质量的合成表格数据,这比其他基于扩散的表格数据合成方法要少得多。是标记器的可学习参数。
一个用于并发批量执行大量关键字的robot framework库。
这个库用于并发批量执行大量robotframework关键字。从而缩短案例执行时间。使用concurrent.futures.ProcessPoolExecutor进程池并发执行同一个robotframework关键字很多次。
Devexpress16.2.6破解工具
Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具
jdk-8u144-linux-x64.tar.gz.
该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包
robot framework Resource管理关键字的使用
点击项目,右键,选择 New Resource 输入资源名称,使用txt 格式。创建好了就在资源名称上右键选择创建关键字。输入当前关键字的名称。在资源中引入第三方库 Selenium2Library 输入正确后显示的是黑色(表示库引入正常),输入错误显示的是红色。在关键字中编辑内容。完成后再测试套件中引入这个资源。资源引入正常显示的蓝色的。在测试用例中输入资源中的关键字。上图中我设置了一个参数,...
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
RobotFramework基础篇(一):【工程、测试套件、测试用例】基础;【内置测试库、Resource资源文件、变量文件】的导入;;
一、工程、测试套件、测试用例的创建; 步骤一:创建工程 1.打开ride.py; File --> New Project --->在弹窗中,填写project name 选择文件类型Type:Directory 步骤二、创建测试套件 1.鼠标右键刚刚新建的project--->New Suite 在弹窗中,重点:文件Type:File,即下一级...
迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)
迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)
RobotFramework简介及使用
一:RobotFramework的简介和特点 RF是一个基于Python语言开发的,可扩展的,是以关键字驱动模式的自动化测试框架,RF最新的版本是2019 年7月份发布,7月份之前只支持python2.7,7月之后支持3.X的版本 RobotFramework的特点 1:编辑用例简单,可以以robot,txt,tsv或者html的格式编写用例 2:自动生成html格式的测试报告和日志(HtmlTestRunner.py,allure) 3:除了自带的类库外,还有很多的实用的类库 4:可以根据项目的需要
Robotframework中自定义库的加载及注意事项
1.自定义库的文件名必须与库的类名相同 如:文件名为HttpAutoLib.py则其类名必须为HttpAutoLibclass HttpAutoLib(object): def __init__(self): self.Http = E_Http('./config/http_conf.ini') self.MyHttp = My_Http('./conf
robot framework -library resource variable 区别
如上:library为第三方库或自定义库,resource为自定义关键字集合,variables为自定义变量集合
RobotFramework 之 公共变量
RobotFramework 之 公共变量公共变量RF公共变量的使用list变量dict变量使用变量文件 公共变量 前面了解了通过资源文件对用户关键字进行管理,将重复的内容提取出来,简化测试用例中的操作步骤 common.robot *** Settings *** Library SeleniumLibrary *** Keywords *** 登录网易邮箱 # 打开chrome浏览器访问163邮箱 open browser https://mail.163.com/ ch
robotframework资源文件的使用
作用: 在用例或者套件初始化文件中创建的关键字或者变量,只能在定义它的文件中使用,如果写成资源文件,则只要引用此资源文件则可使用 定义资源文件,test_res.resource *** Variables *** ${var_1} abc # 定义变量 *** Keywords *** new keywords [Arguments] ${arg1} @{arg2} # 多个参数 [Documentation] 自定义关键字说明 [
RobotFramework自动化测试框架的基础关键字
我们可以通过Set Variable 来定义一个变量,比如我们定义一个变量:var1,并且对这个变量赋值为Robot,然后将这个变量用log输出出来。【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)生命不息,奋斗不止。
robot framework自动化框架——引用变量
哈哈,别惊讶,就是引用变量,真想骂人,基础不牢靠,就这么个知识点,我捣鼓了半天,才算搞明白。。。我已经开始怀疑自己的智商了。 场景是这样的,字典里引用变量,字典里是需要加引号的,而直接给变量,使用引号,那就不是变量了,废话不多说,直接上例子。 import execjs class DataHanding(): def encrpt_pwd(self, telephone, pa...
robotframework导入resource闪退解决方案
1.进入robotframework页面 2.进入Text Edit正文编辑区 3.在 *** Test Cases ***上起一行输入*** Settings *** 4.*** Settings ***输入完成点击Apply Changes进行应用修改 5.如图,进入Settings模式 (4中图) 6.Settings模式输入Resource resource.txt(此处有坑) 7.输入完成点击Apply Changes查看resource导入成功 ...
Robot Framework创建资源文件及报错解决
一、新建资源文件 1.点击项目,右键,选择New Resource 2.输入资源名称,使用txt格式 3.创建完成后,选择该资源名称,右键,选择New User Keyword 4.输入当前关键字的名称 5.在该新建资源中引入第三方库Selenium2Library(显示为黑色正常,红色为引入错误) 6.编辑内容 多个参数之间用“ | ”隔开 二、新建资源引用 1.导入新建的资源文件 ...
怎么样导入RobotFramework 自定义关键字(库文件)
标准库关键字在使用的过程中,简单的需求还是可以满足。但是遇到有些需求还是不好满足的,还是需要自己去编码,自定义库文件关键字。 假设python的安装路径在D:/下面第一步:在D:/python/Lib/site-packages 建立库文件文件夹 MyLibrary 第二步:在MyLibrary 内建立 mytool.py 文件 这个文件里面写自己需要穿件的关键字既方法,如下代码里面有









、
1万+



被折叠的 条评论
为什么被折叠?



