問題タブ [python-hypothesis]

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.

0 投票する
1 に答える
152 参照

pytest - ステートフル テストで仮説.エラー.Flaky: 実行が最初に失敗しましたが、2 回目の試行で成功しました

ここで行われたのと同様の仮説を使用してパズルを解こうとしています:

http://nchammas.com/writing/how-not-to-die-hard-with-hypothesis

残念ながら、Flaky エラーで断続的に失敗し、pdb を使用して問題を追跡することができません。

私のプログラムのソースは次のとおりです。

https://gist.github.com/sureshvv/0fb78ef221fb8c1ed85dd034c83abefa

py.test を使用して実行できます。

問題を診断して解決するための支援をいただければ幸いです。

0 投票する
2 に答える
102 参照

python - Django モデルの仮説戦略の評価を遅らせる

私はDjangoモデルを持っています。とりわけ、ForeignKeyto がありUserます:

テストには、適切な形状を生成するメソッドがありますUser-generate_test_user()

モデルのインスタンスに関するさまざまなプロパティをアサートするために、仮説を使用していくつかのテストを作成したいと考えています。

私の最初の実装は次のようになりました。

generate_test_userただし、インポート時に呼び出され、Django の移行などが実行される前にモデルを作成しようとするため、これは失敗します。

just適切なものを適切なタイミングで評価する/ コールの評価を遅らせる / 同様の戦略を作成するための良い方法は何ですか?

0 投票する
2 に答える
1008 参照

python - 仮説を使用したpythonテスト

パッケージ仮説は、既知のタイプの入力引数に対してテストしたい場合に使用する戦略の豊富なセットを提供します。

次のクラスと、仮説を使用したその検定の 1 つを考えてみましょう。

これは、提供された値が受け入れられた型であるかどうかを暗黙的にチェックし、self.double の計算が正しいかどうかを明示的にチェックします。

このテスト クラスは、少なくとも float または int 以外の入力タイプがチェックされていないため、不完全であると見なすことができます。そのためには、アサーション エラーが直接チェックされる別のテスト ケースが必要でした。たとえば、AssertRaises を使用します。

私の質問は、仮説検定の哲学でそれをどのように行うのですか?

仮説には「not_one_of」戦略、つまり「これとあれの型を除くすべての組み込み型」のようなものを定義できる戦略がないようです。これにより、選択するタイプの非常に長いリストを使用して「one_of」戦略を定義する可能性のみが残ります。

注: この全体的な状況は、ジュラシック パークの根本的な問題を思い出させます。彼らは恐竜の数が予想どおりかどうかを確認しましたが、それ以上かどうかは確認しませんでした。なので簡単な解決策はないと思いますが、昨日初めて仮説を立ててみたので私の知識不足かもしれません。