草庐IT

Zend_Test_PHPUnit_ControllerTestC

全部标签

php - 在 Zend Framework 中查找执行时间的最佳实践方法

我对查找ZendFramework应用程序执行时间的最佳/标准方法很感兴趣。目前我在public/index.php上启动计时器,然后在Zend_Registry中注册它,以供稍后调用,然后布局使用它来计算总时间。有更好的方法吗?我知道这甚至不完全准确,因为在postDispatch()中仍然(或至少可以)执行一些将在呈现View后运行的执行。 最佳答案 我最后添加了$appStartTime=microtime();在Bootstrap被实例化之前,把global$appStartTime;@list($startMilli,$s

php - 使用 Zend 框架时从多个表中获取数据?

是否有使用Zend从多个数据库表中获取数据的最佳实践?我想知道而不是最终想要在不久的将来重构我编写的代码。我正在阅读Zend文档,它说:"YoucannotspecifycolumnsfromaJOINedtabledtobereturnedinarow/rowset.DoingsowilltriggeraPHPerror.ThiswasdonetoensuretheintegrityoftheZend_Db_Tableisretained.i.e.AZend_Db_Table_Rowshouldonlyreferencecolumnsderivedfromitsparenttable

php - Zend 中的每个表都必须映射到它自己的类吗?

我并不是说所有模型都是表格。我想问的是,在使用Zend时是否每个表都必须有自己的专门定义的类?有什么办法可以摆脱这种笨拙的样板编码。我们刚刚开始研究Zend(希望离开程序化PHP领域!),我的同事认为这最终可能会非常耗时。这是人们使用ORM解决方案的原因吗?还有其他解决办法吗?感谢您的回复。 最佳答案 ZendTable类遵循TableDataGateway模式,根据定义...holdsalltheSQLforaccessingasingletableorview:selects,inserts,updates,anddeletes

php - 如果断言失败,如何让 PHPUnit 执行某些操作

我正在测试函数是否正确地将数据添加到数据库,但我希望在测试完成后删除测试数据。如果测试失败,它会在失败时退出并且永远不会有机会删除测试行。这是唯一一个命中数据库的测试,所以我真的不想在tearDown()方法中做任何事情。我正在测试一个$obj->save()类型的方法,该方法保存从平面文件解析的数据。 最佳答案 如果您的数据库支持事务,您可以在测试开始时发出start_transaction。如果测试失败(导致程序退出),将执行隐式回滚并撤消您的更改。如果测试成功,则发出显式回滚。另一种选择是将断言包装在try-catch语句中-

php - 在我的测试/bootstrap/setup/etc 中使用 phpunit 命令行参数

当我使用'--verbose'phpunit命令行参数时,我希望仅能够从我的测试中将一些配置数据打印到标准输出。我怎样才能做到这一点? 最佳答案 可能这并不是PHPUnit作者的真正意图,但您可以这样做: 关于php-在我的测试/bootstrap/setup/etc中使用phpunit命令行参数,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4905611/

php - 德语的 Zend_Pdf 字体问题......?

我正在使用Zend_Pdf类创建一个PDF文档。这里的内容是德语,所以当我将内容写入pdf时,它会自动转换那些字符到一些特殊字符。我无法找出问题....?我尝试了一些代码$str=html_entity_decode($str,ENT_COMPAT,"UTF-8");但它并没有接受它并且显示相同的结果.....!!!!!请提供一些对我有帮助的代码或链接.......提前致谢...... 最佳答案 谢谢Zsub,我使用以下代码得到了解决方案:$text=$this->_font->encodeString($text,'UTF-8')

PHPUnit:如何保存传递给 stub 方法的参数

SomeClass类中的方法setValue()接受参数,但无法取回此参数以进行断言。我能否为方法setValue()创建一个stub,以允许保存传递给该方法的参数?classSomeClass{publicfunctionsetValue($name,$value){//dosomestuff}publicfunctiondoSomething(array$values){foreach($valuesas$name=>$value){$this->setValue($name,trim($value));}}}classTestSomeClassextendsPHPUnit_Fra

php - 无法在 Zend Framework Controller 插件的 postDispatch() 中的 viewRenderer 上调用 setNoRender()

调用setNoRender()或viewRenderer助手上的任何方法似乎对Controller插件没有影响。classTestPluginextendsZend_Controller_Plugin_Abstract{publicfunctionpostDispatch(Zend_Controller_Request_Abstract$request){$viewRenderer=Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');$viewRenderer->setNoRender();}}Vie

php - Zend 工具创建操作无法识别模块中的 Controller

我使用以下方法创建了一个模块和Controller:$zfcreatemoduleapi$zfcreatecontrollerauthindex-action-included=1api这工作正常,当我请求http://localhost/api/auth时,我得到了索引操作。我想创建一个名为验证的新操作:$zfcreateactionvalidateauthview-included=1api但有人告诉我:AnErrorHasOccurredControllerauthwasnotfound.编辑:我已经直接在Controller中添加了Action,并创建了View文件-但我希望我

php - 使用 PHPStorm 解决 PHPUnit xdebug 远程调试问题

我正在尝试让Xdebug远程调试工作,我正在使用PHPStorm作为我的IDE。我的网络服务器/代码托管在远程计算机(amazonec2)上。我在我的远程服务器上的php.ini中有以下几行(PHPCLI,因为我正在进行PHPUnit调试)zend_extension=/usr/lib/php5/20090626+lfs/xdebug.soxdebug.remote_enable=1xdebug.remote_autostart=1xdebug.remote_handler=dbgpxdebug.remote_mode=reqxdebug.remote_connect_back=1xd