草庐IT

Zend_Test_PHPUnit_ControllerTestC

全部标签

phpunit 在测试之间重置环境

我有一个symfony2应用程序,我正在使用phpunit。我有一些单元测试,其中我使用模拟来模拟AppKernel和向应用程序发出“真实”请求的功能测试。单独运行单元测试或功能测试时,一切正常。当我想一次运行所有测试时,它变得很讨厌。一旦单元测试完成,phpunit就会停止,并告诉我:fatalerror:无法在第35行的C:\Users\sebastian\workspace\ppInterface\app\AppKernel.php中重新声明类AppKernel我不明白这一点,因为我认为phpunit会在它自己的环境中运行每个测试。这似乎并非如此。我该怎么做才能把事情做好并“重置

php - 如何使用 PHPUnit 插入特定于测试用例的数据库行

当使用PHPUnit测试依赖于数据库的类时,getDataSet()方法提供数据作为整个测试套件的测试夹具。这很好,但是如何为特定测试提供数据呢?这并不罕见,尤其是在使用最小化数据集时,对于每个测试都需要在所有测试使用的公共(public)数据之上的不同数据库数据。我知道PDO对象可用,在我们的例子中,应用程序的nativeDB对象也可用(意思是,我们可以运行原始查询或使用应用程序中的其他功能),但最好有一种方法来插入数据这是由PHPUnit的数据集容器驱动的,因此所有测试数据都以相同的方式处理,以提高清晰度并简化维护。有什么办法可以做到这一点吗? 最佳答案

phpunit - php命令行模拟文件上传的方法

我是PHPUnit测试框架的新手。我们知道PHP的move_uploaded_file()函数在通过httpPOST方法上传文件之前不会工作所以,问题是如何在PHP命令行中模拟它注意:使用selenium我们可以模拟webform..但我需要另一种选择。 最佳答案 您基本上需要让您的代码更易于测试。将其分解,以便您可以独立于其余代码测试通过HTTP上传文件这一简单行为。move_uploaded_file的主要用途是设置一个额外的安全站点,这样您就不会被骗去移动其他文件,move_uploaded_file只是确保文件是在同一时间上

php - PHPUnit 的测试输出中的 S 和 W 是什么?

我最近更新了SebastianBergmann的PHPUnit,当我尝试运行测试用例时,我得到了以下输出:...EEE.EEEEE.E.EE............EFFFE.F..FF.........SSSSSSSSSSSSSS63/110(57%)SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS....W.W110/110(100%)根据文档,我可以发现:.SuccessEErrorFFailed我不确定这里的W和S是什么。谁能告诉我那是什么?如果其他信息有帮助,W为黄色,S为蓝色。 最佳答案

PHP Zend 框架生成器

我正处于学习用于PHP开发的ZendFramework的阶段,我从事“肮脏”的PHP编程已有大约2年了,我从错误中学到了很多东西。我被介绍到RubyOnRails,它是一个很棒的框架,Ruby也是一种非常有趣的语言,但并不是每个人都希望他们的网站在RoR中,至少不是我所有的客户。因此我做了很多PHP。在从事RoR工作后,我发现ZendFramework提供了非常相似的功能和环境,因此我对此感到非常兴奋。不过,我很想知道是否有任何“生成器”脚本可以帮助您生成/自动化常见任务,例如项目结构创建、模型创建、Controller创建,就像RoR中的那些一样?如果这样的东西已经存在,那太好了,否

php - Zend Lucene 和 Java Lucene 的性能比较

ZendLucene而JavaLucene分别是用PHP和java构建的,PHP语言的水平高于java。只是想知道这两者在索引构建和数据搜索方面的性能差异有多大?让java创建和重建索引,让php使用索引是不是更有效? 最佳答案 这是Zend认证工程师的引述。Againstmybetterjudgment,thecompanyIworkformigratedourprevioussearchsolutiontoZend_Search_Lucene.Onprettyheavy-dutyhardware,indexingamillion

php - 使用 PHPUnit 测试 mt_rand 函数

我会用PhpUnit创建一些测试。但是我想测试的php文件使用了mt_rand()函数。那么我怎样才能创建一个知道mt_rand()上次返回值的测试呢?感谢您回答我的问题,抱歉我的英语不好,我来自德国;) 最佳答案 MersenneTwister算法是一种确定性算法。它从一个种子开始,然后根据它生成随机数。因此,给定种子相同,它将生成相同的随机数。通常PHP使用一些基于microtime的数据为mt_rand播种,但您可以使用mt_srand手动播种它.mt_srand(0);var_dump(mt_rand());mt_srand

php - Zend Framework - 如何从 Action 助手中调用 Controller 的 redirect()

我正在ActionHelper的preDispatch方法中进行ACL检查。当它失败时,我想调用ActionController的_redirect方法,但是我很难做到这一点。在这篇文章所附的评论中,zend-framework,callanactionhelperfromwithinanotheractionhelper,我看到两个解决方案。首先,Controller作为$this->_actionController从helper访问。在第二个中,使用$this->getActionController()访问它。我尝试了以下两种方法:$this->_actionControlle

php - Zend Framework 将开发人员特定的环境信息与配置分开?

我刚刚开始一个大型ZendFramework项目。到目前为止,有一件事让我感到困惑:大部分配置似乎都存储在application/configs/application.ini的单个文件中。该文件包括应用程序功能所必需的各种内容,例如应用程序命名空间、Controller插件等,以及数据库登录详细信息。我需要一些外部承包商来处理这个项目,但我不希望他们拥有我所有的数据库详细信息。在Zend中,如何将环境信息(例如数据库登录名(对于不同的开发人员可能不同)与应用程序配置(对于每个人都相同)分开)? 最佳答案 我同意这在ZF中比它应该的

php - 为什么这段使用 PHP Zend_Pdf 库将文本置于 PDF 中心的代码不起作用?

我正在尝试在服务器上动态创建PDF文档并使用Zend_Pdf库将它们发送到客户端。PDF上的所有文本都需要与页面居中对齐,这将是字母大小的横向页面。使用我在各种站点上多次找到的功能,我遇到了问题-中心对齐已关闭。所有的文字都太靠左了。这是我的代码:newPage(Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE);$pdf->pages[]=$pdfPage;//Addcertifythat$pdfPage->setFont($font,15.75);drawCenteredText($pdfPage,"THISISTOCERTIFYTHAT",378);//A