GolangでREST
APIとやりとりするSDKを構築し始めました。実際のAPIの正しさをテストしたり、SDKのテストを分離したりすることなく、テストでどのようにアサーションする必要がありますか?
私のSDKは、APIボディレスポンスをモデル化した構造体を作成し、APIエンドポイントを呼び出し、JSONをデシリアライズして作成した構造体に組み込み、構造体をユーザーに返すいくつかの関数で構成されています。
ベストアンサー
デシリアライゼーションのメカニズムをテストすることに集中します。データ構造の複雑さに応じて、異なるテストが適用可能です。サンプルのデータ構造が適切に非直列化されているかどうかの明白なテストとは別に、次のテストを紹介します。
- どのようにうまくいきませんか?
- JSONモデルの大文字と小文字の区別、日付と日付(タイムゾーンを含む)フィールドを非直列化でどの程度うまく処理できるか
- コードでSSLの問題を処理する方法
- JSONモデルの成長に伴い、デシリアライズされたオブジェクトのメモリ消費量はどのように増加しますか?
- APIが圧縮されたトラフィックと圧縮されていないトラフィックの両方で動作する場合
- APIがオブジェクトをキャッシュしている場合、それらのオブジェクトがキャッシュされているかどうかをテストします