繁体   English   中英

如何使用 spring 启动和 maven 测试微服务

[英]how to test microservice using spring boot and maven

我正在使用 spring 启动和 maven 框架来设置微服务。 现在我想做一些测试以确保它们正常工作。 但是,我不确定在运行测试时应该如何调用它们。 或者我测试微服务的方式是否正确? 提前致谢

我试图在测试 java 文件中调用微服务但失败了

这是界面

public interface EmployeeRepository extends JpaRepository<Employee, Integer> {
...
    @Modifying
    @Query(value = "insert into Employee (id,fullname) values (:id,:fullname)",
            nativeQuery = true)
    void insertEmployee(@Param("id") int id,@Param("fullname") String fullname);
...
}

这是处理映射的 class

public class EmployeeResource {
    @Autowired
    EmployeeRepository usersRepository;
    @PostMapping(value="/add")
    @Transactional
    public void add(...){...}
}

我试图通过使用它来调用它们但失败了,因为数据库没有更新

1

    @Test
    @Transactional
    public void testInsert(){
        EmployeeResource er = new EmployeeResource();
        er.add(999,"test");
    ArrayList<Employee> test = (ArrayList<Employee>)er.find(999);


    }

2

    @Test
    @Transactional
    public void testInsert(){
        EmployeeRepository usersRepository;
        usersRepository.insertEmployee(999,"test");
    ArrayList<Employee> test = 
        (ArrayList<Employee>)usersRepository.findEmp(999);


    }

创建微服务最重要的部分是“这些微服务将如何相互通信?” 您缺少在此处包含“Spring Cloud 功能”以建立不同微服务之间的通信。 请阅读 Spring Cloud 中的以下内容:Spring Cloud config server、Eureka Naming server、Zuul API Gateway、Ribbon、Hystrix 等。

您可以参考以下链接进行学习: https://www.javainuse.com/spring/springcloud

非常感谢你们。 我意识到我可以使用@SpringBootTest 来进行集成测试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM