我正在从事SilverStripe项目。我正在尝试为我的项目使用Behat编写行为测试。但是运行测试时出现错误。以下是我到目前为止所做的。
首先,我使用composer安装模块
composer require --dev silverstripe/behat-extension
我在具有以下定义的项目根文件夹下拥有behat.yml文件
default:
suites: []
extensions:
SilverStripe\BehatExtension\MinkExtension:
default_session: facebook_web_driver
javascript_session: facebook_web_driver
facebook_web_driver:
browser: chrome
wd_host: "http://127.0.0.1:9515"
browser_name: chrome
SilverStripe\BehatExtension\Extension:
bootstrap_file: vendor/silverstripe/cms/tests/behat/serve-bootstrap.php
screenshot_path: %paths.base%/artifacts/screenshots
retry_seconds: 4 # default is 2
然后,我尝试运行执行以下命令的测试。
vendor/bin/behat @framework
然后我收到以下错误。
In ModuleSuiteLocator.php line 166:
No behat.yml found for module silverstripe/framework
behat [-s|--suite SUITE] [-f|--format FORMAT] [-o|--out OUT] [--format-settings FORMAT-SETTINGS] [--init] [--namespace NAMESPACE] [--lang LANG] [--name NAME] [--tags TAGS] [--role ROLE] [--story-syntax] [-d|--definitions DEFINITIONS] [--snippets-for [SNIPPETS-FOR]] [--snippets-type SNIPPETS-TYPE] [--append-snippets] [--no-snippets] [--strict] [--order ORDER] [--rerun] [--stop-on-failure] [--dry-run] [--] [<module> [<paths>]]
vendor / silverstripe / framework文件夹中没有behat.yml。实际上,它应该随框架一起提供。但它不在那里。我该如何解决错误?
对于所有SilverStripe模块的测试和相关配置are not shipped with distributable packages(例如标签)。
[如果要使用它们,则需要安装“ dev”版本。例如。 4.5.x-dev
代替~4.5.0
。