gpt4 book ai didi

phpunit: 有没有类似于 perl 的 Test::More::note() 和 Test::More::diag() 函数的函数?

转载 作者:行者123 更新时间:2023-12-04 05:31:14 33 4
gpt4 key购买 nike

我是 Phpunit 的新手,巧合的是(截至 2012 年 9 月)我安装了全新的 phpunit 3.7.0(实际上它显示为 3.7.1,因为我的 phpunit 安装是 git checkout)

我想要的是一个测试感知的“echo”关键字或 printf 函数,它在 phpunit 测试类中的作用与 diag() 相同。函数或 note()来自 perl 的 Test::More 的函数模块。

diag

diag(@diagnostic_message);

Prints a diagnostic message which is guaranteed not to interfere with test output. Like print @diagnostic_message is simply concatenated together.

note

    note(@diagnostic_message);

Like diag(), except the message will not be seen when the test is run in a harness. It will only be visible in the verbose TAP stream.

Handy for putting in notes which might be useful for debugging, but don't indicate a problem.



我还没有发现 PHPUnit 这样做的方式。
    Please note that PHPUnit swallows all output that is emitted during the execution of a test.
In strict mode, a test that emits output will fail.

workarounds .

最佳答案

我不知道有什么,您可以创建自己的 PHPUnit_Framework_TestListener 并扩展您的测试用例以提供存储这些消息的辅助函数。运行测试后,可以输出这些消息。

这只是一个想法,我从未实现过 TestListener到目前为止,对于 Phpunit,extended testcases这是相当直接的(手册说:“这是扩展 PHPUnit 的最简单方法之一。”)。

希望这已经对您有所帮助,您可能对日志记录也有一些要求,因此不确定您将创建的 STDOUT 是否最终会这样做,这是 PHPUnit 3.6 我希望这与 3.7 几乎相同。

关于phpunit: 有没有类似于 perl 的 Test::More::note() 和 Test::More::diag() 函数的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12606022/

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