HTTP APIのテストツールDreddがSwaggerに対応していたので試してみた

以前に

APIドキュメントでAPIサーバをテストする | WEB EGG

という記事を書いたときに紹介したDreddですが、
いつのまにか自社サービスのApiaryだけでなくSwagger(OpenAPI v2)にも対応していたそうです。

ついでにロゴも洗練されてかっこよくなってます。

自分で書いた過去記事の末尾でも軽く触れていますが、
OpenAPI initiativeも未だ活動続いてますし、「乗るしか無い、このビッグウェーブに」といったところなんでしょうか。
なんにせよApiaryにロックインすることなく、Swaggerで記述した仕様書がテストできるようになったというのは嬉しいことなので早速試してみました。

APIドキュメントでAPIサーバをテストする

この記事はWeb API Advent calendarHamee Advent Calendar 2015の6日目です。

SPAやハイブリットアプリを仕事でも趣味で作っているので、APIサーバを実装する機会が増えています。
手軽にしっかりしたドキュメントを書けて、かつ実装とドキュメントの整合性を保つのってコスト高いな…。と悩んでいます。

Web APIのドキュメントといえば、SwaggerJSON-Schemaあたりが有名かと思います。
例えばQiitaのAPIv2はJSON-Schemaを使用して書かれています。

今回はそれらとは違うAPI Blueprintというツールを使用してAPIドキュメントを作成し、そのAPIドキュメントを自動テストとして実行できるDreddというツールを使用し、
APIドキュメントを書いたら、APIサーバのテストもできる 方法を残します。

ついでにAPI Blueprint形式のドキュメントをホスティングしてくれるApiaryとGithubを連携し、masterにマージされたら公開されているAPIドキュメントも最新になるというのもやってみます。