質問

プログラム検証はコンピュータエンジニアリングの支店であることを理解していますが、実際のコードベースへの実用的なアプリケーションはコンビナトリアル爆発によって制限されています。

私はまた、既存のJavaフレームワークへの変更のために、あなたのソフトウェアの変更を設計することの一部として、アルゴリズムのホワイトボックス、境界、ブラックボックステストについて考えるのが有用であることを理解しています。(このハンモック駆動の開発を呼び出す人もいます - あなたがコードする前に思考をしてください。)

この考えを撮ってジュニットスタイルのテストに埋め込むと仮定して、コンテンツのコンピュータサイエンス名は厳密に「ホワイトボックステスト/ファジング」であり、「プログラム検証」を備えることは十分ではないと仮定しています。

だから私の質問は - Junit Tests - ホワイトボックスファジングまたはプログラム検証?

役に立ちましたか?

解決

プログラム検証は、アプリケーションに関連する数学モデルに関する数学的性質を証明することが行われています(それはあなたのWebサービスをモデル化する行動タイプを書くのと同じように、プログラミング言語の正式な意味論文または手で派生させることができます)。

pi-calculus を見てください。 もちろん、JUnitは正式なプログラム検証とは関係ありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top