composer.json避免執行外部插件測試用例
"require": {
"php": ">=5.6.4",
"laravel/framework": "5.4.*",
"laravel/socialite": "^3.0",
...
"chencha/share": "^5.2"
},
"require-dev": {
"fzaninotto/faker": "~1.4",
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~5.7"
},
...
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
phpunit.xml
<phpunit backupGlobals="false"
backupStaticAttributes="false"
bootstrap="bootstrap/autoload.php"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false">
<testsuites>
<testsuite name="Application Test Suite">
<directory suffix="Test.php">./tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">./app</directory>
</whitelist>
</filter>
<php>
<env name="APP_ENV" value="testing"/>
<env name="CACHE_DRIVER" value="array"/>
<env name="SESSION_DRIVER" value="array"/>
<env name="QUEUE_DRIVER" value="sync"/>
</php>
</phpunit>
當我運行phpunit
它給了我下面的錯誤
PHP Fatal error: Class 'Orchestra\Testbench\TestCase' not found in /usr/lib/php5/voice/v1.5/vendor/chencha/share/tests/TestCase.php on line 3
我可以在我的require-dev
下添加"orchestra/testbench": "~3.0"
這將解決問題,但是有沒有辦法只運行我的測試用例而無需插件的測試用例?
嗨,是的,我在運行'phpunit'時在主應用程序中。以下是'/ usr/lib/php5/voice/v1.5/vendor/chencha/share/tests/TestCase.php'文件中的內容。 'TestCase類擴展了Orchestra \ Testbench \ TestCase {}'。沒有測試用例,只有類聲明。 –
嗨發現這個問題。感謝這個聲明'在標準配置中沒有運行供應商目錄的測試「,這有助於我進行不同的思考。很長一段時間,我正在調試運行供應商測試用例的視圖。 :) –