我正在用phpUnit编写一些单元测试来测试ZendFramework应用程序,我在测试changePassword函数中的异常时遇到了一些问题。测试没有失败,但在生成html的覆盖工具中“抛出新异常($tr->translate(‘userOldPasswordIncorrect’))”;线路未经测试。publicfunctionchangePassword(array$data,$id){$user=$this->_em->find('Entities\User',(int)$id);$oldPassword=sha1(self::$_salt.$data['oldPassword
我正在为Joomla!开发组件!并想知道是否有一个框架可以以简单的方式对这些组件进行单元测试。感谢您的关注。您好! 最佳答案 PHPUnit在考虑PHP中的单元测试时,可能是第一个想到的框架。据我所知,Joomla本身已经在使用它。一些有用的链接:http://docs.joomla.org/How_to_create_a_continuous_integration(比仅单元测试更广泛)。http://forum.joomla.org/viewtopic.php?p=2177431http://docs.joomla.org/Ru
我正在为我的Web应用程序编写的PHPUnit测试的长度和不透明性让我很吃力。测试中的代码似乎比他们正在测试的代码多一个数量级。例如,假设我的网站有一个CatController对象,其上有这个方法:publicfunctionaddCat(Default_Model_Cat$cat){$workflow=$this->catWorkflowFactory->create(array($this->serviceExecutor));$workflow->addCat($cat);}我必须创建以彻底测试它的单元测试如下所示:publicfunctiontestAddCat(){$cat
我正在设置Magento安装(使用bitnamimagentoimage1.7.0),但无法使用PayPal付款。我已经设置了所有内容,如thisvideo所示。,但在尝试完成订单后,在payment_payflow_advanced.log中我看到以下内容:[result]=>Array([response_code]=>-1[response_reason_code]=>0[response_reason_text]=>Unabletoreadresponse,orresponseisempty)我浏览了论坛并尝试了这个:1)DNS问题-我试过wgethttps://payflow
我喜欢偶尔为占位符使用空函数(主要是空构造函数,因为它有助于避免构造函数的意外重复,因为我的团队知道必须始终有一个构造函数)。我还喜欢对一个类的每个方法至少进行一次测试(主要是因为这是一个很好的简单规则,可以让我的团队反对)。我的问题很简单:我们应该在这些空的测试方法中放入什么来防止“无测试”警告。我们可以只做$this->assertTrue(true),我知道它会工作得很好。但是,我想知道是否有任何更正式和更恰当的东西(最好是使该方法不计入运行测试次数的东西,人为地夸大了一点)。谢谢。 最佳答案 试试这个:/***@covers
给定这个类:classMyBuilder{publicfunctionbuild($param1,$param2){//builddependencies...returnnewMyClass($dep1,$dep2,$dep3);}}如何对这个类进行单元测试?单元测试意味着我想测试它的行为,所以我想测试它是否用正确的依赖关系构建了我的对象。但是,new指令是硬编码的,我无法模拟它。现在,我已经添加了类名作为参数(这样我就可以提供模拟类的类名),但它很难看:classMyBuilder{publicfunctionbuild($classname,$param1,$param2){//
我正在使用这是一个表单服务。$files=Input::file('my_file');我正在尝试对其进行测试,但我似乎无法正确模拟输入。文档说不要模拟Request门面。没有提到Inputfacade,尽管它们都指向IOC容器中的同一个类。我试过几种方法,但都不奏效。有什么想法吗?$mockInput=Mockery::mock('\Illuminate\Http\Request');$mockInput->shouldReceive('file')->andReturn($my_test_data);Input::swap($mockInput);和Input::shouldRec
我正在尝试测试Controller操作。该操作应该调用模型上的函数,返回模型。在测试中,我模拟了模型,将其绑定(bind)到IoC容器。我通过其构造函数将依赖项注入(inject)Controller。然而不知何故,没有找到和调用模拟,而是调用了模型的实时版本。(我知道,因为正在生成日志。)首先,我的单元测试。创建模拟,告诉它期待一个函数,将它添加到IoC容器,调用路由。publicfunctiontestHash(){$hash=Mockery::mock('HashLogin');$hash->shouldReceive('checkHash')->once();$this->ap
我有一个表单,当它呈现时看起来像这样:E-mailCompanynameRegister我想对表单提交进行单元测试,如果我输入的数据写在底层对象中,它是一个注册对象。我像下面那样做,但我不知道如何正确设置$data数组,因为字段的名称属性看起来像一个数组。classRegistrationTypeTestextendsTypeTestCase{publicfunctiontestSubmit(){$user=newUser();$account=newAccount();$registration=newRegistration($user,$account);$form=$this-
我在Laravel4中遇到的问题:Controller中的一个简单方法:publicfunctiongetHello(){if(!\Auth::check()){returnRedirect::route('user.login');}//thisisworkingfinejustintheweb,notforphpunitintheconsoleecho\Auth::id();//thisisworkingforbothecho\Auth::user()->id;}和一个简单的测试用例:publicfunctiontestHello(){$user=User::find(1);$th