当前位置: 首页 > news >正文

成功的企业网站案例泉州百度开户

成功的企业网站案例,泉州百度开户,吉林公司做网站,WordPress在哪里添加备案目录 properties临时属性测试注入 args临时参数测试注入 bean配置类属性注入(Import) SpringBootTest是一个注解,用于测试Spring Boot应用程序。它可用于指示Spring Boot测试应用程序的启动点,并为测试提供一个可用的Spring应用…

目录

properties临时属性测试注入

args临时参数测试注入

bean配置类属性注入(@Import)


@SpringBootTest是一个注解,用于测试Spring Boot应用程序。它可用于指示Spring Boot测试应用程序的启动点,并为测试提供一个可用的Spring应用程序上下文。它还提供了自动配置的功能,可以将依赖注入到测试类中。

properties临时属性测试注入

测试过程本身并不是一个复杂的过程,但是很多情况下测试时需要模拟一些线上情况,或者模拟一些特殊情况。如果当前环境按照线上环境已经设定好了,例如是下面的配置

servers:ip-address: 192.168.0.1port: 2345dataSize: 8

但是你现在想测试对应的兼容性,需要测试如下配置

servers:ip-address: 192.168.0.1port: 2345dataSize: 4

 这个时候我们能不能每次测试的时候都去修改源码application.yml中的配置进行测试呢?显然是不行的。每次测试前改过来,每次测试后改回去,这太麻烦了。我们需要在测试环境中创建一组临时属性,去覆盖我们源码中(application.yml中)设定的属性。

这个时候就可以使用注解@SpringBootTest添加属性来模拟临时属性

//properties属性可以为当前测试用例添加临时的属性配置
@SpringBootTest(properties = {"servers.dataSiz=4"})
public class PropertiesAndArgsTest {@Value("${servers.dataSiz}")private String dataSiz;@Testvoid testProperties(){System.out.println(dataSiz);}
}

args临时参数测试注入

启动springboot程序时,通过命令行参数也可以设置属性值。测试时也可以进行修改属性

//args属性可以为当前测试用例添加临时的命令行参数
@SpringBootTest(args={"--test.prop=testValue2"})
public class PropertiesAndArgsTest {@Value("${test.prop}")private String msg;@Testvoid testProperties(){System.out.println(msg);}
}

args属性配置优先于properties属性配置加载。 

五种配置的优先级的先后顺序为

  • 1 命令行参数 (格式:–key=value)
  • 2 Java系统属性配置 (格式: -Dkey=value)
  • 3 application.properties
  • 4 application.yml
  • 5 application.yaml

bean配置类属性注入(@Import)

一个spring环境中可以设置若干个配置文件或配置类,若干个配置信息可以同时生效。 需求就是在测试环境中再添加一个配置类,然后启动测试环境时,生效此配置就行了。

Import注解在具体的测试中导入临时的配置,例如测试用例,方便测试过程,且上述配置不影响其他的测试类环境  

步骤①:在测试包test中创建专用的测试环境配置类(不要道java目录添加,那样子对源码进行了修改了)

@Configuration
public class MsgConfig {@Beanpublic String msg(){return "bean msg";}
}

步骤②:在启动测试环境时,导入测试环境专用的配置类,使用@Import注解即可实现

@SpringBootTest
@Import({MsgConfig.class})
public class ConfigurationTest {@Autowiredprivate String msg;@Testvoid testConfiguration(){System.out.println(msg);}
}

@Import注解在具体的测试中导入临时的配置,例如测试用例,方便测试过程,且上述配置不影响其他的测试类环境  

@Import注解提供了三种用法

1、@Import一个普通类 spring会将该类加载到spring容器中

2、@Import一个类,该类实现了ImportBeanDefinitionRegistrar接口,在重写的registerBeanDefinitions方法里面,能拿到BeanDefinitionRegistry bd的注册器,能手工往beanDefinitionMap中注册 beanDefinition

3、@Import一个类 该类实现了ImportSelector 重写selectImports方法该方法返回了String[]数组的对象,数组里面的类都会注入到spring容器当中

http://www.khdw.cn/news/22381.html

相关文章:

  • 做展览的网站太原seo网站优化
  • 淘宝做网站费用响应式网站模板的应用
  • 手机wap网站导航模板最新做做网站
  • 网站内容排版免费涨热度软件
  • 政务网站建设步骤windows优化大师下载安装
  • 淮安汽车集团网站建设李守洪排名大师怎么样
  • 英铭广州网站建设seo成功案例分析
  • 网站一般做几页网络运营和网络营销的区别
  • 企业为什么融资难惠州企业网站seo
  • 做装修网站好赚钱吗电商网站上信息资源的特点包括
  • 常德网站建设网站推广的方法有哪些
  • 禅城网站建设公司百度快照官网登录
  • 网站开发前端和后端哪个费时间亚马逊站外推广网站
  • 官网招聘和招聘网站aso优化费用
  • 兴海县公司网站建设seo搜索优化邵阳
  • 公司新建了网站以前的就网站可以全部删除吗自媒体引流推广
  • 电子商务网站规划与建设的论文品牌推广是做什么的
  • 如何预览做好的网站网站优化一年多少钱
  • 唐山高端网站建设推荐6个免费国外自媒体平台
  • 网站建设 风险说明书如何发布自己的html网站
  • 沈阳网站制作seo优化教学视频
  • 上海网站建设解决方案谷歌搜索引擎免费
  • wordpress社区程序seo排名优化培训
  • 嘉兴营销型网站建设seo网站外包公司
  • 网站开发一般学多久肇庆seo排名
  • linux下安装wordpress山东seo推广
  • wordpress 旅行主题深圳网站搜索优化工具
  • wordpress 采集微信公众号百度seo最新算法
  • 永乐网站建设域名归属查询
  • 广州专业网站建设哪家好东莞百度seo