去る2017年12月19日(火)に開催されたAPIStudy #13のLT(Lightning Talk)にて弊社 金井 大輝が登壇し、「APIとの結合テスト:コンシューマ駆動契約やってみた」と題して、お話をさせていただきました。
「APIとの結合テスト:コンシューマ駆動契約やってみた」と題して、
コンシューマ駆動契約、APIとの結合テスト自動化の方式についてお話をさせていただきました。
APIを変更した際には、アプリケーションの破損を防ぐために結合テストを実行します。
以前は、アプリケーションからMOCKを使わずにテストを書いていましたが、
アプリケーションからAPIをテストするために、API側の環境を作らなければいけないという課題があります。
そんなときに見つけた書籍に書いてあったのがこの「コンシューマ駆動契約」でした。
コンシューマ駆動契約は、基本的に以下の2ステップで行われます。
アプリケーション(コンシューマ)側からのリクエストに対するレスポンスのテストを書きます。
その際にレコードというテキストファイルを出力します。
API(プロバイダ)のテストは、ステップ1で出力したテキストファイルに書かれた契約内容を満たす機能を持っているか検証します。
第二部では、第一部のLTの内容や、各々の意見をもとにチームを作り、ディスカッションを行いました。30分程のディスカッションの後には、最後にチームごとで話し合った内容について発表を行いました。
それぞれのテーマについての発表、APIstudy #13の詳しいレポートは、APIStudy 公式サイトの「APIStudy #13開催報告」を、ご覧ください。
APIStudy 公式サイト #13 開催報告
また、当日金井が使用したスライド「APIとの結合テスト:コンシューマ駆動契約やってみた」を、SlideShare にて公開しています。
ぜひともご覧いただき、ご活用下さい。
APIStudyとは
APIStudyとはAPI(WebAPI)を提供するひと、利用するひとが集まり、APIに関する様々なノウハウ、疑問、課題を共有し「APIのベストプラクティスとは」を考えていく勉強会です。
APIStudy 公式サイト
https://apistudy.connpass.com/