举个例子,我们对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进行介绍。
相关推荐
企业微信群机器人配置全攻略:从零到消息推送的完整流程
本文详细介绍了企业微信群机器人的配置与使用全流程,从零开始指导如何创建机器人、获取Webhook地址,到通过HTTP请求发送文本、Markdown、图片及模板卡片等多种消息类型。内容涵盖核心的接口配置、安全实践及实战应用场景,帮助开发与运维团队快速构建自动化消息推送中枢,提升协作效率。
Robot Framework使用resource文件
Python+Robot Framework实现登陆多个使用统一登陆页面的系统时,采用resoure文件将登陆页面独立维护,从而实现代码的复用和模块化
UniTouch:多模态触觉对齐技术如何重塑零样本跨模态应用
UniTouch模型通过创新的多模态触觉对齐技术,成功将触觉数据映射到通用的视觉-语言嵌入空间,解决了触觉模态的“孤岛困境”。该技术利用对比学习和传感器特定标记,实现了高质量的零样本学习能力,使模型无需额外训练即可完成触觉分类、描述等任务,并能驱动跨模态生成,为机器人、VR和智能制造等领域提供了强大的触觉理解新范式。
Robot Framework 教程 (3) - Resource及关键字 的使用
在进行软件自动化测试时,我们设计并编写好一个测试脚本的业务逻辑之后,需要将其中的业务数据提取为变量,并对业务逻辑进行封装。在后续的测试过程中,只需设置每次测试的测试数据,而不必更改业务逻辑。 举个例子,我们对baidu搜索进行兼容性测试时,我们的业务逻辑是 [打开浏览器] - [输入搜索内容] - [点击搜索按钮] - [截图保存] - [关闭浏览器] 而对应的业务数据,就...
ai数字人系统部署
这段代码实现了基本的语音交互闭环,用户通过语音输入问题,数字人识别语音后进行自然语言理解并生成回复,再将回复转换为语音输出。但实际应用中的 AI 数字人系统更为复杂,如形象渲染需专业图形引擎(如 Unity、Unreal Engine),自然语言处理也会涉及更复杂的模型微调及多轮对话管理等。一个完整的 AI 数字人系统涵盖形象生成、自然语言处理、动作控制等多个复杂功能,下面为你提供一个 Python 示例,整合多个库来实现数字人基础功能,包括语音交互、简单的自然语言理解以及通过虚拟形象展示对话。
OpenPCDet安装及其3D检测算法实现
OpenPCDet及pointpillar复现
python自动化RobotFramework中userkeyword和resource文件(六)
用户关键字user keyword,类似于python中的函数,我们可以调用它实现特定的功能。
STM32使用LORA模块通信
目录 一、模块使用方法 1、模块简介 2、硬件及功能 3、传输方式 二、模块上手 1、连接 2、编写代码 usart3.h usart3.c lora.h lora.c 一、模块使用方法 本文以正点原子ATK-LORA-01模块为例进行介绍。 1、模块简介 ATK-LORA-01-V3.0(V3.0是版本号,下面均以ATK-LORA-01表示该产品)是ALIENTEK推出的一款体积小、微功率、低功耗、高性能远距离LORA无线串口模块。模块设计是采用高效的IS...
robot framework共享封装的关键字到其他文件--资源文件Resource
比如在执行多个功能的时候,都会用到登陆,为了避免代码的重复,所以可以将登陆等设置为资源文件 先参考封装关键字的前文:https://blog.youkuaiyun.com/wudada1993/article/details/107412451 实例:登陆之后,先查看用户列表是否有用户,如果有的话,先删除已有的用户,然后添加一个新用户 ,最后删除新添加的用户 创建一个资源文件rf1.robot (把登陆 ,添加用户 , 添加的用户存在新的列表,以及删除用户全部封装为关键字) #创建一个资源文件,以便于其他脚本共享封装.
下载MNIST数据集并使用python将数据转换成NumPy数组(源码解析)
下载MNIST数据集并使用python将数据转换成NumPy数组首先来分析init_mnist函数接下来继续分析load_mnist函数实现数据集转换的python脚本的代码显示MNIST图像并确认数据 下载MNIST数据集并将数据转换成NumPy数组的Python脚本里面最重要的就是load_mnist函数,其他项目想要调用数据集的话,就可以调用load_mnist函数,得到一个字典类型的数据,字典的值是一个Numpy数组。 这些过程是如何实现的,现在开始逐字逐句分析源码: 在load_mnist函数中第
第一节:Vben Admin 最新 v5.0 (vben5) + Python Flask 快速入门
vben5 快速入门。 Vben Admin 框架新出的版本V5.5.4,而之前的Vben Admin 2.x 目前已存档,仅进行重大问题修复。之前在2.x版本曾经简单完成了一版专栏文章,当时也是收获了一些好评和建议。本次决定在v5 版本基础上再完成一次前后端的搭建。希望大家继续多多支持。项目精简后,再次启动项目,执行 pnpm run dev点击登录,可以看到接口报错,现在前端请求的后端有报错,下一节处理这部分逻辑。
RobotFramework测试框架(10)--资源文件
RF资源文件是Robot Framework(RF)层面的库文件,其主要作用是提供一种共享用户关键字和变量的机制。资源文件中可以包含用来共享的用户关键字,也可以包含Variable表定义的变量。这使得在多个测试套件或测试用例中可以重用这些关键字和变量,提高了测试代码的可维护性和复用性。用户关键字类似于RF层面的函数,可以把多个关键字操作组成一个“宏”关键字。在RF中,用户关键字是通过Keywords表来定义的,其定义和写一个用例的写法很像,参数支持[Arguments]和返回值[Return]。
设备接入与APP(应用程序)接入华为云iotDA平台的详细操作步骤及获取方式
设备及APP(应用程序) 登录 IoTDA 平台所需的 入场与操作清单内容,提供逐项详细操作步骤和获取方式,并穿插贴士便于理解与实际操作落地。内容基于 华为云 IoTDA 控制台 和 IAM 控制台 的实际使用路径整理。
一个用于并发批量执行大量关键字的robot framework库。
这个库用于并发批量执行大量robotframework关键字。从而缩短案例执行时间。使用concurrent.futures.ProcessPoolExecutor进程池并发执行同一个robotframework关键字很多次。
汉书HE8,好用的汇编代码编写工具
汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大
ET2012新版免狗免安装绿色软件
ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,
robot framework Resource管理关键字的使用
点击项目,右键,选择 New Resource 输入资源名称,使用txt 格式。创建好了就在资源名称上右键选择创建关键字。输入当前关键字的名称。在资源中引入第三方库 Selenium2Library 输入正确后显示的是黑色(表示库引入正常),输入错误显示的是红色。在关键字中编辑内容。完成后再测试套件中引入这个资源。资源引入正常显示的蓝色的。在测试用例中输入资源中的关键字。上图中我设置了一个参数,...
C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片
基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正
RobotFramework基础篇(一):【工程、测试套件、测试用例】基础;【内置测试库、Resource资源文件、变量文件】的导入;;
一、工程、测试套件、测试用例的创建; 步骤一:创建工程 1.打开ride.py; File --> New Project --->在弹窗中,填写project name 选择文件类型Type:Directory 步骤二、创建测试套件 1.鼠标右键刚刚新建的project--->New Suite 在弹窗中,重点:文件Type:File,即下一级...
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
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 文件 这个文件里面写自己需要穿件的关键字既方法,如下代码里面有









、
843



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



