anda benim entegrasyon testi görünüm için yapılandırma dosyası belirtin normalde PingFacadeApplication
(yani kavanoz çalıştıran) başlatırkenböyle @SpringApplicationConfiguration
@SpringBootApplication
@EnableDiscoveryClient
@ComponentScan(basePackages = "edu.self.myapp.ping")
public class PingFacadeApplication {
public static void main(String[] args) {
System.setProperty("spring.config.name", "ping-facade-server");
SpringApplication.run(PingFacadeApplication.class, args);
}
}
, yapılandırma (ping-facade-server.yml
) dosyası doğru şekilde src/main/resources
'dan okunur. Ancak, tümleştirme sınamalarımı çalıştırırken, yapılandırma dosyaları hiçbir zaman okunmaz gibi görünüyor çünkü sunucu her zaman 8080 numaralı bağlantı noktasında başlatıldı. Ben de yapılandırma dosyasını src/test/resources
'a koymaya çalıştım ama şans yok.
Bağlantı noktasını WebIntegrationTest
ek açıklamasında değiştirebileceğimi biliyorum ancak iki yerde olmasını önlemek istiyorum.
Çok teşekkürler. Benim durumumda
// ...
@WebIntegrationTest("spring.config.name=ping-facade-server")
public class PingResourceTest {
Ben src/test/kaynaklarda bir ping-cephe-server.yml dosyası var:
Dosyanın okunmadığından emin misiniz, sadece System.setproperty'nin orada herhangi bir etkisi olmaz mı? – eis
"Ana" yöntemi yalnızca uygulamanızı normal olarak çalıştırdığınızda denir, sistem özelliği ayarlanmayacak şekilde bir test çalıştırdığınızda çağrılmaz. –
@AndyWilkinson Gerçekten de, sınıf başka bir şekilde içsel olarak başlatılmalı ... Etrafında bir yol buldum, ancak cevap olarak yayınlayacağım. Teşekkürler! – nyg