Versionen:SpringBootTest mit MockBean nicht zurückkehrt, was ich erwarte
Java: 1.8
Spring Boot: 1.5.4.RELEASE
Anwendung Haupt:
@SpringBootApplication
public class SpringbootMockitoApplication implements CommandLineRunner {
@Autowired
MyCoolService myCoolService;
public static void main(String[] args) {
SpringApplication.run(SpringbootMockitoApplication.class, args);
}
@Override
public void run(String... strings) throws Exception {
System.out.println(myCoolService.talkToMe());
}
}
Mein Service Interface:
public interface MyCoolService {
public String talkToMe();
}
Mein Service Implementation:
@Service
public class MyCoolServiceImpl implements MyCoolService {
@Override
public String talkToMe() {
return "Epic Win";
}
}
My Test-Klasse:
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringbootMockitoApplicationTests {
@MockBean
private MyCoolService myCoolService;
@Test
public void test() {
when(myCoolService.talkToMe()).thenReturn("I am greater than epic");
}
}
Erwartete Ausgabe: Ich bin größer als episch Tatsächliche Ausgabe: null
ich wollen einfach die Bean-Instanz in Zusammenhang mit einem Mock ersetzen, „ich zurückkehren bin größer als episch ". Habe ich hier etwas falsch konfiguriert?
Ich habe den Test mit den oben genannten Klassen und der gleichen Spring Boot-Version ausgeführt, und es funktioniert problemlos. Haben Sie in Ihrer 'pom.xml 'sowohl' Spring-Boot-Starter-Test'- als auch 'Spring-Boot-Test'-Abhängigkeiten hinzugefügt? –