我试图摆脱行为框架中的某些标准并遇到一些问题.是否可以拥有多个具有before *和after *钩子的environment.py文件?
我正在为一套微服务编写测试工具.我有以下目录树.
root
|-- step_defintions
| |-- service1
| |-- environment.py
| |-- __init__.py (steps,imports root.step_defintions.service1.envrionment)
| |-- service2
| |-- environment.py
| |-- __init__.py (steps,imports root.step_defintions.service2.envrionment)
|-- features
| |-- environment.py
| |-- steps
| |-- __init__.py (imports root.step_deFinitions *)
| |-- service1
| |-- 000_service1.feature
| |-- 001_service1.feature
| |-- service2
| |-- 000_service2.feature
我的问题是它似乎没有在step_deFinitions / service [1 | 2] /envrionment.py文件中的* hook之后获取我之前的*.
最佳答案
只有2年的晚了,但这是我的看法……
Behave不允许您整理文件的灵活性.见:
此外,Behave不会以递归方式搜索它运行的目录.也就是说,Behave只查看.feature文件的当前(或指定)目录,并仅查找feature / steps /目录中的.py文件 – 不再进一步查看.
据我所知,您可以利用Behave的“标记”功能在运行测试时添加一些组织.功能文件和步骤实现的良好命名约定也将有很长的路要走.
我自己并没有广泛尝试过,但是有一个叫做“行为主”的东西,允许你从“主”文件控制一个Behave实例,类似于Java的主要方法.假设您可以使用此功能,逐个运行各个行为测试,每个测试都有自己的环境,功能和步骤.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。