草庐IT

Netbeans-PHPUnit

全部标签

php - 设置 PHPUnit Mock 后,我可以更改方法吗?

我试图在setUp中为所有被覆盖的方法创建一个具有默认值的模拟实例,然后在几个不同的测试中根据我正在测试的内容更改某些方法的返回值,而无需设置整个模拟。有办法做到这一点吗?这是我尝试过的方法,但是天真的方法不起作用。该方法仍然返回原始期望设置的值。第一次设置:$my_mock->expects($this->any())->method('one_of_many_methods')->will($this->returnValue(true));在另一个断言之前的另一个测试中:$my_mock->expects($this->any())->method('one_of_many_me

PHPUnit : Fatal error handling

我使用PHPUnit进行单元测试,但是当触发fatalerror时,脚本死亡,我没有正确的PHPUnit输出。我希望PHPUnit输出保持格式正确,因为它是由Eclipse插件读取的。实际上,fatalerror会停止PHPUnit,并且在Eclipse中插件无法解释任何内容(因为PHPUnit脚本有错误,而不是处理它)。谢谢 最佳答案 您需要使用PHPUnit的进程隔离功能-在新进程中启动每个测试套件。phpunit--process-isolation...这是确保fatalerror不会破坏您的phpunit输出的唯一方法。执

PHPUnit : Fatal error handling

我使用PHPUnit进行单元测试,但是当触发fatalerror时,脚本死亡,我没有正确的PHPUnit输出。我希望PHPUnit输出保持格式正确,因为它是由Eclipse插件读取的。实际上,fatalerror会停止PHPUnit,并且在Eclipse中插件无法解释任何内容(因为PHPUnit脚本有错误,而不是处理它)。谢谢 最佳答案 您需要使用PHPUnit的进程隔离功能-在新进程中启动每个测试套件。phpunit--process-isolation...这是确保fatalerror不会破坏您的phpunit输出的唯一方法。执

php - PHPUnit 和数据提供者的问题

我有以下测试用例:include_once('../Logger.php');classLoggerTestextendsPHPUnit_Framework_TestCase{publicfunctionproviderLogger(){returnnewLogger;}/***@dataProviderproviderLogger*/publicfunctiontestAddStream($logger){$this->assertTrue(false);}}当我在PHPUnit中运行它时,我得到:PHPUnit3.4.14bySebastianBergmann...........

php - PHPUnit 和数据提供者的问题

我有以下测试用例:include_once('../Logger.php');classLoggerTestextendsPHPUnit_Framework_TestCase{publicfunctionproviderLogger(){returnnewLogger;}/***@dataProviderproviderLogger*/publicfunctiontestAddStream($logger){$this->assertTrue(false);}}当我在PHPUnit中运行它时,我得到:PHPUnit3.4.14bySebastianBergmann...........

Phpunit 覆盖范围 : what is the difference between 'addUncoveredFilesFromWhitelist' and 'processUncoveredFilesFromWhitelist' options?

我正在尝试为特定目录的phpunit设置代码覆盖率。谁能告诉我:lib/和lib/和lib/目前前两个选项可以使用(覆盖率不同)但第三个选项将失败并出现类似于HowtoadduncoveredfilestoPHPUnitcodecoveragereportoftheYiiapplication的错误.刚开始使用phpunit,想了解这些白名单选项之间的区别。我阅读了有关此的官方文档,但不确定我是否理解。 最佳答案 快速浏览php-code-coverage的源代码GitHub上的包揭示了真相:如果addUncoveredFilesF

Phpunit 覆盖范围 : what is the difference between 'addUncoveredFilesFromWhitelist' and 'processUncoveredFilesFromWhitelist' options?

我正在尝试为特定目录的phpunit设置代码覆盖率。谁能告诉我:lib/和lib/和lib/目前前两个选项可以使用(覆盖率不同)但第三个选项将失败并出现类似于HowtoadduncoveredfilestoPHPUnitcodecoveragereportoftheYiiapplication的错误.刚开始使用phpunit,想了解这些白名单选项之间的区别。我阅读了有关此的官方文档,但不确定我是否理解。 最佳答案 快速浏览php-code-coverage的源代码GitHub上的包揭示了真相:如果addUncoveredFilesF

PHPUnit 在运行第一个测试之前设置并在运行最后一个测试后拆除

我正在尝试为使用PHPUnit的php应用程序实现类似Django的测试实用程序。像Django一样,我的意思是在运行第一个测试之前从主数据库创建一个单独的测试数据库,并在运行最后一个测试后删除它。即使一次运行许多测试用例,测试数据库也只需要创建一次。为此,我采取了以下方法——我定义了一个自定义测试套件类,这样我就可以在它的setup和teardown方法中编写用于创建和删除数据库的代码,然后使用这个类来运行测试,如下所示$phpunitMyTestSuiteMyTestSuite定义了一个名为suite的静态方法,我只使用glob并将测试添加到测试套件中,如下所示publicstat

PHPUnit 在运行第一个测试之前设置并在运行最后一个测试后拆除

我正在尝试为使用PHPUnit的php应用程序实现类似Django的测试实用程序。像Django一样,我的意思是在运行第一个测试之前从主数据库创建一个单独的测试数据库,并在运行最后一个测试后删除它。即使一次运行许多测试用例,测试数据库也只需要创建一次。为此,我采取了以下方法——我定义了一个自定义测试套件类,这样我就可以在它的setup和teardown方法中编写用于创建和删除数据库的代码,然后使用这个类来运行测试,如下所示$phpunitMyTestSuiteMyTestSuite定义了一个名为suite的静态方法,我只使用glob并将测试添加到测试套件中,如下所示publicstat

PHPUnit Selenium,clickAndWait() 函数在 Opera 中不起作用

我对Opera中的PHPUnit_Selenium有疑问。如果我点击了测试代码中的元素,页面将不会加载。在火狐、IE、Chrome、Safari等其他浏览器中,都可以正常使用。代码:$browser->clickAndWait(link);这是SELENIUMREMOTECONTROL的下一步:click(link)waitForPageToLoad(120000)超时后,如果我点击浏览器中的链接,页面会重新加载。我有SeleniumRCv.2.31.0和Opera版本12.41,但我也在Opera11.50上进行测试。你知道出了什么问题吗? 最佳答案