如何在 laravel 中使用 phpunit 测试特定的测试类

新手上路,请多包涵

我想在我的项目中测试特定的 testClass,因为有很多测试类失败了,我只想一次测试一个类。

我在以下文件夹中创建了测试类 \test\repositories\ApplicationVersionFormat.php

 <?php
use App\Repositories\ApplicationVersionFormat;

class ApplicationVersionFormatTest extends \TestCase
{
  public function testValidFormat()
  {
    $version = '1.2.3';
    $appVersion = new ApplicationVersionFormat();
    $this->assertEquals(true,$appVersion->isValidVersion($version));
  }

  public function testInvalidFormat()
  {
    $version = '11.2.3';
    $appVersion = new ApplicationVersionFormat();
    $this->assertEquals(false,$appVersion->isValidVersion($version));
  }

  public function testInvalidFormat2()
  {
    $version = '1.22.3';
    $appVersion = new ApplicationVersionFormat();
    $this->assertEquals(false,$appVersion->isValidVersion($version));
  }

  public function testInvalidFormat3()
  {
    $version = '1.2.33';
    $appVersion = new ApplicationVersionFormat();
    $this->assertEquals(false,$appVersion->isValidVersion($version));
  }

  public function testInvalidFormat4()
  {
    $version = '11.22.33';
    $appVersion = new ApplicationVersionFormat();
    $this->assertEquals(false,$appVersion->isValidVersion($version));
  }
}

所以我尝试了这个以下命令,但这些都不起作用:

  • phpunit "repositories\AppVersionTest" 。 => 无法打开文件“test/repositories/AppVersionTest.php”
  • phpunit "test\repositories\AppVersionTest" 。 => 无法打开文件“test/repositories/AppVersionTest.php”
  • phpunit --filter "repositories\AppVersionTest" 。 => 没有执行任何测试!
  • phpunit --testsuite "repositories\AppVersionTest" 。 => 没有执行任何测试!

有什么帮助吗?谢谢

原文由 Gujarat Santana 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 597
2 个回答

尝试了几种方法后,我发现我不需要包含文件夹来测试特定的测试类。这对我有用,它运行类上的所有测试:

phpunit --filter ApplicationVersionFormatTest

我认为这是因为我的 ApplicationVersionFormatTest 扩展了 TestCase 并返回了用作 Laravel 所有组件的“粘合剂”的应用程序实例。

原文由 Gujarat Santana 发布,翻译遵循 CC BY-SA 3.0 许可协议

对于 laravel 8

 php artisan test --filter ExampleTest

原文由 Edham Rabuan 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题