为了账号安全,请及时绑定邮箱和手机立即绑定

运行“mvn test”时设置“test”配置文件

运行“mvn test”时设置“test”配置文件

梵蒂冈之花 2023-11-01 21:19:55
我使用 Spring 将@Profile与测试相关的类与开发和产品分开。我在寻找一种在 pom.xml 中设置spring.profiles.activeto的方法时遇到了麻烦,仅出于目标。换句话说,如果 Maven 目标是我想运行这个:testtesttestmvn test仍然可以访问带有 @Profile("test") 注释的类,而不是这样:mvn test -Dspring.profiles.active=test因为它指定了运行两次的“测试”性质。有可能吗?更新:添加代码以下两项服务用于测试和开发/生产。两者都实现相同的接口 MyServiceMyService测试环境:@Service@Profile("test")@ActiveProfiles("test")public class TestMyServiceImpl implements MyService {    @Override  public String myMethod(){    ...    }}MyService 开发环境:@Servicepublic class DevMyServiceImpl implements MyService {    @Override  public String myMethod(){    ...    }}自动装配 MyService 的控制器:@RestController@RequestMapping public class MyController {  @Autowired  private MyService myService;@RequestMapping(value = /myendpoint, method = RequestMethod.POST)  public @ResponseBody Response foo(@RequestBody String request) {        Response response = new Response();    response.setResult(myService.myMethod());    return response;  }}
查看完整描述

1 回答

?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

您可以使用注释通过测试配置文件运行测试类,请按照以下步骤操作

第 1 步:@Profile("name")用和注释所有测试类@ActiveProfiles("name")

  • Profile注释用于拾取指定的配置文件

  • ActiveProfiles用于激活测试类的指定配置文件

第 2 步:创建application.propertiesapplication.yml使用配置文件名称(如application-test.yml)并将其放置在src/main/resourcessrc/test/resources与测试属性一起放置


查看完整回答
反对 回复 2023-11-01
  • 1 回答
  • 0 关注
  • 84 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信