Laravel phpUnit - PullRequest
       6

Laravel phpUnit

0 голосов
/ 06 мая 2018

Когда я бегу Команда phpunit выдает всю информацию из справки phpunit с PHPUnit 3.7.21 Себастьяна Бергмана. Поэтому я предлагаю, чтобы это работало, но пока нет;

когда я бегу

phpunit ExampleTest.php
PHP Fatal error:  Class 'Tests\TestCase' not found in C:\xampp7\htdocs\projects\heroes\tests\Feature\ExampleTest.php on line 8

В Laravel у меня есть папка 'tests' с

TestCase.php
<?php

namespace Tests;

use Illuminate\Foundation\Testing\TestCase as BaseTestCase;

abstract class TestCase extends BaseTestCase
{
    use CreatesApplication;
}

папка «Feature» с

ExampleTest.php

<?php

namespace Tests\Feature;

use Tests\TestCase;
use Illuminate\Foundation\Testing\RefreshDatabase;

class ExampleTest extends TestCase
{
    /**
     * A basic test example.
     *
     * @return void
     */
    public function testBasicTest()
    {
        $response = $this->get('/');

        $response->assertStatus(200);
    }
}

и папка «Единица»

В корневой папке Laravel у меня есть

composer.json




  {
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": "^7.1.3",
        "fideloper/proxy": "^4.0",
        "laravel/framework": "5.6.*",
        "laravel/tinker": "^1.0",
        "laravelcollective/html": "^5.4.0",
        "laravelcollective/html": "~5.0"
    },
    "require-dev": {
        "filp/whoops": "^2.0",
        "fzaninotto/faker": "^1.4",
        "mockery/mockery": "^1.0",
        "nunomaduro/collision": "^2.0",
        "phpunit/phpunit": "^7.0"
    },
    "autoload": {
        "classmap": [
            "database/seeds",
            "database/factories"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "autoload-dev": {
        "classmap": [
            "tests/TestCase.php"
        ],
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "extra": {
        "laravel": {
            "dont-discover": [
            ]
        }
    },
    "scripts": {
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate"
        ],
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover"
        ]
    },
    "config": {
        "preferred-install": "dist",
        "sort-packages": true,
        "optimize-autoloader": true
    },
    "minimum-stability": "dev",
    "prefer-stable": true
}

Мне просто нужно начать юнит-тестирование

Ответы [ 3 ]

0 голосов
/ 06 мая 2018

Когда я бегу

vendor\bin\phpunit

Это работает, однако было бы хорошо, если бы кто-то объяснил, почему

0 голосов
/ 03 октября 2018

Вы можете использовать это

. / Поставщик / бен / PHPUnit

вот так будет запускаться phpunit из корня вашего приложения

0 голосов
/ 06 мая 2018

Похоже, что вы используете phpunit, установленный глобально в вашей системе, которая очень старая и не связана с автозагрузкой вашего проекта. Вы должны использовать phpunit, установленный в вашем проекте Composer:

vendor/bin/phpunit
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...