Web uygulamam için testler yapmak isterim, ancak içerik yapılandırması servletContext
otomasyonunda çöküyor. Altında hata var. Tomcat/jetty üzerinde web uygulamasını çalıştırdığımda otomatik iletim servletContext
iyi çalışıyor.Birim testi Spring MVC web uygulaması: Otomatik alan yapılamadı: private javax.servlet.ServletContext
java.lang.IllegalStateException: org.springframework.beans.factory.BeanCreationException: Neden Olduğu ApplicationContext ... yüklenemedi Hata adı 'testController' ile fasulye oluşturma: autowired bağımlılıkları Enjeksiyonu başarısız; iç içe istisna org.springframework.beans.factory.BeanCreationException: otowire alanı olamaz: özel javax.servlet.ServletContext com.test.controllers.TestController.servletContext; İç içe istisna org.springframework.beans.factory.NoSuchBeanDefinitionException şudur: Bu bağımlılık için autowire adayı olarak nitelendirir beklenen en az 1 fasulyesi: tipteki bir eşleşen fasulye [javax.servlet.ServletContext] bağımlılık bulundu. Bağımlılık açıklamalar:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class FirstTest {
@Test
public void doTest() throws Exception {
// ...
}
}
TestController
@Controller
public class TestController {
@Autowired
private ServletContext servletContext;
...
}
bu ilgili yanıta bakın kayboldu http://stackoverflow.com/questions/2674697/how-to-inject-servletcontext-for-junit -test- – ptomli
teşekkürler. 'ContextConfiguration' ile' MockServletContext' nasıl kullanılır? – marioosh
Sadece 'MockServletContext' için' applicationContext.xml' dosyanızdaki tanımını –
ptomli