【转载】https://blog.csdn.net/boomjane_testingblog/article/details/51821819
在进行软件自动化测试时,我们设计并编写好一个测试脚本的业务逻辑之后,需要将其中的“业务数据”提取为变量,并对业务逻辑进行封装(数据与逻辑分离吗),以便在后续的测试过程中,只需设置每次测试的测试数据,而不必更改业务逻辑。
举个例子,通过百度搜索不同的内容,我们的业务逻辑是:
[打开浏览器] - [输入搜索内容] - [点击搜索按钮] - [关闭浏览器]
“业务数据”对应的就是我们所输入的“搜索内容”
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面看一下实际操作步骤:
1.建立资源Resource
在导航树中的项目节点点击鼠标右键,选择【New Resource】,打开新建Resource的对话框,填写Resource名称“业务关键字”
2.建立关键字User Keyword
在刚刚建立的【业务关键字】节点点击右键,选择【New User Keywod】
3.为关键字添加变量
点击【百度搜索】节点,展开编辑面板的【Settings】配置,点击Arguments的【edit】按钮,添加变量${searchword}|${result}
备注:这两个变量在这里一个代表搜索内容,一个代表预期结果。多个变量间用“|”分隔
4.为“业务关键字”设计业务逻辑
需要注意一下的是,这里的关键字可以理解为一个“函数”的概念,我们需要在TestCase中调用的是这个“关键字”。我们刚刚添加的变量是“关键字”的一部分,在TestCase中体现为具体的业务数据。
选中“业务关键字”下面的“百度搜索”,添加业务逻辑为:
Open Browser https://www.baidu.com/ ff
Input Text id=kw ${searchword}
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
选中“TestSuite”结点,点击右侧窗口中的“Resource”按钮,在“Path”框中输入“业务关键字”(注意路径:我这儿是平级目录可以直接引用),点击“ok”按钮。便将我们创建的关键字引入。
6.编写TestCase
添加一个TestCase,在Edit选项卡下的表格中添加我们刚刚定义的关键字,如下:
百度搜索 Robot Framework Robot Framework_百度搜索
百度搜索 Selenium Selenium_百度搜索
路径引用正确,此处关键字才能被识别到,显示为蓝色字体。
7.运行测试,获取测试结果
第一轮是输入Robot Framework进行搜索,并检查预期结果
第二轮是输入Selenium进行搜索,并检查预期结果
总结:
RobotFrame Work 中的Resource 及关键字给我们提供的是一种类似于“函数”概念的用户自定义机制。我们可以将一些通用的业务过程封装为一个关键字,并声明业务中的业务数据。在编写测试用例时,直接调用关键字,设置业务数据即可。而一旦业务过程发生变化,或元素定位发生变化,我们只需要更改关键字中的业务逻辑即可,而不必更改每个测试用例。
---------------------
原文:https://blog.csdn.net/boomjane_testingblog/article/details/51821819