首页 文章
  • 3 votes
     answers
     views

    PHPUnit - 三叶草覆盖率上的PHP_Token_Stream错误

    我正在使用PHPUnit 3.5.10,并且在尝试为clover-coverage生成xml报告时遇到问题 . 使用coverage-html导出工作正常 . 此外,如果我从coverage报告中排除了足够的文件,它将生成clover.xml文件 . 但是,当我运行我的测试套件时,我收到消息“将代码覆盖数据写入XML文件,这可能需要一些时间 . ”,然后执行失败 . 25次中的每1次我将收到“分...
  • 54 votes
     answers
     views

    使用Composer和autoload.php在PHPUnit中自动加载类

    我刚刚通过Composer安装了Sebastian Bergmann的PHPUnit版本3.7.19,并编写了一个我想进行单元测试的课程 . 我希望我的所有课程都自动加载到每个单元测试中 without 必须在我的测试顶部使用 include 或 require ,但事实证明这很难! 这是我的目录结构的样子(尾部/斜杠表示目录,而不是文件): composer.json composer....
  • 2 votes
     answers
     views

    流明:PHPUnit失败但测试在Gitlab CI Runner中传递

    这是我第一次在我的项目中使用测试 . 我使用Gitlab CI和gitlab runner来执行测试 . 但是奇怪的事情发生了,当phpunit执行输出失败时,gitlab中的测试结果是 passed . Gitlab应显示 failed 结果 . 我用流明5.1 . 和Gitlab Runner使用docker . 这是我的 .gitlab-ci.yml 文件 image: dragonca...
  • 1 votes
     answers
     views

    Symfony 2上的功能测试 - 使用默认的autoload.php.dist问题

    我一直在尝试运行FunctionalTest,它扩展了Symfony \ Bundle \ FrameworkBundle \ Tests \ Functional \ WebTestCase并没有那么成功 . 问题是: FrameworkBundle \ Tests \ Functional \ app \ AppKernel.php中的代码尝试在框架包中加载autoload.php.dis...
  • 2 votes
     answers
     views

    使用PHPUnit进行Laravel登录测试

    我是测试的新手 . 我正在尝试使用Laracasts / Integrated测试登录 /** @test */ public function it_should_login_user() { $credentials = [ 'email' => 'jghenonig@gmail.com', 'password' => '12345' ...
  • 0 votes
     answers
     views

    测试不存在的代码[关闭]

    TDD声称我应该首先编写测试 . 假设我想写一个服务,如果我还没有任何东西,我该如何开始为服务编写测试?什么是第一次测试?尝试实例化服务并获得异常? 基于PHP Laravel的示例: class ServiceTest extends TestCase { public function testServiceExists() { $service = App::...
  • 2 votes
     answers
     views

    单元测试Laravel密码重置电子邮件 - mailable没有排队

    我正在使用Laravel附带的auth . 我正在测试您放入电子邮件的页面,当您点击提交按钮时,密码重置电子邮件将发送到您的电子邮件 . 我手动执行密码重置电子邮件 . 但我创建了此测试以确保密码重置电子邮件已发送但它无法正常工作 . 有1次失败:1)预期的[Illuminate \ Foundation \ Auth \ ResetPassword] mailable没有排队 . 声明fals...
  • 0 votes
     answers
     views

    如何用phpunit测试多个查询结果

    我在phpunit上有点新,经过几个小时的研究后,我找不到方法 . 如何使用phpunit测试函数getResults . 函数getResults和getResultsDetails属于Result类 . 函数searchUser属于User类 . 要获得通行证登录,我可以使用用户名和密码在Login对象中调用doLogin,它将保留在$ _SESSION中 class Result { ...
  • 1 votes
     answers
     views

    使用Laravel Passport范围进行单元测试

    我们!当我试图用Laravel和Passport进行一些单元测试时,我遇到了问题 . 我有一些受 auth:api 中间件保护的路由,但其他一些受Passport scope 中间件保护 . 例如,这是我的单元测试之一: public function testGetPublishedPost(){ $user = factory(\App\User::class)->create...
  • 0 votes
     answers
     views

    升级到mac os x Mavericks 10.9后执行php文件时出错

    升级到10.9 Mavericks后,我在尝试运行php脚本时遇到以下错误 . 我正在使用Zend Server并禁用了默认的httpd和php . 在升级之前一切正常 . Examples: phpunit: /usr/local/bin/phpunit: line 2: ?php: No such file or directory /usr/local/bin/phpunit: line 3...
  • 0 votes
     answers
     views

    在ZF2中PHp单元测试错误'Undefined index: SERVER_NAME in /config/autoload/global.php'

    I've just started with Zend framework 2. I want to set up unit testing for my Cart module. I have followed the steps of http://framework.zend.com/manual/current/en/tutorials/unittesting.html When I ru...
  • 2 votes
     answers
     views

    ZF2 PHPUnit断言异常

    我试着看看我的控制器是否抛出异常 在我的控制器中,我有一个“throw new \ RuntimeException” 在我的测试中,如果我输入setExpectedException('RuntimeException'),如果完整测试失败,我的断言就会失败 我该怎么办? class myController extends AbstractActionController { publ...
  • 63 votes
     answers
     views

    PHPUnit组织测试的最佳实践

    我目前要从头开始使用phpunit测试项目 . 所以我正在研究一些项目(比如Zend),看看他们是如何做的以及他们如何组织他们的测试 . 大多数事情都很清楚,只有我遇到的一些问题是如何正确组织测试套件 . Zend有一个AllTests.php,从中加载其他测试套件 .艰难地看一下它正在使用 PHPUnit_Framework_TestSuite 创建一个套件对象,然后将其他套件添加到它中,但如...
  • 7 votes
     answers
     views

    不使用PHPUnit测试受保护/私有方法时的代码覆盖率

    我知道可以使用反射或其他解决方法使用PHPUnit测试私有/受保护的方法 . 但是大多数消息来源告诉我,在类中编写私有方法的测试是最好的做法 . 您应该将类测试为“黑盒子” - 您只需通过将输入与输出进行比较而不考虑内部机制来测试预期行为 . 编写类的测试还应通过显示缺少代码覆盖率来通知您未使用的私有方法 . 当我测试我的类并生成HTML报告时,它会显示测试未涵盖的私有方法,即使它们被调用的行是绝...
  • 2 votes
     answers
     views

    PHPUnit通过Guzzle进行代码覆盖

    我们已经安装并运行了PHPUnit 4.8和GuzzleHttp 5.3,允许我们使用单元测试样式编码来测试我们的API endpoints . 一切正常 . 我们还使用内置的PHPUnit样式生成三叶草报告和HTML报告 . 再次,这是有效的 . 但是,代码覆盖率似乎没有提取调用HTTP endpoints 时运行的代码 . 无论如何要解决这个问题?是否可以根据对HTTP endpoints ...
  • 1 votes
     answers
     views

    PHPUnit代码覆盖率不包括某些行

    我对PHPUnit有一个奇怪的问题 . 我正在与一个开发团队合作开发一个项目,所有开发人员都必须使用PHPUnit 3.6.5 . 在大多数情况下,我的PHPUnit运行良好,并产生与其他开发人员的机器相同的结果 . 但是,我偶尔会发现某台线路没有覆盖在我的机器上,而是在其他开发人员的机器上 . 这是最近的一个场景: Bob正在检查他刚刚更新的新文件 . 他确保单元测试通过此文件并具有95%的...
  • 3 votes
     answers
     views

    如何在内存数据库中使用sqlite在laravel 5.5中运行unittests

    我设置了一个测试数据库: phpunit.xml : <phpunit> <!... other stuff ...> <php> <env name="APP_ENV" value="testing"/> <env name="CACHE_DRI...
  • 8 votes
     answers
     views

    Symfony2:如何测试配置节点的值和索引

    在Symfony2中,使用此类设置,如何测试 Configuration 类中定义的每个节点,以及它们的值是否已正确配置 . The class to test # My\Bundle\DependencyInjection\Configuration.php class Configuration implements ConfigurationInterface { /** ...
  • 0 votes
     answers
     views

    typo3 extbase在phpunit测试中使用toArray

    我有一个extbase-extension(typo3 4.5) $test = $this->testRepository->findAll(); $this->view->assign('test', array_merge( array('0' => 'select'), $test->toArray() ...
  • 2 votes
     answers
     views

    vendor / bin / phpunit不适用于Lumen

    我是Lumen(和Laravel)的新手 . 我用Composer创建了一个项目,现在我正在尝试让PHPUnit工作 . 我正在关注一本书,在终端中输入 vendor/bin/phpunit 应该可以运行默认的传递测试,但它会给出错误: 'vendor'不被识别为内部或外部命令,可操作程序或批处理文件 我've checked that the phpunit file is actually...
  • 3 votes
     answers
     views

    PHPUnit测试调用函数的次数

    我正在phpunit上进行测试,我遇到了一个问题 . 我正在尝试测试我班上的公共功能 . 根据传递给方法的参数,我的测试类中的受保护函数也会被调用一次或两次 . 我目前有一个测试来检查返回数据是否正确,但我还想确保被保护的方法被调用正确的次数 . 我知道一个模拟对象将允许我计算一个函数被调用的次数,但它也会覆盖受保护函数返回的值 . 我尝试使用没有“will”部分的模拟对象,但它只返回null,而...
  • 4 votes
     answers
     views

    PHPUnit测试,模拟对外部API的调用

    我有一个课程如下 class AccountsProcessor{ protected $remoteAccountData = []; /** * Process the data passed as an input array */ public function process($inputCsv): array { ...
  • 0 votes
     answers
     views

    在具有相同xml配置的本地docker镜像和bitbucket管道上运行数据库phpunit测试

    我使用docker和bitbucket管道,我在本地docker容器和bitbucket管道中运行数据库phpunit测试 . 这有效 . 在phpunit.xml.dist中我指出了数据库url . 在本地docker容器中,这是:mysql:// user:password @ mysql-database :3306 / database 但是在bitbucket管道中:mysql:// ...
  • 8 votes
     answers
     views

    如何将未覆盖的文件添加到Yii应用程序的PHPUnit代码覆盖率报告中

    我目前正在尝试获取基于Yii framework的PHP应用程序的代码覆盖率报告 . 代码覆盖率由PHPUnit 3.6生成,我使用whitelist approach来源文件过滤 . 问题是,当我设置选项 addUncoveredFilesFromWhitelist="true" 时,代码覆盖中断时出现以下错误: Generating code coverage report...
  • 0 votes
     answers
     views

    使用PHPUnit进行CakePHP代码覆盖

    我一直在使用CakePHP一段时间,最近开始使用PHPUnit进行测试 . 我掌握了它并取得了进展 . 我遇到的一件事就是代码覆盖率报告 . 当我测试我的模型时,我需要实例化该类并进行测试 . 该部分将在报告中介绍 . 但是,当使用扩展 AppControllerTest 的测试进行控制器测试时,报告没有经过测试,因为它正在执行HTTP请求 . 有没有办法在代码覆盖率报告中涵盖这些测试?
  • 23 votes
     answers
     views

    生成PHPUnit代码覆盖率报告时无法重新声明类错误

    使用Zend Framework 1.10和Doctrine 2(Beta1)启动项目 . 我在自己的库代码中使用命名空间 . 生成代码覆盖率报告时,我收到有关重新声明类的致命错误 . 为了提供更多信息,我在我的phpunit可执行文件中注释掉了xdebug_disable()调用,这样你就可以看到函数trace(由于输出太多而禁用了局部变量输出) . 这是我的终端输出: $ phpunit PH...
  • 4 votes
     answers
     views

    PHPUnit覆盖现在不完整,因为没有覆盖类的左大括号

    嘿大家,我一直在使用PHPUnit对我正在研究的Symfony / Doctrine项目进行单元测试 . 它工作正常,直到昨天各种类别从100%覆盖率下降到98-99% . 改变的原因是因为某些原因,这些类的左开括号不再被视为“覆盖” . 以下是问题的屏幕截图: 我已经尝试了所有的东西,但我无法弄清楚是什么原因导致某些课程出现这个问题而其他课程显示“完整”的覆盖范围就好了 . 这更令人烦恼,因为...
  • 4 votes
     answers
     views

    当单独运行时,PHPUnit报告同一测试的不同代码覆盖率%

    首先,让我说我经历了Reaching 100% Code Coverage with PHPUnitSO以及How to get 100% Code Coverage with PHPUnitSO . 我无法借助其中任何一个解决问题 . 我的问题是,与运行整个测试套件时相比,PHPUnit在隔离运行时报告了相同测试的不同代码覆盖率% . 因此,当我使用 phpunit test/src/artax...
  • 1 votes
     answers
     views

    声纳中忽略了PHPUnit代码覆盖率过滤器?

    我正在使用Sonar查看有关PHP项目的报告 . 到目前为止它已经很好了,但我遇到了障碍 . 代码覆盖似乎忽略了过滤的文件 . 我的Ant配置获取所有Solar PHP Plugin的模块,并将它们置于“analyzeOnly”模式,以便解析模块的输出(我已经将其分解为ant中的单独构建目标) . 这很好,在控制台中运行的Sonar PHP插件的路径输出似乎与我的所有构建日志相匹配 . 除了PHP...
  • 2 votes
     answers
     views

    Codeigniter API调用的PHPUnit / Xdebug代码覆盖率

    我们使用Codeigniter并有2个选项来调用我们的API控制器: 我们可以使用通过Curl调用控制器url的客户端, 我们可以使用从命令行调用控制器的客户端 . 这对我们网站的功能来说非常好 . 但是,当我运行PHPUnit时,控制器的覆盖率报告是空白的,而所有模型的覆盖率报告都是正确的 . 在跟踪xdebug如何创建报告时,似乎使用基于Curl的客户端或CLI客户端在测试函数范围...

热门问题