ご挨拶。
Roo で生成された Web アプリがあります。コントローラーをテストしたい。spring-test-3.2 を使用しています。
STS 3.2 を使用します。
テスト用に埋め込まれた Derby。
コントローラー テストが 2 つの統合テストの間に挟まれると、テスト スイートが失敗し、その後の統合テストが中断されます。コントローラーのテストを @Ignore すると、スイートは正常に動作します。この統合テストには、Roo が生成したテスト メソッドと私自身のテスト メソッドの両方があります。
私はたくさん検索しましたが、この動作の理由はわかりません。トランザクションが正しくロールバックされていないのではないかと疑っていましたが、問題ないようです (ログは問題ありません)。空のコントローラー テスト メソッドが 1 つだけあります。何らかの理由で @ContextConfiguration が問題だと思います...
前の統合テスト:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:/META-INF/spring /applicationContext*.xml")
@Transactional
public class CompanyServiceImplTest {
コントローラ テスト:
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(value = {
"file:src/main/resources/META-INF/sprin/applicationContext.xml",
"file:src/main/webapp/WEB-INF/spring/webmvc-config.xml" })
@Transactional
後の統合テスト(これは壊れます)
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:/META-INF/spring/applicationContext*.xml")
@Transactional
@RooIntegrationTest(entity = Status.class)
public class StatusIntegrationTest {
任意のポインタに感謝します...
--- チェリオ アトゥール