外部APIクライアント

開発時は代表レスポンスを即時返却し、TESTモードでは実クライアントの結果を同じケースで確認できます。

python
@scenario("プロフィール取得")
def get_profile(user_id: int) -> dict:
    if expect:
        expect.case("開発用", given={"user_id": 1}, returns={"name": "Alice"})
    return api.get(f"/users/{user_id}").json()

ランダムな値を検証

トークンやUUIDの完全一致ではなく、型、長さ、含むべきフィールドなどの性質をバリデータで確認します。

python
returns=lambda token: isinstance(token, str) and len(token) >= 32

CIの後段へ渡す

JSON結果を解析してレポートへ変換したり、通常の終了コードだけで品質ゲートに利用したりできます。

shell
niltest run app.specs --json