草庐IT

Simple-PHPUnit

全部标签

php - 无法通过 PEAR 安装 PHPUnit,需要 PEAR Installer >= 1.9.2,无法从 1.9.0 升级 PEAR

我阅读了其他PHPUnit安装问题,但没有取得任何成功。我的PEAR安装发生了什么?$sudopearupdate-channelsUpdatingchannel"components.ez.no"Channel"components.ez.no"isuptodateUpdatingchannel"doc.php.net"Channel"doc.php.net"isuptodateUpdatingchannel"pear.php.net"Channel"pear.php.net"isuptodateUpdatingchannel"pear.phpunit.de"Channel"pear

PHPUnit: stub 方法未定义

我一定是遗漏了什么。我试图在PHPUnit中的类上stub方法,但是当我在模拟对象上调用该方法时,它告诉我该方法未定义。要stub的示例类:namespaceMyApp;classMyStubClass{publicfunctionmrMethod(){//doingstuff}}为了stub,我写://specifyingallgetMock()argstodisablecallingofclass__construct()$stub=$this->getMock('MyStubClass',array(),array(),'MockMyStubClass',false,false,

PHPUnit:现有对象的模拟方法

PHPUnit的getMock($classname,$mockmethods)根据给定的类名创建一个新对象,并让我更改/测试我指定的方法的行为。我渴望不一样的东西;它正在改变现有对象方法的行为-无需构建新对象。这可能吗?如果是,如何?在考虑这个问题时,我得出的结论是,可以通过序列化对象、更改序列化字符串以使对象成为扩展旧类的新类的实例以及被mock的方法。我想要一些代码-或者也许某处已经有这样的代码。虽然肯定可以再次创建要模拟的对象,但在我的测试中这样做太复杂了。因此,如果我真的不是真的必须这样做,我不想这样做。这是一个TYPO3TSFE实例,在引导过程中设置一次就已经很困难了。

php - 如何使用 laravel 和 phpunit 测试文件上传?

我正在尝试在我的LaravelController上运行这个功能测试。我想测试图像处理,但这样做我想伪造图像上传。我该怎么做呢?我在网上找到了一些示例,但似乎都不适合我。这是我所拥有的:publicfunctiontestResizeMethod(){$this->prepareCleanDB();$this->_createAccessableCompany();$local_file=__DIR__.'/test-files/large-avatar.jpg';$uploadedFile=newSymfony\Component\HttpFoundation\File\Upload

php - 当我尝试从 PhpStorm 运行 PHPUnit 时出错

当我尝试在IDEPhpStorm中运行PHPUnit测试时,我遇到了一点问题。我使用的Composer文件看起来:{"require":{"phpunit/phpunit":"3.7.19"}}现在,当我运行测试时,我收到异常:PHPfatalerror:未捕获的异常'PHPUnit_Framework_Exception'带有消息'Class"PHPUnit_Extensions_RepeatedTest"没有扩展PHPUnit_Framework_TestCase。'怎么了?当我包括梨安装版本测试工作正常。//编辑示例测试类:classReaderTestextendsPHPUni

php - 在 PHPUnit 上使用方法中的类型提示创建接口(interface)的 Mock 对象失败

我创建了以下界面:然后我尝试使用PHPUnit3.4创建此接口(interface)的Mock对象,但出现以下错误:fatalerror:Mock_Action_b389c0b1::execute()的声明必须与D:\Xampp\xampp\php\PEAR\PHPUnit\Framework\TestCase.php(1121)中的Action::execute()兼容:eval()'代码在第2行我查看了从PHPUnit获得的堆栈跟踪,发现它创建了一个实现接口(interface)Action的Mock对象,但按以下方式创建了execute方法:如您所见,PHPUnit接管了数组类型

php - 如何安装旧版本的PHPUNIT?

我们有一台运行PHP5.3.3的Centos6.3机器。我不小心卸载了PHPUNIT。我无法再次重新安装它。较新的版本不适用于PHP5.3.3。不幸的是,我无法更新我的PHP版本(公司卡住了)。我该如何解决?我试过:$wgethttps://phar.phpunit.de/phpunit.phar$chmod+xphpunit.phar$sudomvphpunit.phar/usr/local/bin/phpunit$phpunit--version按照建议,它不起作用。 最佳答案 所以我只是看了一下https://phar.php

php - phpUnit 中的 createMock 和 getMockBuilder 有什么区别?

为了我一生的挚爱,我无法弄清楚createMock($type)和getMockBuilder($type)之间的区别我正在浏览原始文档,只有一个我不明白的衬里。...youcanusethegetMockBuilder($type)methodtocustomizethetestdoublegenerationusingafluentinterface.如果你能给我一个例子,我将不胜感激。谢谢。 最佳答案 createMock($type)在内部使用getMockBuilder():protectedfunctioncreateM

PhpUnit 未显示 php fatal error 的堆栈跟踪

PhpUnit当前不显示代码中出现的PHP错误的堆栈跟踪。我如何配置它才能这样做? 最佳答案 PHPUnit使用错误处理函数来捕获和显示错误,但来自errorhandlers上的PHP手册,Thefollowingerrortypescannotbehandledwithauserdefinedfunction:E_ERROR,E_PARSE,E_CORE_ERROR,E_CORE_WARNING,E_COMPILE_ERROR,E_COMPILE_WARNING,andmostofE_STRICTraisedinthefilewh

PHPUnit 测试实例

我创建了一个mail包装类。我知道有很多库可以发送电子邮件,但我想学习TDD……所以,我创建了一些测试并且我有一些代码。现在我可以在构造函数上设置电子邮件地址并对其进行验证......如果电子邮件地址错误,则会引发异常。电子邮件地址是唯一一个必填字段...我没有设置和获取,因为用户将在构造函数上设置所有电子邮件数据。现在,我要编写发送测试。我不知道如何开始。如果我不想拥有setter和getter,我如何测试这些值是否存在(主题、邮件正文、标题)?如何测试是否可以发送电子邮件?现实世界的TDD示例对我来说很难。我已经尝试了解它,我已经阅读了很多东西,但我无法测试真正的代码。谢谢。