2015-04-03 69 views
1

FeatureContext.php贝哈特读取默认.ENV文件,并在Laravel不.env.behat 5

/** 
* @Then I can do something with Laravel 
*/ 
public function iCanDoSomethingWithLaravel() 
{ 
    PHPUnit::assertEquals('.env.behat', app()->environmentFile()); 
    PHPUnit::assertEquals('acceptance', env('APP_ENV')); 
} 
运行贝哈特

方案后

控制台输出:仪表盘被锁定为客人

And I can do something with Laravel # FeatureContext::iCanDoSomethingWithLaravel() 
    Failed asserting that two strings are equal. 
    --- Expected 
    +++ Actual 
    @@ @@ 
    -'acceptance' 
    +'local' 

behat.yml

default: 
    extensions: 
    Laracasts\Behat: 
     env_path: .env.behat 
    Laracasts\Behat\ServiceContainer\BehatExtension: ~ 
    Behat\MinkExtension\ServiceContainer\MinkExtension: 
     default_session: laravel 
     laravel: ~ 

.ENV

APP_ENV=local 
APP_DEBUG=true 

.env.behat

APP_ENV=acceptance 
APP_DEBUG=true 

回答

1

如果使用Laravel家园,这个问题是不是与它读取.env文件,更在于它是从原始的APP_ENV阅读它在你的homestead.yaml文件中设置。从homestead.yaml文件中取出APP_ENV变量,然后重新设置您的家园箱,它应该可以正常工作。

这些都是在你的homestead.yaml:

- key: APP_ENV 
    value: local 

我也真的只是遇到了同样的问题,有问题的线,这是固定的对我来说。

+0

谢谢,我会给它一个镜头。 – whoacowboy 2015-04-24 15:38:09