Java Can';在junit上看不到存储库中的数据

Java Can';在junit上看不到存储库中的数据,java,spring,junit,spring-rest,Java,Spring,Junit,Spring Rest,嗨,我想尝试从我的存储库接收数据,但我什么也检索不到。 我在“src/main”中创建了autowired和on java类,它可以正常工作 但是在junit测试中没有 我尝试过Jpa存储库的任何方法,但我总是收到一个“null”参数 初中班 @RunWith(SpringJUnit4ClassRunner.class) @DataJpaTest class testClass { @Autowired private TestEntityManager entityManag

嗨,我想尝试从我的存储库接收数据,但我什么也检索不到。 我在“src/main”中创建了autowired和on java类,它可以正常工作 但是在junit测试中没有

我尝试过Jpa存储库的任何方法,但我总是收到一个“null”参数

初中班

@RunWith(SpringJUnit4ClassRunner.class)
@DataJpaTest
class testClass {

    @Autowired
    private TestEntityManager entityManager;


    @Autowired
    private ClienteRepository clienteRepository;


    @Test
    public void test() {


       List<ClienteEntity> cliente = clienteRepository.findAll();
        System.out.println(cliente);

    }

基于
@DataJpaTest
文档:

如果类路径上有可用的嵌入式数据库,则会配置 还有一个

因此,如果没有,请仔细检查,如果需要,请遵循此文档:

但是,如果您更喜欢对真实数据库运行测试,您可以 使用
@AutoConfigureTestDatabase

因为您的测试可能使用基于实体注释的嵌入式数据库,并且您正在测试一个空数据库

编辑

如果查看
@AutoConfigureTestDatabase
,您可以看到测试将在DB config方面查看哪些属性:

@PropertyMapping(value="spring.test.database")

根据情况,可能需要检查测试范围内的其他设置


在spring boot中,如果有嵌入式数据库,则它由测试范围内的该数据库组成。

尝试使用此注释

@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(classes = {HCSRepositoryContext.class})

您能否尝试删除
@DataJpaTest
?你明白这个注释的作用吗?另外,如果你想进行集成测试,使用它可能是明智的。他只想测试repo级别。他不需要整个网络服务器嗨,谢谢你尝试帮助我如果我不想使用嵌入式数据库?如何将一个真正的数据库与测试连接起来?我正在尝试使用在src/maintry
@AutoConfigureTestDatabase
上使用的相同属性。我通过:@AutoConfigureTestDatabase(replace=replace.NONE)解决了这个问题。谢谢:Dhi,谢谢你尝试帮助我,如果我不想使用嵌入式数据库?如何将一个真正的数据库与测试连接起来?我正在尝试使用我在src/main上使用的相同属性检查我的upadtei解决方法:@AutoConfigureTestDatabase(replace=replace.NONE)谢谢:Dhi谢谢尝试帮助我,我已经尝试了,但是我遇到了相同的问题java.lang.nullPointerException我认为无法连接到我的数据库
@PropertyMapping(value="spring.test.database")
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(classes = {HCSRepositoryContext.class})