zoukankan      html  css  js  c++  java
  • Robot Framework-用户关键字的使用方法(6)

    【转载】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

    -----------------------------------------Have a good day!---------------------------------------------------------------------------------------------------
  • 相关阅读:
    音频(一)_音频认知(1.音频释义)
    音频_写在前面的话
    SignInWithAppleId(Apple登录接入)_unity篇
    编程工具~用了都说好的快捷键大杂烩
    Unity的PlayerPrefs存储路径
    unity如何判断应用的运行平台
    Unity资源加载机制www的坑
    VSCode快捷键
    MD5加密字符串并转化为base64(C#和PHP代码相同实现)
    转载:关于 Google Chrome 中的全屏模式和 APP 模式
  • 原文地址:https://www.cnblogs.com/ww-xiaowei/p/10412477.html
Copyright © 2011-2022 走看看