首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从特性文件中读取数据表- Pytest-bdd

从特性文件中读取数据表- Pytest-bdd
EN

Stack Overflow用户
提问于 2018-06-12 13:14:20
回答 1查看 2K关注 0票数 0

我刚开始使用pytest-bdd框架。

下面是示例特性文件内容:

代码语言:javascript
复制
Scenario Outline: Google multiple search request

  Given I want to search in Google
    When I search for '<search_request>'
    Then I should see link to '<search_result>'

  Examples:
  | search_request | search_result |
  | Pytest BDD | Python BDD - Behaviour driven development framework |
  |  Cucumber | Cucumber |

从pytest-bdd:# coding=utf-8“example.feature功能测试”“生成的示例python文件。

代码语言:javascript
复制
from pytest_bdd import (
    given,
    scenario,
    then,
    when,
) 

 @scenario('example.feature', 'Google multiple search request')
def test_google_multiple_search_request():
    """Google multiple search request."""


@given('I want to search in Google')
def i_want_to_search_in_google():
    """I want to search in Google."""


@when('I search for '<search_request>'')
def i_search_for_search_request():
    """I search for '<search_request>'."""


@then('I should see link to '<search_result>'

Examples:
| search_request | search_result |
| Pytest BDD | Python BDD - Behaviour driven development framework |
|  Cucumber | Cucumber |
|  Cucumber2 | Cucumber2 |')
def i_should_see_link_to_search_resultexamples_search_request__search_result__pytest_bdd__python_bdd__behaviour_driven_development_framework___cucumber__cucumber___cucumber2__cucumber2_():
    """I should see link to '<search_result>'

Examples:
| search_request | search_result |
| Pytest BDD | Python BDD - Behaviour driven development framework |
|  Cucumber | Cucumber |
|  Cucumber2 | Cucumber2 |."""

在pytest-bdd中是否有一种方法可以识别特性文件中提供的示例数据集,并像生成框架代码那样将其转换为有效的python文件?

或者我们需要手动编写代码以接受特性文件中的输入数据

任何帮助都很感激。

你好,Sanjay B S

EN

回答 1

Stack Overflow用户

发布于 2019-02-22 16:33:53

看起来代码生成过程中出了很大问题。以下内容不应存在:

@然后(“我应该看到链接到”) 例子: Cucumber2,search_request,search_result,Cucumber,Cucumber,Cucumber,BDD

首先,让我们修复特性文件(这些单引号不是必需的):

场景大纲: Google多重搜索请求

给了我想在谷歌上搜索

当I搜索时

那么我应该看到到的链接

示例:

search_request \x{e76f} search_result \x{e76f}

Python BDD -行为驱动的开发框架

黄瓜/黄瓜

下面是将变量从示例表传递给step函数的方式:

代码语言:javascript
复制
@when('I search for <search_request>')
def i_search_for_search_request(search_request):
    """I search for <search_request>."""
    print(search_request)

希望能帮上忙!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50818169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档