草庐IT

Zend_Test_PHPUnit_ControllerTestC

全部标签

php - Zend_Translate - Zend_Navigation 和 Routing 组合问题!

我在结合Zend_Navigation、Zend_Translate和所需的路由方面遇到了一些困难。我的站点导航是通过基于XML文件的Zend_Navigation完成的。我现在已将翻译添加到基于Zend_Translate的站点,并添加到Bootstrap的以下路由更改中:protectedfunction_initRoutes()$config=newZend_Config($this->getOptions());$languages=array_keys($config->languages->toArray());$zl=newZend_Locale();$lang=in_a

PHPUnit Mock 稍后改变期望

我有一个简单的用例。我想要一个setUp方法,它会导致我的模拟对象返回一个默认值:$this->myservice->expects($this->any())->method('checkUniqueness')->will($this->returnValue(true));但是在一些测试中,我想返回一个不同的值:$this->myservice->expects($this->exactly(1))->method('checkUniqueness')->will($this->returnValue(false));我过去使用过用于C++的GoogleMock,它有“retur

php - 如何在 Zend Framework 2 中包含外部库?

我成功地使用了zf2-tutorial,但是在尝试集成外部库(如“jpgraph”)时我完全感到困惑。我知道我必须使用autoload或servicemanager来执行此操作,但它不起作用。jpgraph的php文件位于vendor/graph目录中。我在ControllerindexAction中使用了一个名为Jpgraph的模块,我尝试:$graph=newGraph($width,$height);这给了我一个错误:Fatalerror:Class'Jpgraph\Controller\Graph'notfoundin...jpgraph库不使用命名空间。ialsotriedt

php - Zend Youtube API - 在单个帐户上上传视频?

我想允许任何人在我的网站上注册,将他们的视频上传到我自己的youtube用户channel。我不希望他们评论任何视频,或任何需要他们自己的登录凭据的内容。我应该使用:ClientLogin授权吗?如果是这样,我如何才能获得token,以便允许我的网站与我的YouTubechannel帐户进行交互?这里的任何灯都将不胜感激,因为我有点迷路了。 最佳答案 我已经使用ClientLogin完成了这项工作。下面是一个基本类。此类返回准备好发出经过身份验证的请求的ZendHTTP客户端实例。get($token_name);if(!empty

php - 扩展 PHPUnit : adding a decorator

上下文我最近继承了一个程序良好的PHP应用程序的开发和维护(讽刺)。该应用程序基于商业软件(我不会命名),并且有一个自定义层(我们的)构建在它之上。不幸的是,此应用程序使用大量全局变量和单例变量(双关语)。我已经为我们覆盖的所有内容构建了测试用例。然而,很多事情都依赖于某些全局状态,这可能会导致竞争条件和各种奇怪的事情。随机化测试为了捕捉这些奇怪的东西中的大部分(我喜欢这样调用它们),我构建了一个PHPUnitTestDecorator,[如手册][1]。这个:classPHPUnit_Extensions_RandomizerextendsPHPUnit_Extensions_Tes

php - PHPUnit 和 PHPSpec 的异同

我目前正在研究我应该为php使用哪个测试框架。我有两个选择是PHPUnit和PHPSpec。我知道PHPUnit是TDD(测试驱动开发),而PHPSpec是BDD(行为驱动开发)。但是,由于缺少任何真正的PHPSpec教程并且PHPSpec站点上的文档有限,我无法得出完整的结论。我想问大家的是,这两个框架之间还有哪些异同?是的,BDD和TDD很重要,但还有其他的吗?他们看起来很相似,但没有人详细谈论他们的相似之处。谢谢你。 最佳答案 PHPSpec是一个SpecBDD工具,更专注于指导您进行代码设计,而不是一个测试框架。这取决于您对

php - Twitter Bootstrap 框架和 Zend 框架

我知道它很新,但是有人开始使用Twitter的BootstrapFramework和ZendFramework吗?我可以弄清楚基本的东西,比如让bootstrap处理我的布局页面,但我如何使用Zend_Form的一些bootstrap表单调用?只是在寻找一个起点。任何帮助都会很棒。谢谢! 最佳答案 有一个名为EasyBib_Form_Decortators的项目,是使用Bootstrap和ZendForm的小型库。它工作得很好,好的,“MessageFormatter”ViewHelper有一些错误,但没关系:-)Easybib

php - 使用 PHP、Zend 和 openssl 对 PDF 进行数字签名

我正在尝试使用PHP、openssl和Zend框架(用于pdf重新渲染/处理)构建一个简单的PDF文档签名例程。我找到了this,但它根本行不通,Zend无法打开任何pdf,甚至Zend自己的测试pdf也无法打开,Zend也不会报告原因,只是说它“不能”。我很确定我能够有效地创建key/证书,因为这已被详细记录,但是是否有可靠的方法将生成的证书附加到PDF,就像上面的Zend扩展曾经建议的那样?functionDigiSignPDF($pdf_sign_request){if(get_magic_quotes_gpc()){$new_pdf=stripslashes($pdf_sign

php - 在 PHPUnit 中如何强制 tearDownAfterClass() 在意外异常的情况下运行

因此,每次我在PHPUnit中遇到意外异常(例如由于完整性检查而无法插入数据库)时,我的测试都会失败,并且它会在不运行tearDownAfterClass()函数的情况下出错。这将使我的数据库处于困惑状态,因此我必须手动清理它。有没有办法确保始终执行tearDownAfterClass()? 最佳答案 PHPUnit将调用tearDownAfterClass,即使在测试方法中存在错误和失败时也是如此。当setUpBeforeClass抛出异常时,它不会调用它。为了确保您的数据库得到清理,将清理代码移动到您从tearDownAfter

php - 使用 PHPUnit 测试 error_log

我有这个功能,我想像这样测试:classLogger{functionerror($msg){if(is_string($msg)){error_log($msg);die($msg);}elseif(is_object($msg)){error_log($msg.''.$msg->getTraceAsString());die('exception');}else{var_dump($msg);die('error');}}我想在不记录$msg的情况下测试这个函数。有没有办法确定error_log是否在没有日志记录的情况下工作?我尝试使用setExpectedException但我无