php エディター Youzi は、Go でネストされた入力をテストする方法を紹介します。 Go コードを作成するとき、ネストされた JSON データや多次元配列などのネストされた入力を処理する必要がある状況によく遭遇します。これらのネストされた入力を効果的にテストする方法が重要な問題です。この記事では、Go でネストされた入力を簡単にテストし、コードの正確さと安定性を確認するのに役立ついくつかの実用的な方法とテクニックを紹介します。初心者でも経験豊富な開発者でも、これらのヒントは Go コードを作成してテストするときに非常に役立ちます。一緒に調べてみましょう!
os.stdin
を使用してユーザー入力を取得する機能があります
私のプログラムでは、2 つの入力が必要です:
この状況に対して単体テストを書くことは可能でしょうか? ユーザー入力をテストするために、次のコード スニペットを使用したところ、うまくいきました。 リーリー
ただし、2 つのネストされた入力では機能しません回避策特定の種類の結果を返す関数を使用し、それを別のパッケージに入れることを検討してください。name
と age
が言及されているので、person
などの具体的なタイプを想定して説明できるかもしれません。
へのハードコードされた参照を持たせるのではなく、実際のリーダーをパラメーターとして含めたいことに注意してください。これにより、まずネストされた入力のシミュレーションが可能になります。
このように、メソッドのシグネチャは次のようになります:
対応するタイプは次のとおりです:
リーリーコード スニペットを
input.go という名前の別のディレクトリにある完全な go ファイルにマージすると、次のようになります:
リーリー
の入力は nil、nil
を返し、クエリがループ内で行われた場合などに入力を終了するために使用できます。
######単体テスト######
###単体テスト###
リーリー
これで、
という名前のファイルが入力データを提供するはずです。
nestedinput関数にはパラメーターとして
io.reader が必要なので、必要な入力を生成するだけです (例: )。
リーリー
したがって、テストは次のようになります:
もちろん、テストをさらに詳細に拡張することもできます。ただし、ご覧のとおり、これはネストされた入力をシミュレートします。
以上がGo でネストされた入力をテストする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。