問題タブ [mox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonicの方法をモックする方法は?
Mox モッキング ライブラリを使用すると、モックしているクラスを特定することも、不可知論にすることもできます。
mock = mox.CreateMock(Foo)
またmock = mox.CreateMockAnything()
Mox のドキュメントでは、可能な限り最初の方法 (基本的にはモックの型を確認する) を使用することを提案しています。動的言語としての Python は型に依存しません。この 2 つのアプローチは、私には矛盾しているように見えます。
では、より Pythonic なモッキングへのアプローチはどれでしょうか?
python - PythonユニットテストMoxを使用してgzipをステートメントでモックする方法
Pythonで、moxユニットテストライブラリを使用してwithステートメントで作成されたオブジェクトをモックするにはどうすればよいですか?
コード
単体テスト
AttributeError: __exit__
オンラインでエラーが発生します
python - py モジュールからすべての import ステートメントを読み取る Python の簡単な方法
ファイルを読み取り、単体テスト用にすべてのインポートをモックアウトするヘルパー関数を作成しようとしています。Pythonパスにそれらのものがないため、ファイルとインポートを読み取る必要があります。
コード例:
上記はモックコードです。「from/importステートメント」用にファイルをトークン化する最良の方法を本当に探しています
意味がある?ファイルを1行ずつ読むことができることは知っていますが、よりクリーンで簡潔な方法を望んでいました。
ご不明な点がございましたら、お知らせください。
python - getattr から返される関数をモックアウトする方法は?
次のようなクラスがあります。
しかし、次のようなことをしようとすると:
mox エラー:
委任された呼び出しをモックアウトするにはどうすればよいですか?
unit-testing - mox で失敗したテストが他のテストにも失敗するのはなぜですか?
私の問題は非常に単純です。pymox を使用して一連の単体テストを行っています。失敗する新しいテストを追加すると、ほとんどの場合、他の多くのテストも失敗します。どうすればそれを防ぐことができますか?
たとえば、2 つの単体テストがある単純なスクリプトがあります。
通常、両方のテストに合格しますが、2 番目のテストでこっそりタイプミスをすると、テストの実行時に次の出力が得られます。
少し変更されていないため、最初のテストはエラーなしで合格するはずです。check_es_insert.getArgs() は MockAnything インスタンスであってはならず、UnsetStubs を呼び出すことを忘れていませんでした。かなり検索しましたが、同じ問題を抱えている他の人は見つかりませんでした。だから私はかなり明白な何かを見逃していると思います...
追加情報:
- check_es_docs は私がテストしているスクリプトです
- check_es_insert は、多くのものをインポートしている別のスクリプトです
- UnsetStubs() を VerifyAll() の後に入れてみましたが、結果は同じでした
- SetUp メソッドから mox.Mox() オブジェクトを初期化し、クリーンアップを TearDown に入れてみましたが、結果は同じでした
python - このコードをpymoxで単体テストする方法は?
だから私はpymoxをインストールしました、そして私はこの方法をテストしたいと思います:
私はpymoxのドキュメントを読んでいますが、その方法がわかりません。サンプルコードを教えてください。
python - pythonmoxtestの実行時に予期されるメソッドが呼び出されることはありません
スプレッドシート(4列)を読み取り、フィードを取得し、特定の列(2列)をCSVファイルに書き込むmoxテストを作成しようとしています。私はリストフィードを取得するという最初のステップを乗り越えようとしています。私のコードは次のとおりです。
これを実行すると、次のエラーが発生します。
このエラーを修正する方法はありますか?
python - モックアウトした関数が呼び出されていることがわかっているのに、mox から ValueError("There must be a least one expected method") が発生するのはなぜですか?
コード内でメール送信関数をスタブ化するために mox を使用しています。関数がN回呼び出され、毎回特定のパラメータセットで呼び出されることを確認したいと思います。
Mox は ValueError("There must be a least one expected method") を発生させていますが、スタブした関数呼び出しが発生していないように見えますが、実際には発生しているようです。
ログを見ると、関数が呼び出されていることがわかり、テスト対象のコードが実際に機能していることを示す DB 内のすべてのログ メッセージ/更新が表示されます。私はそれを検証する他の 14 の単体テストも持っているので、これは基礎となるコードではなくテストの問題であると確信しています。
これが私のテストです:
なぜ mox は電話がかかってきたのに一度も起きなかったと言っているのですか? これについては、MOXドキュメントやSOの他の場所で何も見つかりませんでした。
python - テストしているオブジェクト内で呼び出された 1 つのメソッドのみをモックする方法
メソッドをテストしたいが、それが呼び出す他のメソッドをモックアウトしたい。概念を説明するために、次の簡単な例を作成しました。
私は Mox と呼ばれる Python モック フレームワークを使用しており、これを行うために次のコードを書きました。
コメント:
上書きされていないメソッドでこのモックを呼び出すと、モックはデフォルトで元のコードになり、最後の呼び出しが置き換えられて、必要な一連の呼び出しを取得できると思いました...しかしこれはしません。挿入メソッドを持たないテスト オブジェクト内にモック オブジェクトを埋め込む方法がわかりません。
これを解決するために Partial Mocks と Chained Mocks を調べましたが、これをやってのける方法が見つかりませんでした。
助けてくれてありがとう:)
-- ピーター
python - 署名チェックなしでメソッド呼び出しをモックする方法は?
mox を使用してオブジェクトをモックします。メソッド呼び出しを記録する必要がありますが、メソッドは私が興味を持っていない多くの引数を受け取ります。この引数の一部はプリミティブ型ではなく、別の場所で作成されたクラスのインスタンスです。
渡された引数のチェックを避けたい。方法?