草庐IT

Netbeans-PHPUnit

全部标签

php - PHP : simpletest, phpunit 或哪个单元测试框架?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion我是simpletest的super粉丝因为这是我所知道的。它对模拟和网络测试有很好的支持。但我总是害怕停滞不前,所以任何有说服力的转换论据都将不胜感激。 最佳答案 我认为两者都不会很快消失。Simpletest由一小群参与其中的人维护。PHPUnit似乎拥有更大的用户群,这可以算作转换的一个理由。不过,我对Simpletest很满意。

PHPUnit在实例化后将类的实例变成模拟

有没有办法用PHPUnit创建一个模拟类,然后我可以使用它的类名创建一个新实例?我有一个定义了两个方法的接口(interface)。像这样的东西:interfaceFooInterface{functiongetA();functiongetB();}然后我有另一个类接受类名,创建该类的一个实例,检查它是否是它所期望的实例(FooInterface),然后调用该类的两个方法来获取一些信息。classFooInfo{protected$a;protected$b;publicfunction__construct($fooClass){$foo=new$fooClass;if(!($fo

php - Xdebug 和 Netbeans 问题

我正在尝试配置xdebug以使用Netbeans6.9和php5.3就我而言,我已经正确设置了xdebug。我可以从phpinfo页面看到xdebug扩展。我已阅读其他帖子并尝试了他们的建议,但无济于事当我点击调试按钮时,它直接在浏览器中打开页面,我可以在netbeans的底部Pane中看到消息“等待连接”这是我在php.ini中的设置zend_extension=/usr/lib/php5/20090626+lfs/xdebug.soxdebug.remote_enable=onxdebug.remote_handler=dbgpxdebug.remote_host=localhos

未找到 PHPUnit 类 TestCase

我正在创建一个PHP库并想开始编写测试。我收到错误Fatalerror:Class'PHPUnit\Framework\TestCase'notfound。我的项目结构是:在我的主目录中,我有composer.json,一个包含我所有类的src/目录,一个包含unit/和acceptance/子目录的tests/目录。我尝试运行的测试位于unit/目录中。我正在使用命令行界面运行测试,因此在运行phpunittests/unit/testMyClass.php时会发生错误testMyClass.php看起来像:我的composer.json是:{"require-dev":{"phpu

php - 无法在 PHPUnit 中使用数据提供程序运行单个测试

我在使用命令行运行测试时遇到问题:如果我这样运行phpunit:phpunit-–no-configuration-–filtertestAddDataTestDataProviderTest.php它工作正常。但是我们使用正则表达式来准确指定我们要测试的方法的名称:phpunit-–no-configuration-–filter/::testAdd$/DataTestDataProviderTest.php不幸的是,第二种方法不起作用。源代码是:assertEquals($c,$a+$b);}publicfunctionprovider(){returnarray(array(0,

带闭包的 PHPUnit 测试

这是试图为类的方法编写测试,该类调用带有闭包的模拟方法。您将如何验证正在调用的闭包?我知道您可以断言该参数是Closure的一个实例。但是您将如何检查有关闭包的任何信息?例如,您将如何验证传递的函数:classSUT{publicfunctionfoo($bar){$someFunction=function(){echo"Iamananonymousfunction";};$bar->baz($someFunction);}}classSUTTestextendsPHPUnit_Framework_TestCase{publicfunctiontestFoo(){$mockBar=$

php - Netbeans:如何禁用这个烦人的警告?

这个问题中出现的同样问题在我身上发生了很多:Warning"DonotAccessSuperglobal$_POSTArrayDirectly"onNetbeans7.4forPHP但是-我当然会注意$_POST和用户输入等。但是我使用NetBeans不理解的自定义函数来执行此操作,因此我的IDE充满了警告。另一个烦人的例子:“函数声明中的嵌套block太多”。当然你应该避免这种情况,但我认为这并不总是可能的。如何在NetbeansIDE中禁用单个警告,同时仍保留所有其他警告? 最佳答案 Netbeans并不是要您小心。Netbea

PHPUnit 错误 "undefined index : HTTP_HOST"

我已经声明了一个HTTP_HOST,如下所示。publicfunctiontestReadUser(){$_SERVER['HTTP_HOST']="x.y";...}尽管如此,phpunit还是给出了undefinedindex错误。这是为什么? 最佳答案 在您的phpunit.xml文件中,您可以设置服务器变量。在phpunit根下添加php元素:参见thedocs获取更多信息。 关于PHPUnit错误"undefinedindex:HTTP_HOST",我们在StackOverfl

PHPUnit 和 Selenium 示例 17.1

我正在尝试使用selenium17.1(Link)从PHPUnit运行示例我已经完成了所有安装,但它总是失败。我刚刚得到:1)WebTest::testTitleBadMethodCallException:Thecommandhttp://localhost:4444/wd/hub/session/urlisnotrecognizedbytheserver.我没有对示例进行任何更改。Selenium服务器正在运行。我不知道哪里出了问题。帮忙?回答:请看@rutter的评论:您知道您运行的是哪个版本的PHPUnit_Selenium吗?据报告,自1.3.2起已修复此问题(更新日志、拉取

Phpunit,如何测试方法是否为 "nothing"?

classTestme(){publicfunctiontestMe($a){if($a==1){thrownewException('YAY');}}}所以很容易测试它是否抛出异常/***@expectedExceptionException*/publicfunctiontest(){newTestme(1);}但是如果它什么也没做?publicfunctiontest(){newTestme(2);??????} 最佳答案 场景函数不执行任何操作有两种可能的情况:场景一:没有return语句您的函数什么都不做,因为您没有在其中