背景
iosアプリのユニットテスト(XCTest)を実行するたびにAWSのAPI Gatewayに接続していた
ユニットテストなので、外接のサービスとは関係を持って欲しくない
やったこと
ライブラリのインストール
今回はOHHTTPStubsを選択した(実行まで時間かからなさそうだったから)
CocoaPods でインストールする
下記をPodfileに追記する
pod 'OHHTTPStubs/Swift'
podコマンドでインストール
pod install
コーディング
テストクラスでインポートを記述
import OHHTTPStubs
スタブの設定を記述
http接続した際の戻り値を設定しておく
stub(condition: isHost("[ここにホスト名を記述(ex:hiroky.com)]")) { _ in
# 返却するJsonObjectを宣言
let obj = ["result": "ok"]
# ステータスコード等を記述
return OHHTTPStubsResponse(jsonObject: obj, statusCode: 200, headers: nil)
}
以上でスタブの完成!
テストケースないで1度記載しておくと、何回呼ばれても同一の返却をしてくれる模様
ぜひ、スタブを使ってみてください!