Codeception不会回滚Laravel 5中的DB更改吗?

时间:2015-11-09 11:50:37

标签: php database laravel laravel-5 codeception

我是codeception的新手,我正在使用它来测试我在laravel 5中创建的Web服务。所以我的主配置文件看起来像这样:

codeception.yml

actor: Tester
paths:
    tests: tests
    log: tests/_output
    data: tests/_data
    support: tests/_support
    envs: tests/_envs
settings:
    bootstrap: _bootstrap.php
    colors: true
    memory_limit: 1024M
extensions:
    enabled:
        - Codeception\Extension\RunFailed
modules:
    config:
        Db:
            dsn: 'mysql:host=localhost;dbname=carparts'
            user: 'root'
            password: 'SomePassword'
            dump: tests/_data/dump.sql

名为 api.suite.yml 的套件文件如下所示:

class_name: ApiTester
modules:
    enabled:
        - Laravel5
        - REST:
            url: http://localhost:8000/api/
            depends: PhpBrowser
    config:
        Laravel5:
            cleanup: true
            environment_file: .env.testing

我还将我的数据库carparts的整个转储粘贴到dump.sql文件中,但是当我运行测试时,仍然会看到在测试中创建的新用户。我错过了什么?我哪里错了?

1 个答案:

答案 0 :(得分:0)

所以我不知道为了回滚数据库,我需要启用Db模块:

class_name: ApiTester
modules:
    enabled:
        - Laravel5
        - Db
        - REST:
            url: http://localhost:8000/api/
            depends: PhpBrowser
    config:
        Laravel5:
            cleanup: true
            environment_file: .env.testing

就是这样。