1

設計図で書かれたドキュメントで API の実装を確認しようとしています。サーバーから返されたjsonがドキュメントで指定されたものと異なる場合、dreddは失敗すると予想していました。これを確認するために、dredd-exampleをコピーしました。最初に、元の apib ファイルで dredd を実行して、すべてが緑色であることを確認しました。次に、ドキュメントの応答を変更し、dreddが赤を表示することを期待しました...しかし、そうではありません....ツールは応答ヘッダーのみをチェックし、応答本文はチェックしていないようです。コンソールからの出力は次のとおりです。

pass: GET /machines duration: 18ms
request:
host: localhost
port: 3000
path: /machines
method: GET
headers:
    User-Agent: Dredd/0.2.1 (Darwin 13.0.0; x64)



    expected:
    headers:
        Content-Type: application/json

    body:
    [
      {
        "_id": "52341870ed55224b15ff07ef",
        "type": "bulldozer",
        "name": "willyxxxxxx"  #HERE IS WHERE I CHANGED RESPONSE IN DOCUMENTATION
      }
    ]
    status: 200


    actual:
    headers:
        x-powered-by: Express
        content-type: application/json
        content-length: 95
        date: Thu, 20 Mar 2014 08:22:40 GMT
        connection: keep-alive

    body:
    [
      {
        "_id": "532aa5507dcdfff362931799",
        "type": "bulldozer",
        "name": "willy"
      }
    ]
    status: 200

dredd を使用して応答本文を確認できますか? どうすればこれを行うことができますか?

4

1 に答える 1

2

JSON ボディでは、Dredd は値ではなくキーのみをチェックしています。想定される JSON 本文ドキュメントでキーを変更すると、間違いなく失敗します。

于 2014-03-24T12:06:49.457 に答える