Guj*_*ana 41 php phpunit laravel laravel-5.2
我想在我的项目中测试特定的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));
}
}
Run Code Online (Sandbox Code Playgroud)
所以我尝试了这个以下命令,但这些都不起作用:
phpunit "repositories\AppVersionTest".=> 无法打开文件"test/repositories/AppVersionTest.php"phpunit "test\repositories\AppVersionTest".=> 无法打开文件"test/repositories/AppVersionTest.php"phpunit --filter "repositories\AppVersionTest".=> 没有执行测试!phpunit --testsuite "repositories\AppVersionTest".=> 没有执行测试!任何帮助?谢谢
Guj*_*ana 70
在尝试了几种方法后,我发现我不需要包含该文件夹来测试特定的测试类.这适用于我在类上运行所有测试:
phpunit --filter ApplicationVersionFormatTest
我认为这是因为我的ApplicationVersionFormatTest扩展了TestCase并返回了应用程序实例,该实例充当了Laravel所有组件的"粘合剂".
小智 37
使用artisanrun做同样的事情:
php artisan test --filter ApplicationVersionFormatTest
Run Code Online (Sandbox Code Playgroud)
Osm*_*afi 30
对于较新的版本,这可能有效
php artisan test --filter {MethodName}
// for instance
php artisan test --filter test_example
Run Code Online (Sandbox Code Playgroud)
或者
php artisan test --filter {ClassName}::{MethodName}
//for instance
php artisan test --filter ExampleTest::test_example
Run Code Online (Sandbox Code Playgroud)
Jig*_*sar 25
通过很多方式在laravel中运行phpunit测试..
vendor/bin/phpunit --filter methodName className pathTofile.php
vendor/bin/phpunit --filter 'namespace\\directoryName\\className::methodName'
Run Code Online (Sandbox Code Playgroud)
测试单班:
vendor/bin/phpunit tests/Feature/UserTest.php
vendor/bin/phpunit --filter tests/Feature/UserTest.php
vendor/bin/phpunit --filter 'Tests\\Feature\\UserTest'
vendor/bin/phpunit --filter 'UserTest'
Run Code Online (Sandbox Code Playgroud)
用于测试单一方法:
vendor/bin/phpunit --filter testExample
vendor/bin/phpunit --filter 'Tests\\Feature\\UserTest::testExample'
vendor/bin/phpunit --filter testExample UserTest tests/Feature/UserTest.php
Run Code Online (Sandbox Code Playgroud)
对于命名空间内所有类的运行测试:
vendor/bin/phpunit --filter 'Tests\\Feature'
Run Code Online (Sandbox Code Playgroud)
更多方式运行测试看到更多