草庐IT

PHPUnit_Framework_Exception

全部标签

php - 不允许使用 Slim Framework 方法。必须是 : POST (405) 之一

我在slim框架中编写了RESTapi。当我从浏览器调用身份验证API时,它显示'方法不允许。必须是以下之一:POST'。以下是我的代码,请指正我哪里出错了。索引.phppost('/api/authenticate',\Authenticate::class);$app->run();.htaccessRewriteEngineOnRewriteRule^index.php[QSA,L]网址http://localhost/project/api/authenticate 最佳答案 如果您在浏览器中键入URL,方法将是GET而不是

php - 在 Zend Framework 2 中动态加载模块

我昨天也问过这个问题,但是这个问题包含代码。问题我的应用程序有多个模块和2种类型的用户帐户,一些模块总是加载,它们存在于application.config.php中,其中一些是有条件的,即一些是为用户typeA加载的,一些是为用户typeB加载的在阅读了有关StackOverflow的文档和问题之后,我了解了ModuleManager的一些功能并开始实现我认为可能有效的逻辑。一些我如何想出一种方法来加载application.config.php中不存在的模块[SUCCESS]但它们的配置不起作用[问题]即,如果在onBootstrap方法中我得到ModuleManager服务并执行

PHPUnit 测试 double

我开始使用PHPUnit来测试我的代码,但我在理解双重测试方面遇到了一些问题。我尝试对类方法b进行stub以在自另一个方法调用时返回true而不是通常的行为(false)我有这样的代码classMyClass{functiona(){return$this->b();}functionb(){returnfalse;}}classMyClassTestextendsTestCase{functiontestAThrowStubB(){$myClassStub=$this->getMockBuilder('\MyClass')->getMock();$myClassStub->expec

php - 使用 phpunit 测试命令 symfony

我用symfony3.2创建了一些基本命令来定期生成一些时事通讯当我想用phpunit5.5.4测试我的symfony命令时,我正在处理一些问题。它从一开始就失败了:/***@paramInputInterface$input*@paramOutputInterface$output*/protectedfunctionexecute(InputInterface$input,OutputInterface$output){$output->writeln("Scriptstart");//...$output->writeln("done");}通过这个单元测试:useMyBundl

php - Laravel phpunit assertViewHas 与预期的测试数据不匹配

我正在为我的搜索方法编写测试,但目前有一个assertSee并且想将其更改为assertViewHas以获得更好的测试结果。但是我从搜索方法中获得的数据与我期望的数据不匹配。这是我设置$user的地方:protected$user;publicfunctionsetUp(){parent::setUp();$this->seed();$this->user=factory(User::class)->create(['role_id'=>3]);}这是我做出断言的地方:$response=$this->followingRedirects()->actingAs($this->user

php - 如何在 Zend Framework 3 中注册自定义表单 View 助手

我正在将一个继承的ZendFramework2应用程序迁移到ZendFramework3,并且在注册我的自定义表单View助手时遇到了一些困难。这些助手在应用程序使用版本2时起作用,主要用于添加标签属性以实现可访问性。例如,这是一个自定义的FormText.php助手。true,'autocomplete'=>true,'autofocus'=>true,'dirname'=>true,'disabled'=>true,'form'=>true,'list'=>true,'maxlength'=>true,'pattern'=>true,'placeholder'=>true,'rea

php - 如何使用不同的 Linux 用户运行 PHPUnit

我的单元测试位于Vagrant机器中我在Ubuntu18上使用Xdebug和Apache,我使用PhpStorm运行PHPUnit测试。问题是单元测试仅限于由“apache”用户运行,我从命令行运行它们的方式是:sudo-uapachephpunittests/EmailFunctionsLargeTest.php--stop-on-failure它可以工作,但是如何在使用PhpStorm时模拟sudo-uapachephpunit?附言PhpStorm以vagrant用户身份运行测试... 最佳答案 还不可能。欢迎将您的场景作为评

php - 您将如何在 Zend Framework 中构造 Zend_Auth 和 Zend_Acl 以服从瘦 Controller ?

最近在ZendFramework社区中有一些关于瘦Controller的讨论/辩论。显然,ZF用户倾向于将模型视为通往数据库的网关。争论的焦点是模型应该“胖”并且做更多的工作,而Controller不应该链接方法并做很多超出将UI的含义传达给模型的工作。对于一些引用,请点击这篇文章中的链接:http://weierophinney.net/matthew/archives/200-Using-Zend_Form-in-Your-Models.html按照同样的思路,我认为让Zend_Acl和Zend_Auth控制您的Controller并把它们变成一团复杂的东西很容易。我现在正在构建一

php - 根据 Zend Framework 提供额外的参数来自动完成

我有一个包含(至少)以下两个字段的表单:国家俱乐部俱乐部是通过ZendX_JQuery_Form_Element_AutoComplete元素生成的字段,它还会生成以下javascript代码:$("#club").autocomplete({"url":"\/mywebsite\/\/mycontroller\/autocomplete"});我有一个每个国家/地区的俱乐部数据库。我想要的是只返回给定国家(用户)的俱乐部。该列表应通过远程(ajax)调用检索。代码是:publicfunctionautocompleteAction(){$request=$this->getReque

php - Zend Framework 1.9.x 和 Firebug

这里有人可以为我指明使用firebug登录Zend1.9.x的正确方向吗?我正在使用这个:(来自ZendFramework手册页)//Placethisinyourbootstrapfilebeforedispatchingyourfrontcontroller$writer=newZend_Log_Writer_Firebug();$logger=newZend_Log($writer);//Usethisinyourmodel,viewandcontrollerfiles$logger->log('Thisisalogmessage!',Zend_Log::INFO);但它根本不起