spring来进行正式、测试环境无缝式切换

请问Java程序员在部署正式、测试数据时最麻烦的是什么??

当然是部署正式、测试环境时需要修改配置文件。

万一一个闪失,就等着背黑锅吧。尽管程序员一直都是背黑锅的主,财务对不上账了怪我们软件不行,门店销售额达不到目标怪我们服务器卡。

所以,我们如何杜绝这个闪失。

那在Spring3.0之后的版本,咱们就有招了。

我们可以使用 spring.profiles.active 来区分。

那做法的话就是下面两步:

一、在spring配置文件中配置两种环境信息(把我们的功能Bean 放在一个拥有profile属性里的Beans里)

<beans profile="dev">

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

<property name="locations">

<list>

<value>classpath:configure-test.properties</value>

</list>

</property>

</bean>

</beans>

<beans profile="prd">

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

<property name="locations">

<list>

<value>classpath:configure.properties</value>

</list>

</property>

</bean>

</beans>

这个配置一定要单独放一个spring文件,然后在applicationContext.xml(或者其他的主入口文件)里import进来,如果你混淆做,就会报错:

发现了以元素 'bean' 开头的无效内容。应以 '{"http://www.springframework.org/schema/beans:beans}

二,环境配置用于容器区分用哪个profile,这个大家自己选

1)在web.xml中配置使用哪种环境信息,tomcat启动的时候自动去加载对应的环境信息

<context-param>

<param-name>spring.profiles.active</param-name>

<param-value>dev</param-value>

</context-param>

2) tomcat启动参数

tomcat 中 catalina.bat(.sh中不用“set”) 添加JAVA_OPS。通过设置active选择不同配置文件

JAVA_OPTS="-Xms1g -Xmx2g -Xss256k -Dspring.profiles.active=pre"

3) 如果是在myeclipse或其他ide里 我们也可以设置JVM的启动参数

如何使用spring来进行进行正式、测试环境无缝式切换

5) 如果测试用例里使用

@RunWith(SpringJUnit4ClassRunner.class)

@ContextConfiguration(locations = {"classpath:applicationContext.xml"})

@ActiveProfiles("dev")

public class HelloJavaTest {

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot 测试环境中,通常需要以下软件包构成: 1. 测试框架:Spring Boot 提供了集成的测试框架,可以进行单元测试、集成测试等不同层面的测试。通常使用 JUnit、Mockito 或 AssertJ 等测试框架来编写和运行测试用例。 2. 数据库驱动:如果测试需要连接数据库,需要安装相应的数据库驱动。例如,如果使用 MySQL 数据库,需要下载和配置 MySQL 驱动。 3. 数据库清理工具:为了保持测试环境的干净和可重复性,可以使用数据库清理工具来在每个测试运行之前清理或重置数据库。例如,可以使用 Flyway 或 Liquibase 来管理数据库迁移和清理。 4. Mocking 框架:在进行单元测试时,可能需要模拟(Mock)一些外部依赖或组件,以隔离测试的目标单元。常用的 Mocking 框架包括 Mockito、PowerMock 等。 5. 测试报告工具:为了更好地了解测试结果和覆盖率,可以使用测试报告工具生成详细的测试报告。例如,可以使用 JaCoCo、SonarQube 等工具来生成代码覆盖率报告。 6. 集成开发环境(IDE):可以选择使用常见的 Java IDE,如 IntelliJ IDEA、Eclipse 或 NetBeans,来开发和运行测试用例。 7. 构建工具:如果使用 Maven 或 Gradle 作为构建工具,需要在测试环境中配置和管理相应的构建工具。 请注意,以上软件包只是一个基本的构成,具体的测试环境可能会根据项目需求和团队偏好而有所差异。在实际测试环境中,可能还需要引入其他依赖库和工具,如日志库(如 Logback、Log4j)、性能测试工具(如 JMeter)、持续集成工具(如 Jenkins)等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值