CrudRepository
kullanan bir Denetleyici için test yapıyorum. Tipik olarak, birim testini gerçek depo örnekleri yerine sahtekar kullanarak izole etmek isterim. Ancak, Spring gerçek Repository proxy'leri enjekte etmeye devam ediyor ve bunları etkili bir şekilde nasıl hariç tutacağımı bilmiyorum. Ben @NoRepositoryBean
ile yapılandırma sınıfı annotating denedim ama işe yaramadıYay testlerinde Depoları nasıl hariç tutarım?
@Configuration
@ComponentScan
@EnableAutoConfiguration
class TestConfiguration {
@Bean
AccountRepository accountRepository() {
mock(AccountRepository)
}
}
: benzeri
Benim birim test bakmak şey: gibi
@SpringApplicationConfiguration(TestConfiguration)
@WebAppConfiguration
class ControllerSpec extends Specification {
...
}
yapılandırma görünüyor. Ayrıca regex kullanarak excludeFilters
ComponentScan
kullanmayı denedim, ama aynı zamanda işe yaramadı.
@Mock özel AccountRepository accountRepository için deneme yapmak isteyebilirsiniz; sınıf seviyesinde. – asg
Denetleyici sınıfınızda AccountRepository için setter metodunu eklemiş olursunuz. Testi yürütmeden önce, yalnızca örnek uygulama olarak repo ayarlayın. –