测试文件和功能文件在不同的目录中

时间:2016-01-11 03:16:23

标签: python bdd pytest

如何在py-test-bdd中的不同目录中创建测试文件和功能文件?

我已经看过"组织场景"下的py-test文档。部分。

我目前的结构是:

bdd
  |
  feature directory
                  |
                  feature file #1 (named log.feature)
                  feature file #2
                  feature file #3      
  |
  test file #1
  test file #2
  test file #3

当前代码正在执行:

@scenario('features/log.feature', 'scenario description #1')

但我真正喜欢的是:

bdd
  |
  feature directory
                  feature file #1
                  feature file #2
                  feature file #3      
  |
  test directory (named tests)
                test file #1
                test file #2
                test file #3

我尝试编写代码:

@scenario('bdd/features/log.feature', 'scenario description #1')

但是当执行上面这行时实际上尝试做的是bdd / tests / bdd / features / log.feature,显然它会抛出错误目录不存在。
如何让它做bdd / features / log.feature?

1 个答案:

答案 0 :(得分:0)

只需要../跳转到前面的目录。即:

@scenario('../features/log.feature', 'scenario title #1')

如果你有更多的目录,只需要做../../../并重复../和你想要向上的目录一样多次。

如果您有多个场景,那么只需在顶部声明一个变量并将此变量传递给每个@scenario,即:

myFilePath = '../features/log.feature'
@scenario(myFilePath, 'scenario title #1')
@given('blah....')
@then('blah....')

@scenario(myFilePath, 'scenario title #2')
@blah