草庐IT

Zend_Test_PHPUnit_ControllerTestC

全部标签

phpunit - 测试速度非常慢

我在单元测试的世界里越来越深入。我遇到的一个问题,这是我想要反馈的地方,是当一个人运行多个测试套件时,也许只有我一个人,但我需要使用参数--process-isolation让我的测试通过。我可以单独运行我的任何套件而不会出现问题,但是如果我在没有--process-isolation的情况下运行,则运行我目前拥有的6-7个套件以及它们之间分布的180个断言会失败。问题是使用此参数会使测试运行持续35分钟,而不是通常的2.5分钟。这是一个漫长的等待。问题与使用模拟的DI容器进行特定测试有关,并且当测试套件以链方式运行时,容器未正确重新初始化。在DI-Container上设置的静态属性以

php - Zend 表单 : How do I make it bend to my will?

我已经多次阅读该手册,搜索了Google提供的有关该主题的帖子,我什至还买了几本与ZF相关的书籍。现在,为什么我仍然感到困惑?我可以使用Zend_Form制作一个可验证且功能正常的表单。我无法做到的是,它制作了一个看起来与我希望它看起来完全一样的表格,并带有我希望它具有的错误消息。我想要自定义按钮,我想要时髦的布局,我想要在表单中间插入文本等等。有没有人有一种简单的方法来实现这些事情?让我觉得框架正在节省我的时间而不是成本的东西?我可以放弃ZendForm...制作我自己的表单,让它的Action点击一个页面来验证和处理发布的数据,我可以尽可能快地完成它,但我真的想“得到”这个并且能够

php - 如何使用 PHPUnit 在 Symfony2 中设置数据库密集型单元测试?

我对测试世界还很陌生,我想确保自己走在正确的轨道上。我正在尝试使用phpunit在symfony2项目中设置单元测试。PHPUnit正在运行,简单的默认Controller测试运行良好。(但这不是关于功能测试,而是关于我的应用程序的单元测试。)虽然我的项目在很大程度上依赖于数据库交互,但据我了解phpunit'sdocumentation,我应该建立一个基于\PHPUnit_Extensions_Database_TestCase的类,然后为我的数据库创建固定装置并从那里开始工作。然而,symfony2仅提供了一个WebTestCase类,该类仅从\PHPUnit_Framework_

PHPUnit:如何使用多个参数模拟多个方法调用?

我正在为使用PHPUnit的方法编写单元测试。我正在测试的方法在同一个对象上调用相同的方法3次,但使用不同的参数集。我的问题类似于提出的问题here和here其他帖子中提出的问题与只接受一个参数的模拟方法有关。但是,我的方法需要多个参数,我需要这样的东西:$mock->expects($this->exactly(3))->method('MyMockedMethod')->with($this->logicalOr($this->equalTo($arg1,$arg2,arg3....argNb),$this->equalTo($arg1b,$arg2b,arg3b....argNb

php - "Web interface"到 PHPUnit 测试?

是否有一个简单的“Web界面”来运行PHPUnit测试套件?即在命令行上运行测试并输出格式良好的HTML结果的PHP脚本。我开发Web应用程序,日常工作流程通常在IDE和浏览器之间切换。我希望在相同的环境中进行单元测试。我正在寻找一些非常简单且基于PHP的东西——我正计划进入phpUnderControl(它具有我正在寻找的功能),但还没有。 最佳答案 我最近发现了VisualPHPUnit对于不想从命令行运行PHPUnit的每个人来说,这看起来是一个非常非常好的界面:这似乎是@Matt的下一次迭代PHPUnitTestReport

php - XDebug 还是 Zend 调试器?

在我看来,它们具有相同的功能集,但我不确定。两者在功能上有什么区别? 最佳答案 Zend调试器仅提供二进制格式,因此您需要小心下载正确的版本以匹配您的php版本(http://downloads.zend.com/pdt/server-debugger/)。我能够让它与EclipsePDT一起工作,并使用本地XAMPP安装进行逐行调试。我认为Zend有一些额外的功能,但根据我的经验,它更容易设置。XDebug更加开放,但我还没有成功地将它配置为与EclipsePDT一起使用。 关于php

php - 我如何断言结果是 PHPUnit 中的整数?

我希望能够测试结果是否为整数(1,2,3...),其中函数可以返回任何数字,例如:$new_id=generate_id();我以为会是这样的:$this->assertInstanceOf('int',$new_id);但我收到此错误:PHPUnit_Framework_Assert::assertInstanceOf()的参数#1必须是类或接口(interface)名称 最佳答案 $this->assertInternalType("int",$id);编辑:截至PHPUnit8,答案是:$this->assertIsInt($

Php on zend,如何为查询转义变量?

我在ZendFramework中做一些查询,我需要确保在下一种格式中不可能有SQL注入(inject)。我可以使用mysql_escape(deprecated)并且不会做所有的工作。如果我尝试使用real_mysql_escape,它将无法获取与数据库的连接,而且我无法找到zend_filter如何解决该问题。我正在执行的查询(简化)具有下一个语法:$db=Zend_Registry::get('db');$select="SELECTCOUNT(*)ASnumFROMmessagemWHEREm.messageLIKE'".$username."%'";$row=$db->fetc

php - 如何使用 Zend_Db_Table 选择列的 MAX?

使用Zend_Db_Table从表中选择列的最大值的最简单、最简单的方法是什么?基本上,我只想在Zend中运行这个查询:SELECTMAX(id)ASmaxIDFROMmyTable; 最佳答案 你需要使用Zend_Db_Expr来使用mysql函数:return$this->fetchAll($this->select()->from($this,array(newZend_Db_Expr('max(id)asmaxId'))))); 关于php-如何使用Zend_Db_Table选择

php - Zend 框架 : Proper way to interact with database?

我对Zend框架和MVC还很陌生,我对Zend_DB以及与数据库交互的正确方式有点困惑。我正在使用PDOMySQL适配器并创建了一些类来扩展抽象类:classUsersextendsZend_Db_Table_Abstract{protected$_name='users';protected$_primary='user_id';protected$_rowClass='User';publicfunctiongetUserbyID($id){/*code*/}//Morecodehere}classUserextendsZend_Db_Table_Row_Abstract{//Co