好吧,在我的environment.py文件中,我可以通过以下方式记录东西:
logging.basicConfig(level=logging.DEBUG, filename="example.log")
def before_feature(context, feature):
logging.info("test logging")
Run Code Online (Sandbox Code Playgroud)
但当我在步骤文件中时,我无法执行日志记录:
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
@given("we have a step")
def step_impl(context):
logger.debug("Test logging 2")
Run Code Online (Sandbox Code Playgroud)
步骤内的日志消息不会显示.我正在使用python行为模块.有任何想法吗?
我在运行行为时尝试启用和禁用logcapture,但它没有任何区别.
现在,我具有以下测试功能目录:
Tests/
--BehaveTest1/
----BehaveTest1.feature
----steps/
------test_steps.py
--BehaveTest2/
----BehaveTest2.feature
----steps/
------test_steps.py
Run Code Online (Sandbox Code Playgroud)
由于BehaveTest1和BehaveTest2的测试步骤很常见,因此我想实现一个通用模块,两个测试用例都可以在需要时调用它们。目前,我已经在Tests /文件夹中建立了common /目录,并通过以下方式将其导入(每个测试功能的test_steps.py文件中):
import sys, os
sys.path.append('../common')
import common
Run Code Online (Sandbox Code Playgroud)
但是我不想弄乱路径,所以我想知道是否有更好的方法可以通过行为测试功能的结构来做到这一点?