3

Sprint Tool Suite 3.3 と Infinitest の最新バージョンがインストールされています。Infinitest によると、私のクラスの多くにはエラーがありますが、それでも Maven は問題なくビルドできます。STS の [問題] タブに表示されるエラーの例を次に示します。

  • InvalidDataAccessResourceUsageException (Table "ADDRESSTYPEREF" not found; SQL statement:...SeedAddressTypes.java /... line 34 Infinitest Test Failure
  • AssertionFailure (null id in com..model.base.Menu entry (don't flush the Session after an exception occurs)) in TestMenuBuilderIT.sortByTopMenu TestMenuBuilderIT.java

エラーを示すすべてのテストは、EmbeddedDatabase に Java Config を使用する統合です。

public class TestMenuBuilderIT extends BaseItegration {
@Autowired
private MenuRepository menuRepository;
     @Test 
     public void sortByTopMenu() {
          List<Menu> testMenu = menuRepository.findAll();  <== offending line
...
}

そして構成クラス:

@RunWith( SpringJUnit4ClassRunner.class )
@ContextConfiguration( loader = AnnotationConfigContextLoader.class, classes = { JpaConfig.class } )
public abstract class BaseItegration {
..
}

@Configuration
@EnableTransactionManagement
@ComponentScan( basePackages = { ...} )
@ImportResource( { "classpath:applicationContext.xml"} )
public class JpaConfig {

@Bean
public DataSource dataSource() {
return new EmbeddedDatabaseBuilder().setType( EmbeddedDatabaseType.H2 ).setName( "testdb" )
.addScript( "classpath:embeddedDatabase.sql" ).build();
}

これが Maven で正常に機能する理由はわかりませんが、Infinitest にはこれらの DB 関連のエラーがあります。JavaConfig が Infinitest で動作しないというドキュメントは見つかりませんでした。各テストを右クリックして、「単体テストとして」正常に実行できます。

誰がこれを引き起こす可能性があるか知っていますか?

4

0 に答える 0