仮説

仮説へようこそ!


この記事は Welcome to Hypothesisの 翻訳 です! 公式ガイドから取られた。


*注 翻訳者:*

ロシア語での仮説の使用に関する有用な情報は、12月14日のスピーチを除いて見つかりませんでした。 「モスクワパイソンミートアップ50」での2017アレクサンダーショーリン


仮説は、記述が簡単で起動時に効率的な単体テストを作成するためのPythonライブラリであり、探しているとは思わないコードの境界ケースを検出します。 安定していて強力で、既存のテストスイートに簡単に追加できます。


彼の仕事のアルゴリズム。考えていることだけでなく、それぞれの場合に何かが真実でなければならないと主張するテストを書くことができます。


通常の単体テストは次のようなものです。


  1. データを準備します。
  2. いくつかのデータ操作を実行します。
  3. 結果を確認します。

仮説により、次のようなテストを作成できます。


  1. いくつかの仕様を満たすすべてのデータ。
  2. いくつかのデータ操作を実行します。
  3. 結果を確認します。

これはしばしばプロパティベースのテストと呼ばれ、 Haskell Quickcheckライブラリで普及しています


これは、仕様に一致するランダムデータを生成し、関数またはメソッドがこの場合でも保持され、クラッシュしないことを確認することで機能します。 これが当てはまらない例が見つかった場合、彼はこの例を受け入れ、サイズを縮小して単純化し、問題を引き起こすはるかに小さい例を見つけます。 その後、彼はこの例を保存して、コードの問題を見つけたらすぐに忘れないようにします
これは将来的に。


この形式でテストを書くことは、通常、コードが行うべき保証を決定することから成ります-プロパティは、世界があなたに提示するものに関係なく、常にtrueでなければなりません。 そのような保証の例は次のとおりです。



hypothesisの基本を理解できたので、残りのドキュメントは、どのように、なぜ理解するのに役立ちます。 サイドバー(または携帯電話を使用している場合はメニューの上部)に表示されるセクションに分かれています。 ただし、ほとんどの場合、 クイックスタートガイドまたはクイックスタートガイドを使用して、仮説の使用例と、コードのテストを開始するために知っておく必要があることの詳細な計画を紹介するか、 入門記事の一部を確認します。


さらに



Source: https://habr.com/ru/post/J354134/


All Articles