Php Laravel 5.2:设置测试应用程序
为了进行测试,我需要使用另一个数据库,而不是Php Laravel 5.2:设置测试应用程序,php,behat,homestead,mink,laravel-5.2,Php,Behat,Homestead,Mink,Laravel 5.2,为了进行测试,我需要使用另一个数据库,而不是本地环境中的数据库 我在开发流程中使用homestead和Laravel 5.2+Behat3+水貂 当我从主机运行behat时,它正常-变量设置为APP\u ENV=testing 但是我在设置测试环境时遇到了一个问题,在homestead机器内部执行同样的操作时:APP_ENV总是本地的 对于测试环境(APP_ENV),我修改了标准welcome.blade.php下一步: - <div class="title">Laravel 5&
本地
环境中的数据库
我在开发流程中使用homestead和Laravel 5.2+Behat3+水貂
当我从主机运行behat时,它正常-变量设置为APP\u ENV=testing
但是我在设置测试环境时遇到了一个问题,在homestead机器内部执行同样的操作时:APP_ENV
总是本地的
对于测试环境(APP_ENV
),我修改了标准welcome.blade.php
下一步:
- <div class="title">Laravel 5</div>
+ <div class="title">Laravel 5 ({!! app()->environment() !!})</div>
.env.behat
中的我的测试环境变量:
APP_ENV=testing
APP_DEBUG=true
DB_CONNECTION=sqlite
我建立了我的家。功能:
Feature: Check home page
In order to verify home page
As a user
I need to see text Laravel and an environment name
@home
Scenario: Home Page
Given I am on the homepage
Then I should see "Laravel 5 (testing)"
因此,当我运行behat时,我会看到Laravel 5(本地)
,但不会看到Laravel 5(测试)
文本:
Feature: Check home page
In order to verify home page
As a user
I need to see Laravel text
@home
Scenario: Home Page # features/home.feature:7
Given I am on the homepage # FeatureContext::iAmOnHomepage()
Then I should see "Laravel 5 (testing)" # FeatureContext::assertPageContainsText()
The text "Laravel 5 (testing)" was not found anywhere in the text of the current page. (Behat\Mink\Exception\ResponseTextException)
--- Failed scenarios:
features/home.feature:7
1 scenario (1 failed)
我在配置中遗漏了什么,或者关于自定义设置Laravel配置我应该知道什么?我不知道是否是这样,但请确保在您的家园中。yaml
您没有:
variables:
- key: APP_ENV
value: local
如果您这样做了,请删除它,然后您可以尝试配置您的虚拟机,但很可能您需要销毁它(您应该首先备份所有内容,例如数据库等),并在从文件中删除后重新创建。太棒了!你的解决方案有效。实际上,我在我的家里有变量配置。所以我把它搬走了,并为宅地做了准备。现在所有的测试都通过了。非常感谢。很高兴我能帮忙。如果所有的问题都能这么容易解决就好了:)哦,是的,你是对的:-)我希望你能快速轻松地解决你的任务。
variables:
- key: APP_ENV
value: local