gpt4 book ai didi

html - cucumber / ruby : possible to output the "puts" to a --format html file?

转载 作者:数据小太阳 更新时间:2023-10-29 07:39:48 24 4
gpt4 key购买 nike

我有一些调用不同模块和类的 ruby​​ 测试,它们在执行过程中详细说明了它们使用一些“puts”命令所做的事情。

如果您在控制台中运行这些测试,那么您将在控制台中看到“puts”命令的输出,但如果您使用以下选项运行测试:

ruby --format html --output file.html

然后所有这些信息都丢失了。有没有办法在 HTML 报告中记录简单的字符串消息?

最佳答案

我尝试了以下步骤:

When /^I do something$/ do
puts "Hello"
end

Then /^something happens$/ do
end

...使用以下命令:

cucumber -f html -o results.htm

...当我在浏览器中打开 results.html 文件时,它在显示步骤后立即显示“Hello”消息。我附上了 HTML 输出的相关部分,因此您可以看到 puts 的输出:

<!-- the first step -->
<li id='features_thing_feature_4' class='step passed'>
<div class="step_name">
<span class="keyword">When </span>
<span class="step val">I do something</span>
</div>
<div class="step_file">
<span>features/step_definitions/thing_steps.rb:1</span>
</div>
</li>
<!-- anything that the above step passed to `puts` -->
<li class="step message">Hello</li>
<!-- the second step -->
<li id='features_thing_feature_5' class='step passed'>
<div class="step_name">
<span class="keyword">Then </span>
<span class="step val">something happens</span>
</div>
<div class="step_file">
<span>features/step_definitions/thing_steps.rb:5</span>
</div>
</li>

这表明当 cucumber 的 puts 方法被调用时(即:直接从一个步骤中),输出将包含在 html 输出中。但是,如果 puts 调用来自其他地方(例如:您的模块),那么它不会被包含在内。您可以考虑将 puts 调用从模块移至步骤。此外,使用 puts 并不是真正的最佳实践,因此您可能需要考虑完全删除它...

关于html - cucumber / ruby : possible to output the "puts" to a --format html file?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12745662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com