Quickstart¶
Requirements¶
以下の環境いずれかが必要です。
- Python3.8以上
- Docker
Installation¶
Python3.8以上¶
$ pip install jumeaux
jumeaux --version
でバージョンが表示されればOKです。
Docker¶
$ git clone https://github.com/tadashi-aikawa/jumeaux.git
$ cd jumeaux
$ docker build -t tadashi-aikawa/jumeaux .
docker run -it tadashi-aikawa/jumeaux --version
でバージョンが表示されればOKです。
Warning
以降はPythonの場合を想定して説明します。
つまり jumeaux
=> docker run -v (pwd):/tmp -it tadashi-aikawa/jumeaux
とコマンドを置き換えてください。
Create files¶
Jumeauxを実行するには、以下2つのファイルを用意する必要があります。
ファイル名 | 役割 | 備考 |
---|---|---|
config.yml | 設定ファイル | 任意のファイルを1つ以上指定可能 |
requests | リクエストが記載されたファイル | 任意のファイルを1つ以上指定可能 |
上記ファイルの作成にjumeaux init
コマンドを使用できます。
$ jumeaux init simple
simple
は作成するファイルの種類です。
Note
jumeaux init help
コマンドでsimple
以外の有効な値を確認できます。
Run mock server¶
jumeaux init
コマンドでは上記2ファイルの他にapi
ディレクトリが作成されます。
api
ディレクトリの中には、jumeaux init
で指定したファイルの種類に応じて確認用のダミーhttpレスポンスが作成されます。
jumeaux server
コマンドを実行すると、カレントディレクトをWebサーバとして起動できます。
ローカル環境で動作確認をするため、jumeaux server
コマンドを実行しましょう。
Execute¶
config.yml
とrequests
を指定して実行しましょう。
$ jumeaux run requests
- デフォルトでは標準出力に何も出力されません
- 標準エラー出力にはログまたはエラーが出力されます
標準出力
特定のアドオンが標準出力を使用することがあります。
Note
--config
を指定しないとconfig.yml
が設定されたことになります。
つまり、jumeaux run requests
は以下のコマンドと等価です。
$ jumeaux run requests --config config.yml
Check¶
結果は設定ファイルのresponse_dirで指定したディレクトリ配下に作成されます。
配下には、実行ごとに生成されるユニークなハッシュに基づいたディレクトリが存在します。
また最も新しい結果にはlatestのシンボリックリンクが貼られます。
responses/
├── latest -> 057e69de9677f2694a9bf4e43b6229920554cfdfe3a30c915034919cb048fa16 # 最新の結果へのシンボリックリンク
└── 057e69de9677f2694a9bf4e43b6229920554cfdfe3a30c915034919cb048fa16
├── index.html # Localサーバを立ち上げてアクセスすると結果をGUIで確認できる
├── one # oneで指定したhostのリクエスト結果. simpleの場合は差分アリの結果だけ保存している
│ └── (2)2
├── one-props # oneの結果をプロパティとして解析した結果を保存している. 結果がjsonの場合はほぼ同じ
│ └── (2)2.json
├── other # otherで指定したhostのリクエスト結果. simpleの場合は差分アリの結果だけ保存している
│ └── (2)2
├── other-props # otherの結果をプロパティとして解析した結果を保存している. 結果がjsonの場合はほぼ同じ
│ └── (2)2.json
└── report.json # 結果のjson. index.htmlもこれを参照している
GUIで結果を確認する¶
jumeaux viewer
コマンドを実行している場合は以下いずれかのURLにアクセスすると、Viewerで結果を確認することができます。
- http://localhost:5500/responses/latest
- http://localhost:5500/responses/057e69de9677f2694a9bf4e43b6229920554cfdfe3a30c915034919cb048fa16
他の結果も確認してみよう
jumeaux init
コマンドでignore_order
のテンプレートを使った結果も確認してみましょう。
GUIでより高度な確認をしたい場合は..
Miroirの使用を検討してみましょう。final/miroir
アドオンを使用するとJumeauxの結果を登録することができます。
Viewerを開いたまま最新の結果を自動リロードする¶
jumeaux viewer
コマンドを実行中は、最新の結果に限り速やかに確認することができます。
responsesに結果が1つ以上格納された状態でjumeaux viewer
を実行してみましょう。
自動でブラウザのタブが開き、Viewerが表示されます。
この状態でjumeaux run
を実行すると、ブラウザのViewerが自動で新しい結果にリロードされます。
リロードのトリガーになるものは?
latest/report.json
に変更があった場合にリロードされます。
そのためjumeaux
を実行せずにシンボリックリンクを切り替えたり、report.json
を編集しても自動リロードされます。