Zend_Test_PHPUnit_ControllerTestC
全部标签 我正在尝试配置PhpStorm2017.2以将PhpUnit5用于我的PHP5.6项目。我已经从theofficialsource下载了phpunit-5.7.21.phar文件。并将它放在我的PHP5.6安装目录中。在PhpStormSettings>>Languages&Frameworks>>PHP>>TestFrameworks中,我已链接到.phar可执行文件并设置默认配置文件到项目根目录中的phpunit.xmlphpunit.xml的内容如下:.tests我正在尝试在tests/unit目录中构建测试,在该目录中我的源文件项目结构将按描述进行镜像inthemanual.例
有没有办法用PHPUnit(或者其他PHP测试框架)测试邮件是否发送正确?我必须测试使用PHP函数mail()的代码。使用自定义邮件程序类,我总是可以进行模拟,但是对于mail()...?也许有一些插件能够使用IMAP并验证是否收到邮件?(如果可能的话,它应该与操作系统无关……) 最佳答案 这里的解决方案是将邮件包装在一个可以模拟的类中,然后改用它。我看不出测试mail()本身有什么意义,我确信它已经被彻底测试过了。 关于php-如何使用PHPUnit测试mail(),我们在StackO
我有一个非常简单的设置:Apache服务器、PHP5.3、Eclipse、PHPZend调试模块当我单击调试时,它会看到我的断点并且一切正常。但仅限于第一页。如果我在集成浏览器中单击不同的页面,从那一刻开始的所有断点都将被忽略。我认为这与第一页的URL类似于http://localhost/schedule?start_debug=1&debug_host=127.0.0.1&send_sess_end=1&debug_session_id=1003&original_url=http%3A%2F%2Flocalhost%2Fschedule&debug_start_session=1
我很好奇其他人是如何处理这个问题的。编写测试并没有那么糟糕,但是mock有点糟透了并且降低了我的流程。一个人是否可以拥有一个“fixtures”目录并使用特定的模拟声明来举例说mock_db.php?更进一步,将这些模拟抽象到一个函数中是否是一种不好的做法?即://functiontoincludeadbmockinclude_once'test/fixtures/dbmock.php';$mockMYSQL=$dbmock('mysql','db1');$mockMSSQL=$dbmock('mssql','db2');只是想知道其他有经验的测试人员如何处理这个问题。我正在编写脚本来
我正在使用PHPUnit3.6.10(不幸的是我目前无法升级到更新的版本)。在处理一些遗留代码的模拟时,我遇到了一个奇怪的错误。试过谷歌,只有与静态方法相关的结果出现,这不是我的情况。有这门课:classServicesMapperextendsDbMapper{//...(somemethods)publicfunctionsaveTravel(ServiceTravel$oTravel){$this->getAdapter()->insert('services_travels',$oTravel->getToArray());}//...(somemethods)}我试着模拟它:
我正在尝试使用Zend_Http_Client和POST将数据发送到GoogleAnalytic的收集器。我有一个数组$postParams,其中包括我的跟踪ID、cid和命中类型,我通过setParameterPost()将此数组的值添加到我的客户端。这是我的操作的相关部分:$client=newZend_Http_Client('https://ssl.google-analytics.com/debug/collect');foreach($postParamsas$postParam=>$postValue){$client->setParameterPost($postPar
假设我有以下界面:interfaceMyInterface{publicfunctionyieldData();}我想创建一个这个接口(interface)的模拟,例如像这样:$mocked_instance=Phake::partialMock(MyInterface::class);模拟yield方法的最佳方式是什么?这是我想出的最好的:Phake::when($mocked_instance)->yieldData()->thenReturn([]);在PHPUnit/Phake中有没有一种方法可以更接近函数的原始功能(即返回生成器)? 最佳答案
PHPUnit::如何设置和获取cookie的功能,测试时不会出现错误:header已发送?示例出现错误:PHPUnit_Framework_Error_Warning:无法修改header信息-header已发送MyCookie.phpclassMyCookie{publicstaticfunctioncreateCookie(){$uid=null;$cookieName='test_cookie';if(!isset($_COOKIE[$cookieName])){$uid=unique_hash();setcookie($cookieName,$uid,0,'','',fals
我将ZendFramework与我的应用程序模块一起使用,我有兴趣以相同的方式集成Doctrine2:一个模块包含:控制者模特观点助手Doctrine2的问题是它需要一个实体目录和一个代理目录。我希望实体目录成为我的模块化结构中的模型目录,但根据我的研究,我还没有找到解决方案。目前,使用默认模块,元数据实现如下所示:$config->setMetadataDriverImpl($config->newDefaultAnnotationDriver(APPLICATION_PATH.'/modules/default/models'));如果我想添加一个新模块,比如说“cms”,我无法用
在我的Controller中:$paginator=Zend_Paginator::factory($mdlPost->getPosts($this->moduleData->accordion,'nameASC'));if(isset($params['cities'])){$paginator->setCurrentPageNumber(intval($params['cities']));}$paginator->setItemCountPerPage(4);$this->view->posts=$paginator;在View中我有这样的东西:if($this->posts!=