2014-10-06 4 views
6

मेरे पास डेटाबेस स्कीमा बनाने के लिए वसंत, हाइबरनेट और फ्लाईवे के साथ एक प्रोजेक्ट है। तो मेरे पासस्प्रिंग-बूट परीक्षणों में application.properties का उपयोग नहीं कर रहे हैं

spring.jpa.hibernate.ddl-auto: validate 

मेरे application.properties फ़ाइल में है। इस config सामान्य चलाने के दौरान काम करता है (निष्पादन योग्य जार फ़ाइल पैकेजिंग और टर्मिनल से इसे चलाने के बाद):

2014-10-06 10:06:17.863 INFO 7519 --- [   main] o.h.tool.hbm2ddl.SchemaValidator   : HHH000229: Running schema validator 

लेकिन जब Maven के माध्यम से परीक्षण चल रहा है नजरअंदाज कर दिया है।

1804 [main] INFO o.h.tool.hbm2ddl.SchemaExport - HHH000227: Running hbm2ddl schema export 
1805 [main] DEBUG org.hibernate.SQL - drop table test_entity if exists 
1806 [main] DEBUG org.hibernate.SQL - drop sequence hibernate_sequence 
1807 [main] DEBUG org.hibernate.SQL - create table test_entity (id bigint not null, name varchar(255), primary key (id)) 
1807 [main] DEBUG org.hibernate.SQL - create sequence hibernate_sequence 
1808 [main] INFO o.h.tool.hbm2ddl.SchemaExport - HHH000230: Schema export complete 

आधिकारिक flyway-नमूने के साथ मुख्य अंतर में मैं वसंत-बूट प्रदान की Maven माता पिता का उपयोग नहीं करते है।

पूरा परियोजना here

उत्तर

14

आपका परीक्षण स्प्रिंग बूट (यह @ContextConfiguration के बजाय @SpringApplicationConfiguration उपयोग करें, या उचित श्रोताओं की घोषणा करने की जरूरत है) का उपयोग नहीं कर रहा है।

4

आपको अपने एकीकरण परीक्षण में application.properties फ़ाइल को शामिल करने के लिए ConfigFileAplicationContextInitializer को परिभाषित करना चाहिए। बस अपनी एनोटेशन को बदलें:

@ContextConfiguration(classes = FlywaySpringBootTestApplication.class, initializers = ConfigFileApplicationContextInitializer.class) 

मैंने आपको इस छोटे बदलाव के साथ एक पुल अनुरोध भेजा है।

संबंधित मुद्दे