私は(テストパッケージを使用して)私のコードのためのいくつかのテストを開発しています、と私はテスト関数の内部機能を模擬するための最良の方法です何を疑問に思って:Golangテストモック機能のベストプラクティス
は私が渡す必要がありますパラメータとしての機能? その場合、その関数が別の関数を呼び出すとどうなりますか?最初の関数と2番目の関数の両方をテスト済みのパラメータとして渡す必要がありますか?
注:関数のいくつかはオブジェクト(someObj.Create())で呼び出され、HTTP API呼び出しを使用します。明確化のため
UPDATE:
例:機能上記の場合
func f1() error {
... //some API call
}
func (s *SomeStruct) f2() error {
return f1
}
func f3() error {
return nil
}
func f4() error {
...
err = obj.f2()
...
err = f3()
...
}
:私はF4をテストしたい場合は、F2及びF3を模擬するための最良の方法は何ですか?
パラメータとしてf2とf3を渡すと、それはうまくいくはずですが、f2テストではどうなりますか?パラメータとしてf1をf2に渡すべきですか?
もしそれならば、f4はf1もパラメータに含めるべきですか?
のテストについての詳細を学ぶことができますテストされた関数の中で、正確にはどういう意味ですか? – AJPennster
質問を例で更新しました。私はそれがより明確であることを望む。私は非常にテストに新しいですし、私は100%もどのように依頼することではない – Ciack404
あなたはもっと明確にする必要があります。これらの機能は、あなたがテストしているパッケージにありますか? – AJPennster