美文网首页
Lettuce:从步骤定义调用步骤

Lettuce:从步骤定义调用步骤

作者: Ailsa的简书 | 来源:发表于2017-09-24 22:08 被阅读0次

我们的测试应该尽可能的表达清晰。不过,我们还想重新使用我们以前的步骤。到目前为止,我们使用过的工具,你可能会得到很长的步骤定义。

Scenario: Logged-in user does something cool.
  Given I go to the home page
  And I click the login button
  And I fill in username:floppy password:banana
  And I click "Login"
  When I finally do something interesting
  Then I'm already too bored to care.

在这种情况下,我们可能有一个测试用例(可能是几个),它实际上是用来表达用户如何与登录表单交互的。在这里,我们得到了登录顺序的步骤定义。然而,当登录表单有意义时,这些步骤就非常多余。我们真的希望能够在不重复我们的步骤定义的情况下定义这样的东西。

Scenario: Logged-in user does something cool.
  Given I am logged in
  When I do something interesting
  Then The world becomes a better place

Lettuce提供了这样一种方式,可以用一组助手来匹配每一个给定的语法术语-Given,When和Then。你可以像这样完成以上的工作。

@step('I am logged in')
def is_logged_in(step):
    step.given('I go to the home page')
    step.given('I click the login button')
    # ... and so on.

步骤执行块

有时甚至直接从特性规范复制粘贴,去描述步骤执行块。使用step.behave_as方法,然后用str.format动态填写参数。例如,我们可以这样写上面的步骤定义:

@step('I am logged in')
def is_logged_in(step):
    step.behave_as("""
        Given I go to the home page
          And I click the login button
          And I fill in username:{user} password:{pass}
          And I click "Login"
    """.format(user='floppy', pass='banana'))

这可以与步骤参数捕获相结合,使表达更清晰和避免代码重复。


上一篇:Lettuce: Scenario Outlines
下一篇:Lettuce: Command Line

相关文章

  • Lettuce:从步骤定义调用步骤

    我们的测试应该尽可能的表达清晰。不过,我们还想重新使用我们以前的步骤。到目前为止,我们使用过的工具,你可能会得到很...

  • Lettuce:内置Django步骤

    Lettuce具有若干Django内置步骤,简化定制器的创建。 创建定制器数据 Lettuce可以自动对你可用的D...

  • Swift-JS和APP的交互(JavaScriptCore和U

    步骤一:************* 定义协议 ************** 步骤二:********** ...

  • iOS绘画篇:Quartz2D

    关键步骤: 获取CGContextRef 调用CGContextRef的方法进行绘图 自定义UIView时获取 C...

  • [Android] 谈一下自定义View的流程

    抛出 可以从: 自定义View的步骤;2.自定义View的注意事项;3.自定义ViewGroup的步骤以及注意事项...

  • Lettuce:功能、场景和步骤参考

    功能、场景和具有Lettuce的功能引擎的Python对象的步骤。在这里,你会发现关于这些对象的非常“繁琐”的细节...

  • Python-循环结构和函数的使用

    快捷键 ctrl+/ 快速加注释 函数 两个步骤:定义函数,调用函数 函数定义的注意点 1、def 定义 2、函...

  • js第三天笔记

    数据类型的检测方法 数组方法 函数的基础知识 函数由两部分构成:定义和调用定义 调用:函数名() 函数定义三步骤 ...

  • html转pdf

    html转pdf 步骤一 下载并安装wkhtmltopdf 步骤二 添加到环境变量 步骤三 cmd中调用

  • JSONP

    1、简单,原理:1)函数定义2)函数调用 2、如果我们想要调用jsonp接口来取数据,步骤:1)把链接地址放到浏览...

网友评论

      本文标题:Lettuce:从步骤定义调用步骤

      本文链接:https://www.haomeiwen.com/subject/bbulextx.html