hirak / Rorschach

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rorschach

Rorschachとは

Install

composer require --dev cloudpack/rorschach

Usage

Basic

./vendor/bin/rorschach inspect

Options

bind

Yaml内に、 (( )) ブラケットで囲んだ変数を記述することで、外部から値を注入することができる。

注入する方法は2つ

  1. --bind を使ってJSONにて指定する。(複数指定可能)
--bind='{"env": "prod"}'
--bind='{"env": "prod"}' --bind='{"api-token": "YOURTOKEN"}'
  1. pre-requestsのbinding構文を使う
bind:
  api-token: response.data.param

上記のようにすることで、以下のレスポンスの SOME PARAMETERapi-token としてbindされる

{
  response: {
    data: {
      param: "SOME PARAMETER"
    }
  }
}

file

デフォルトでは、プロジェクトディレクトリの test*.yml すべてを対象とする。 特定ファイル指定をしたい場合はコマンドライン引数で指定することが可能。

--file='test-hoge.yml'

Yaml Sample

base: https://(( env )).example.com
headers:
  x-api-key: YOUR-SECRET-KEY
  ContentType: application/json
pre-requests:
  -
    resource: /auth
    method: GET
    headers:
      x-header: HEADER
    body:
      name: shinichi
      password: p@ssw0rd
    bind:
      api-token: response.data.param
resources:
  -
    url: /users
    method: GET
    headers:
      api-token: (( api-token ))
    body:
      exclude: false
    expect:
      code: 200
      has:
        - id
        - user.name
        - user.address..tel01
      assert:
        id: integer|nullable
        name: string
  -
    url: /items
    method: GET
    expect:
      code: 302
      redirect: https://prod.example.com

About


Languages

Language:PHP 100.0%