su-sws/linky_clicky

Behat 测试意味着 linky_clicky 的终结。

安装: 34

依赖: 1

建议者: 0

安全: 0

星星: 6

关注者: 38

分支: 3

开放问题: 10

语言:Gherkin

类型:项目


README

Behat 测试意味着 linky_clicky 的终结!

安装

您可以从 composer.json 文件中复制值到本地文件,或者在此处编译。Composer 创建的文件和目录将被添加到 .gitignore

composer install

如果您本地安装,应该有一个 bin/behat 可执行文件。您可以指向该 behat 安装,或者以其他方式使用它。

从 behat3 分支更新现有项目

待办事项

  1. 更新 behat.yml 路径
  2. 更新 behat.local.yml 路径
  3. 更新来自 features/bootstrap 的符号链接
  4. 更新指向共享测试的符号链接,例如:includes/jumpstart_home

从 Behat 1.0 更新现有项目

如果您有 behat.local.yml 文件(它不被 git 跟踪),请更新它以匹配 behat.local.yml.default 中的语法。特别是

  • Behat\MinkExtension\Extension 需要更改为 Behat\MinkExtension
  • Drupal\DrupalExtension\Extension 需要更改为 Drupal\DrupalExtension

否则,您可能会遇到以下错误

  [Behat\Testwork\ServiceContainer\Exception\ExtensionInitializationException]
  `Behat\MinkExtension\Extension` extension file or class could not be located.

创建新项目

当为新的网站创建一组测试功能时,为该网站创建一个新目录。将 behat.yml.defaultbehat.local.yml.default 复制到该目录的根目录,并分别重命名为 behat.ymlbehat.local.yml。编辑 "base_url" 和 drush "别名" 值以匹配您正在测试的网站。

behat.yml 导入 includes/extensions/*includes/config 中的文件

behat.local.yml 被git忽略。

创建一个 features 目录,并将您的 *.feature 文件放在该目录中。

创建一个 features/bootstrap 目录,将 FeatureContext.php.default 复制到那里,并重命名为 FeatureContext.php

features/bootstrap 目录中,为以下每个文件创建一个符号链接。

  1. SWSFeatureContext.php -> includes/bootstrap/SWSFeatureContext.php
  2. SWSDrupalContext.php -> includes/bootstrap/SWSDrupalContext.php
  3. SWSMinkContext.php -> includes/bootstrap/SWSMinkContext.php

默认的 FeatureContext.php 文件是您放置网站特定步骤定义的地方。

SWSFeatureContext.php 文件是存储所有自定义共享步骤定义的地方。Behat 3 不再允许子上下文,并且对 DrupalContext 和 MinkContext 的引用存储在这个文件中的变量中。

SWSDrupalContext.php 文件是 DrupalExtention DrupalContext 覆盖文件,包含对 Drupal 登录步骤的覆盖,这是必要的,因为 WMD 将用户登录表单隐藏在可折叠的字段集中。

SWSMinkContext.php 文件是 DrupalExtension MinkContext 覆盖文件,包含一个额外的函数。

您可以在新项目的 includes/features 目录中找到一些起始或常见功能测试,可以在新项目中使用。只需将这些复制到您的新项目功能文件夹中,然后开始编辑它们以适应您的新网站或产品。

格式化程序

Behat 3 中的格式化程序和语法已更改。默认情况下,Behat 3 不再包含 html 输出选项。Composer 构建中包含一个 behat 的 HTML 格式化程序,但需要在您的 behat.local.yml 文件中配置它或通过命令行参数传递给 behat 函数。

参见:https://github.com/dutchiexl/BehatHtmlFormatterPlugin 以及:http://docs.behat.org/en/latest/guides/7.run.html

目录结构

sitename
|--behat.yml
|--behat.local.yml
|--features
   |--featurename.feature
   |--bootstrap
      |--FeatureContext.php
      |--SWSFeatureContext.php
      |--SWSDrupalContext.php
      |--SWSMinkContext.php

git-crypt

本存储库中的一些文件使用 git-crypt 加密。有关解密这些文件的说明,请参阅 SWS Confluence 上的指南(需要认证):使用 git-crypt 加密文件

Travis 集成

CAPx

包含 CAPx 凭据的自定义步骤定义。要在 travis-ci.org 中使用此定义,请转到要测试的存储库的设置。添加两个环境变量 "CAPX_USER" 和 "CAPX_PASSWORD"。验证值不显示在日志报告中。然后在 behat 测试中,使用步骤定义 "Given I am authenticated with CAPx"。这将跟踪现有凭据并加密来自 travis 环境变量的新凭据。这只会设置变量。任何额外的测试可能需要测试期间更新组织代码。

参见

参见 [使用 Linky Clicky] (https://github.com/SU-SWS/linky_clicky/blob/5.x/UsingLinkyClicky.md)

参见 [运行 Linky Clicky] (https://github.com/SU-SWS/linky_clicky/blob/5.x/RunningLinkyClicky.md)