可能重复:
How do you use PHPUnit to test a function if that function is supposed to kill PHP?
我正在写一些单元测试。我目前正在测试的系统是MVC框架中的Web应用程序。
如果我们想要在没有site-skin系统的情况下渲染页面,我们传统上一如既往地运行我们的代码,但是打印出一个“die();”函数结尾处的语句,在网站其余部分呈现之前退出。
现在我们正在添加单元测试,这似乎是一个问题。你看,当你DIE();在MVC中,似乎向PHPUnit发送了相同的消息。
Grrrr ......代码现已呈现为“Untestable”
还是有吗?
如何计划骰子();在PHPUnit?
我知道在测试之前添加它:
/**
* @expectedException PHPUnit_Framework_Error
*/
但它不允许我测试变量,因为它们是“死亡时”(至少我不这么认为)
任何能够启发我的人?
谢谢! :d
答案 0 :(得分:3)
在这种情况下,您只需使用return
代替die
。在IDE中将所有死亡替换为返回应该很容易。
真正的问题是,当你真的需要测试exit
或die
返回的应用程序退出代码时(请参阅edorian的回答)。