Diretório de artigos
1. Cenário do problema
Ao usar o projeto springBoot baseado em ideias para teste de unidade, ocorre uma exceção, conforme mostrado abaixo:
Test ignored.
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
2. O motivo do erro
A classe de teste não pode encontrar a classe de inicialização em tempo de execução, portanto, um erro é relatado
3. Soluções
① Verifique se existe uma classe de inicialização no projeto, caso contrário, adicione-a rapidamente
O código de exemplo de classe de inicialização correto é o seguinte:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//声明它为基于springboot的应用程序的启动类
@SpringBootApplication
public class springbootJpaApplication {
public static void main(String[] args) {
SpringApplication.run(springbootJpaApplication.class,args);
}
}
ps: O nome da classe de inicialização pode ser escrito casualmente, mas é recomendável consultar o princípio de nomenclatura de nomes conhecidos
②Se você escreveu a classe de inicialização, mas o pacote onde sua classe de teste está localizada não está no mesmo diretório raiz do pacote onde a classe de inicialização está localizada
Por exemplo: no meu projeto, o pacote onde está localizada a classe de inicialização é com.fc , enquanto a classe de teste é escrita diretamente no projeto/teste/java sem um pacote
Solução :
1. Coloque a classe de teste [a classe a ser testada na unidade] no mesmo diretório da classe de inicialização [como com.fc]
2. Se você não deseja colocar a classe de teste no mesmo pacote da classe de inicialização, adicione @SpringBootTest(classes = {springbootJpaApplication.class}) à anotação da classe de teste
O exemplo de código é o seguinte:
@SpringBootTest(classes = {
springbootJpaApplication.class})
public class testJpa {
}
ps: As chaves são o reflexo da classe de teste que você mesmo escreveu
Você pode escolher uma das duas soluções acima e o efeito é equivalente.
Solução de problemas e correção de sucesso! ! !