Skip to content

テストをつくる 7月10日

uesaka-seiya edited this page Aug 14, 2020 · 5 revisions

クラスのテストを作成するときにテストライブラリを追加する

  1. エディターで、クラス宣言を含む行内にキャレットを配置します。
  2. ⌥⏎ を押して、使用可能なコンテキストアクションのリストを開き、テストの作成を選択します。

https://pleiades.io/help/idea/configuring-testing-libraries.html

@SpringBootTest@Testなど適宜必要なアノテーションをつけてテストクラスを作成

DB初期化でテスト用のデータソースを定義する

https://github.com/esminc/Miffy/commit/6f5919445397fdf455b4692ff1f9d0d58416453b#commitcomment-40494768

src/test/resources/application.propertiesで以下を定義する

spring.datasource.schema = classpath:/schema.sql
spring.datasource.data = classpath:/data.sql

unitテスト用に初期化とは別のsqlを用意する

unitテストのclasspathはsrc/main/resourceに通っていて、テストの場合はsrc/test/resourceのものが優先される。

クラスに@Sqlを宣言すれば、すべてのテストメソッドで指定したsqlが実行されます。 クラスにもメソッドにも@Sqlを宣言した場合は、メソッドの内容でオーバーライドされます。(メソッドのsqlのみ実行される) 覚えておくとよいです。

https://github.com/esminc/Miffy/pull/26#discussion_r465618244