Pytest BDD - 选择存根或实时 API 调用

问题描述

我正在开发一些行为驱动的开发,即使用 pytest-bdd 的样式测试。我们希望重用相同的功能和或多或少相同的步骤定义来对第三方 API 进行存根调用和实时调用,即我们希望重用测试代码进行集成和端到端测试。

我想知道是否有关于如何在 pytest_bdd 或 pytest 中处理模拟调用和真实调用之间交替的约定

这个问题类似:Running pytest tests against multiple backends? with an answer to add an parser option with an CancellationTokenSource hook放在顶级CancellationToken.IsCancellationRequested

解决方法

api 中选择存根或实时 api 调用的一个好方法是添加一个带有 pytest_addoption 钩子的解析器选项。条件逻辑需要在相关测试中寻找这些选项。

这个对类似问题的回答是这种方法的来源并且有更多细节:https://stackoverflow.com/a/50686439/961659

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...