私は遊んでいる Seaside アプリでテスト駆動開発を使用しており、すべてのデータは (データベースではなく) イメージ内のオブジェクトとして保存されています。
したがって、テストを実行するときは、次のように、実際のデータがテスト データで破棄される前に、慎重に保存する必要がありました。
ToDoTest>>setUp
savedTasks := Task tasklist.
Task deleteAllTasks.
savedProjects := ToDoProject projectlist.
ToDoProject deleteAllProjects.
savedPeople := Person peoplelist.
Person deleteAllPeople.
と:
ToDoTest>>tearDown
Task tasklist: savedTasks.
ToDoProject projectlist: savedProjects.
Person peoplelist: savedPeople
問題は、テストが失敗したときに発生します。もちろん失敗します。これにより、デバッガーがポップアップし、修正できますが、tearDown が常に呼び出されるとは限らないため、実際のデータを失う可能性があります。
私はデータをファイルに保存しているので、大きな問題ではありませんが、思ったほどスムーズでも自動化されていません。
とにかく私はこれを改善できますか?