抽象によるソフトウェア設計 第2章 ざっと一巡り その3

今日はアサーションの記述について

  • run コマンドを書くかわりに assert でアサーションを書いてみる
    • assert でチェックしたい条件を記述、check コマンドで検査を実行させる
    • 反例(Counterexample) が見つかるとそれを表示してどこに考慮漏れがあったのか観察
    • check コマンドの for の後で探索する範囲(オブジェクトの個数の範囲)を拡張
  • 小スコープ仮説 - モデルの不具合のほとんどは小さな例で例示できる

どうも手元では "Execute" しても最初の check コマンドの検査しか走ってないなくて、次の check は実行されていないみたいです。メニューバーの "Execute" -> "Execute All" を実行しないといけないみたいですね。
次は「階層の導入」からです。