如何在behave (BDD)中查看print()语句
如何在behave (BDD)中查看print()语句
背景:我在使用Python和Behave(BDD)。
无论我是从命令行(behave)还是从自定义的main()函数运行我的测试,行为都是一样的:测试运行,并且我在控制台上看到的唯一输出是标准的BDD报告。
我的测试包括print()语句,这些语句帮助我调试代码。然而,当我运行behave时,这些print语句都没有显示在控制台输出中。
有没有办法让"behave"显示我们代码中的print语句呢?
我的main()函数:
config = Configuration() if not config.format: default_format = config.defaults["default_format"] config.format = [ default_format ] config.verbose = True r = runner.Runner(config) r.run() if config.show_snippets and r.undefined_steps: print_undefined_step_snippets(r.undefined_steps)
我的test.feature文件:
Feature: 使用Behave BDD的我的测试功能
Scenario: 一个简单的测试
Given 你很开心
When 有人打招呼
Then 你微笑
我的test_steps.py文件:
from behave import given, when, then, step, model @given('你很开心') def step_impl(context): pass @when ('有人说{s}') def step_impl(context, s): context.message = s print("这个从来没有在控制台中显示过") pass @then ('你微笑') def step_impl(context): assert(context.message == "hi")