damianz5/behat-screenshot-image-driver-custom-server

bex/behat-screenshot behat 扩展的定制服务器图像驱动程序

dev-master 2017-06-14 08:28 UTC

This package is not auto-updated.

Last update: 2024-09-20 20:11:00 UTC


README

Build Status

此包是 bex/behat-screenshot behat 扩展的图像驱动程序,它将图像上传到您的自定义服务器。

您可以使用 damianz5/simple_file_server 作为简单的文件服务器。

安装

通过将以下内容添加到您的 composer.json 中进行安装:

composer require --dev damianz5/behat-screenshot-image-driver-custom-server

配置

behat.yml 中的 Behat-ScreenshotExtension 配置中启用图像驱动程序,如下所示:

default:
  extensions:
    Bex\Behat\ScreenshotExtension:
      active_image_drivers: custom_server
      image_drivers:
        custom_server:
          authkey: authorisation key # Required
          collection_name: name of the collection # Required
          request_url: http://server.ltd/api/upload/ # Required
          image_base_url: http://server.ltd # Required

备用配置

选项可以通过操作系统导出传递(针对 travis)

在控制台/使用 travis 加密变量中

export BEHAT_SCREENSHOT_AUTHKEY="authorisation key"
export BEHAT_SCREENSHOT_COLLECTION_NAME="beefbeefbeefbeefbeefbeefbeefbeef"
export BEHAT_SCREENSHOT_REQUEST_URL="http://server.ltd/api/upload/"
export BEHAT_SCREENSHOT_IMAGE_BASE_URL="http://server.ltd"

behat.yml(无需指定配置细节)

default:
  extensions:
    Bex\Behat\ScreenshotExtension:
      active_image_drivers: custom_server

第三种配置方法(无需编辑 behat.yml 文件)

export BEHAT_PARAMS='{"extensions" : {"Bex\\Behat\\ScreenshotExtension" : {"active_image_drivers" : "custom_server"}}}'
export BEHAT_SCREENSHOT_AUTHKEY="authorisation key"
export BEHAT_SCREENSHOT_COLLECTION_NAME="beefbeefbeefbeefbeefbeefbeefbeef"
export BEHAT_SCREENSHOT_REQUEST_URL="http://server.ltd/api/upload/"
export BEHAT_SCREENSHOT_IMAGE_BASE_URL="http://server.ltd"

用法

当您运行 behat 且步骤失败时,Behat-ScreenshotExtension 将自动截取屏幕截图,并将其传递给图像驱动程序,该驱动程序将返回自定义服务器图像 URL。因此,您将看到如下内容:

  Scenario:                           # features/feature.feature:2
    Given I have a step               # FeatureContext::passingStep()
    When I have a failing step        # FeatureContext::failingStep()
      Error (Exception)
Screenshot has been taken. Open image at http://server.ltd/....
    Then I should have a skipped step # FeatureContext::skippedStep()