グレイル初心者です。単体テストを理解しようとしていました..ドメインクラスを作成すると、Author
grailsAuthorControllerTests
はそのドメインのテストコントローラーを自動的に作成します。
それで 。テスト コントローラーの 2 行目は @Mock(Author) です。
それはどういう意味ですか..ドメインクラスをモックするときに得られる利点は何ですか?
グレイル初心者です。単体テストを理解しようとしていました..ドメインクラスを作成すると、Author
grailsAuthorControllerTests
はそのドメインのテストコントローラーを自動的に作成します。
それで 。テスト コントローラーの 2 行目は @Mock(Author) です。
それはどういう意味ですか..ドメインクラスをモックするときに得られる利点は何ですか?
テストに関する広範なドキュメントで述べられているように:
モック アノテーションは、コラボレーターのモック バージョンを作成します。GORM API とのほとんどのやり取りをシミュレートする GORM のメモリ内実装があります。自動的にモックされない対話については、プログラムでモックとスタブを定義するための組み込みサポートを使用できます。
また、AuthorControllerTests は、Author ドメイン クラスではなく、AuthorController のテストです。
何かを追加するだけで、コントローラーのようにコードの「ユニット」を分離する必要がある場合に、モッキングが役立ちます。
分離とは、単純なコンポーネントを作成して、すべての依存関係を再プレートしてシミュレートすることを意味します。この単純なコンポーネントは、モックと呼ばれるものです。
ここで Grails を使用すると、ドメイン クラスをモックすることができます。これにより、情報がデータベースに保存されないため、テストが容易になります。
コントローラーからデータベースまでのスタック全体をテストしたい場合、それは統合テストと呼ばれるものです。
それが役に立てば幸い