Go クライアントの単体テストを実装しようとしています。型を推測するために単体テストに want
を残してもよいでしょうか?
これを確認しました: パラメーターに基づいたさまざまな戻り値の型のオプション
テストが難しい場合は、設計上の問題を示している可能性があります。テストまたはコード。このコード単位が同じテストで 2 つの異なるタイプの出力を生成できる理由を自問してください。おそらく、「単体テスト」で一度にテストするテストの数が多すぎる可能性があります。おそらく、デバイスのインターフェースが再設計される可能性があります。
「はい」と判断した場合は、実際に次のようになり、呼び出し元に使用してもらいたい type1 と type2 の共通メソッドを備えたインターフェイスを定義する必要があります。
共通のインターフェイスがない場合は、テストの設計とテスト対象のユニットを再検討してください。なぜ 1 つのユニットが無関係な 2 つの型を返すのでしょうか?
それでも必要だと思われる場合は、interface {}
を使用してください。呼び出し元は、タイプ スイッチを使用してタイプを確認する必要があります。 Golang の インターフェイス を参照してください。
以上がGo単体テストで異なる戻り値の型を定義することはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。