Spring
为何选择 Spring
概览 微服务 响应式编程 事件驱动 云原生 Web 应用 Serverless 批处理
学习
概览 快速入门 指南 博客
项目
概览 Spring Boot Spring Framework Spring Cloud Spring Cloud Data Flow Spring Data Spring Integration Spring Batch Spring Security 查看所有项目
  • 开发工具
  • Spring Tools 4 Spring Initializr
    学院
    课程 获得认证
    解决方案
    概览 Spring Runtime Spring Consulting Spring Academy For Teams 安全公告
    社区
    概览 事件 团队
    Spring Framework 6.2.6
      • 概览
      • 核心技术
        • IoC 容器
          • Spring IoC 容器和 Bean 简介
          • 容器概览
          • Bean 概览
          • 依赖
            • 依赖注入
            • 依赖和配置详解
            • 使用 depends-on
            • 延迟初始化的 Bean
            • 自动装配协作者
            • 方法注入
          • Bean 作用域
          • 定制 Bean 的特性
          • Bean 定义继承
          • 容器扩展点
          • 基于注解的容器配置
            • 使用 @Autowired
            • 使用 @Primary 或 @Fallback 微调基于注解的自动装配
            • 使用 Qualifiers 微调基于注解的自动装配
            • 将泛型用作自动装配限定符
            • 使用 CustomAutowireConfigurer
            • 使用 @Resource 进行注入
            • 使用 @Value
            • 使用 @PostConstruct 和 @PreDestroy
          • 类路径扫描和托管组件
          • 使用 JSR 330 标准注解
          • 基于 Java 的容器配置
            • 基本概念:@Bean 和 @Configuration
            • 使用 AnnotationConfigApplicationContext 实例化 Spring 容器
            • 使用 @Bean 注解
            • 使用 @Configuration 注解
            • 组合基于 Java 的配置
          • 环境抽象
          • 注册 LoadTimeWeaver
          • ApplicationContext 的附加功能
          • BeanFactory API
        • 资源
        • 验证、数据绑定和类型转换
          • 使用 Spring 的 Validator 接口进行验证
          • 数据绑定
          • 解析代码到错误消息
          • Spring 类型转换
          • Spring 字段格式化
          • 配置全局日期和时间格式
          • Java Bean 验证
        • Spring 表达式语言 (SpEL)
          • 评估
          • Bean 定义中的表达式
          • 语言参考
            • 字面量表达式
            • 属性、数组、列表、映射和索引器
            • 行内列表
            • 行内映射
            • 数组构造
            • 方法
            • 运算符
            • 类型
            • 构造函数
            • 变量
            • 函数
            • 可变参数调用
            • Bean 引用
            • 三元运算符(如果-那么-否则)
            • Elvis 运算符
            • 安全导航运算符
            • 集合选择
            • 集合投影
            • 表达式模板化
          • 示例中使用的类
        • 使用 Spring 进行面向切面编程
          • AOP 概念
          • Spring AOP 能力和目标
          • AOP 代理
          • @AspectJ 支持
            • 启用 @AspectJ 支持
            • 声明切面
            • 声明切入点
            • 声明通知
            • 引介
            • 切面实例化模型
            • 一个 AOP 示例
          • 基于 Schema 的 AOP 支持
          • 选择使用哪种 AOP 声明风格
          • 混合切面类型
          • 代理机制
          • 编程式创建 @AspectJ 代理
          • 在 Spring 应用中使用 AspectJ
          • 进一步资源
        • Spring AOP API
          • Spring 中的 Pointcut API
          • Spring 中的 Advice API
          • Spring 中的 Advisor API
          • 使用 ProxyFactoryBean 创建 AOP 代理
          • 简洁的代理定义
          • 使用 ProxyFactory 编程式创建 AOP 代理
          • 操作通知对象
          • 使用 "auto-proxy" 功能
          • 使用 TargetSource 实现
          • 定义新的通知类型
        • 空安全
        • 数据缓冲区和编解码器
        • 日志记录
        • 提前优化 (AOT)
        • 附录
          • XML Schema
          • XML Schema 编写
          • 应用程序启动步骤
      • 数据访问
        • 事务管理
          • Spring Framework 事务支持模型的优势
          • 理解 Spring Framework 事务抽象
          • 使用事务同步资源
          • 声明式事务管理
            • 理解 Spring Framework 的声明式事务实现
            • 声明式事务实现的示例
            • 回滚声明式事务
            • 为不同的 Bean 配置不同的事务语义
            • <tx:advice/> 设置
            • 使用 @Transactional
            • 事务传播
            • 通知事务操作
            • 在 AspectJ 中使用 @Transactional
          • 编程式事务管理
          • 选择编程式还是声明式事务管理
          • 事务绑定的事件
          • 应用服务器特定集成
          • 常见问题解决方案
          • 进一步资源
        • DAO 支持
        • 使用 JDBC 进行数据访问
          • 选择 JDBC 数据库访问方式
          • 包层次结构
          • 使用 JDBC 核心类控制基本 JDBC 处理和错误处理
          • 控制数据库连接
          • JDBC 批处理操作
          • 使用 SimpleJdbc 类简化 JDBC 操作
          • 将 JDBC 操作建模为 Java 对象
          • 参数和数据值处理的常见问题
          • 嵌入式数据库支持
          • 初始化 DataSource
        • 使用 R2DBC 进行数据访问
        • 对象关系映射 (ORM) 数据访问
          • Spring ORM 简介
          • 通用 ORM 集成注意事项
          • Hibernate
          • JPA
        • 使用对象-XML 映射器进行 XML 编组
        • 附录
      • Servlet Stack 上的 Web 开发
        • Spring Web MVC
          • DispatcherServlet
            • 上下文层次结构
            • 特殊 Bean 类型
            • Web MVC 配置
            • Servlet 配置
            • 处理
            • 路径匹配
            • 拦截
            • 异常
            • 视图解析
            • 区域设置
            • 主题
            • Multipart 解析器
            • 日志记录
          • 过滤器
          • HTTP 消息转换
          • 带注解的控制器
            • 声明
            • 请求映射
            • 处理器方法
              • 方法参数
              • 返回值
              • 类型转换
              • 矩阵变量
              • @RequestParam
              • @RequestHeader
              • @CookieValue
              • @ModelAttribute
              • @SessionAttributes
              • @SessionAttribute
              • @RequestAttribute
              • 重定向属性
              • Flash 属性
              • Multipart
              • @RequestBody
              • HttpEntity
              • @ResponseBody
              • ResponseEntity
              • Jackson JSON
            • Model
            • @InitBinder
            • 验证
            • 异常
            • 控制器通知
          • 函数式端点
          • URI 链接
          • 异步请求
          • CORS
          • 错误响应
          • Web 安全
          • HTTP 缓存
          • 视图技术
            • Thymeleaf
            • FreeMarker
            • Groovy Markup
            • 脚本视图
            • HTML 片段
            • JSP 和 JSTL
            • RSS 和 Atom
            • PDF 和 Excel
            • Jackson
            • XML 编组
            • XSLT 视图
          • MVC 配置
            • 启用 MVC 配置
            • MVC Config API
            • 类型转换
            • 验证
            • 拦截器
            • 内容类型
            • 消息转换器
            • 视图控制器
            • 视图解析器
            • 静态资源
            • 默认 Servlet
            • 路径匹配
            • 高级 Java 配置
            • 高级 XML 配置
          • HTTP/2
        • REST 客户端
        • 测试
        • WebSockets
          • WebSocket API
          • SockJS 回退
          • STOMP
            • 概览
            • 优势
            • 启用 STOMP
            • WebSocket 传输
            • 消息流
            • 带注解的控制器
            • 发送消息
            • 简单 Broker
            • 外部 Broker
            • 连接到 Broker
            • 点号作为分隔符
            • 身份验证
            • Token 身份验证
            • 授权
            • 用户目的地
            • 消息顺序
            • 事件
            • 拦截
            • STOMP 客户端
            • WebSocket 作用域
            • 性能
            • 监控
            • 测试
        • 其他 Web 框架
      • Reactive Stack 上的 Web 开发
        • Spring WebFlux
          • 概览
          • Reactive 核心
          • DispatcherHandler
          • 带注解的控制器
            • @Controller
            • 请求映射
            • 处理器方法
              • 方法参数
              • 返回值
              • 类型转换
              • 矩阵变量
              • @RequestParam
              • @RequestHeader
              • @CookieValue
              • @ModelAttribute
              • @SessionAttributes
              • @SessionAttribute
              • @RequestAttribute
              • Multipart 内容
              • @RequestBody
              • HttpEntity
              • @ResponseBody
              • ResponseEntity
              • Jackson JSON
            • Model
            • DataBinder
            • 验证
            • 异常
            • 控制器通知
          • 函数式端点
          • URI 链接
          • CORS
          • 错误响应
          • Web 安全
          • HTTP 缓存
          • 视图技术
          • WebFlux 配置
          • HTTP/2
        • WebClient
          • 配置
          • retrieve()
          • Exchange
          • 请求体
          • 过滤器
          • 属性
          • 上下文
          • 同步使用
          • 测试
        • HTTP 接口客户端
        • WebSockets
        • 测试
        • RSocket
        • Reactive 库
      • 测试
        • Spring 测试简介
        • 单元测试
        • 集成测试
        • JDBC 测试支持
        • Spring TestContext Framework
          • 关键抽象
          • 引导 TestContext Framework
          • TestExecutionListener 配置
          • 应用程序事件
          • 测试执行事件
          • 上下文管理
            • 使用 XML 资源进行上下文配置
            • 使用 Groovy 脚本进行上下文配置
            • 使用组件类进行上下文配置
            • 混合使用 XML、Groovy 脚本和组件类
            • 使用 Context Customizers 进行上下文配置
            • 使用 Context Initializers 进行上下文配置
            • 上下文配置继承
            • 使用环境 Profiles 进行上下文配置
            • 使用测试 Property Sources 进行上下文配置
            • 使用动态 Property Sources 进行上下文配置
            • 加载 WebApplicationContext
            • 使用 Web Mock 对象
            • 上下文缓存
            • 上下文故障阈值
            • 上下文层次结构
          • 测试夹具的依赖注入
          • 测试中的 Bean 覆盖
          • 测试 Request- 和 Session-scoped 的 Bean
          • 事务管理
          • 执行 SQL 脚本
          • 并行测试执行
          • TestContext Framework 支持类
          • 测试的提前支持 (AOT)
        • WebTestClient
        • MockMvc
          • 概览
          • 设置选项
          • Hamcrest 集成
            • 静态导入
            • 配置 MockMvc
            • 设置特性
            • 执行请求
            • 定义预期
            • 异步请求
            • 流式响应
            • 过滤器注册
          • AssertJ 集成
            • 配置 MockMvcTester
            • 执行请求
            • 定义预期
            • MockMvc 集成
          • HtmlUnit 集成
            • 为何进行 HtmlUnit 集成?
            • MockMvc 和 HtmlUnit
            • MockMvc 和 WebDriver
            • MockMvc 和 Geb
          • MockMvc 对比端到端测试
          • 更多示例
        • 测试客户端应用程序
        • 附录
          • 注解
            • 标准注解支持
            • Spring 测试注解
              • @BootstrapWith
              • @ContextConfiguration
              • @WebAppConfiguration
              • @ContextHierarchy
              • @ContextCustomizerFactories
              • @ActiveProfiles
              • @TestPropertySource
              • @DynamicPropertySource
              • @TestBean
              • @MockitoBean 和 @MockitoSpyBean
              • @DirtiesContext
              • @TestExecutionListeners
              • @RecordApplicationEvents
              • @Commit
              • @Rollback
              • @BeforeTransaction
              • @AfterTransaction
              • @Sql
              • @SqlConfig
              • @SqlMergeMode
              • @SqlGroup
              • @DisabledInAotMode
            • Spring JUnit 4 测试注解
            • Spring JUnit Jupiter 测试注解
            • 测试的元注解支持
          • 进一步资源
      • 集成
        • REST 客户端
        • JMS (Java 消息服务)
          • 使用 Spring JMS
          • 发送消息
          • 接收消息
          • 支持 JCA 消息端点
          • 注解驱动的监听器端点
          • JMS 命名空间支持
        • JMX
          • 将 Bean 导出到 JMX
          • 控制 Bean 的管理接口
          • 控制 Bean 的 ObjectName 实例
          • 使用 JSR-160 连接器
          • 通过代理访问 MBean
          • 通知
          • 进一步资源
        • 电子邮件
        • 任务执行和调度
        • 缓存抽象
          • 理解缓存抽象
          • 基于注解的声明式缓存
          • JCache (JSR-107) 注解
          • 基于 XML 的声明式缓存
          • 配置缓存存储
          • 接入不同的后端缓存
          • 如何设置 TTL/TTI/逐出策略/XXX 功能?
        • 可观测性支持
        • JVM 检查点恢复
        • CDS
        • 附录
      • 语言支持
        • Kotlin
          • 要求
          • 扩展
          • 空安全
          • 类和接口
          • 注解
          • Bean 定义 DSL
          • Web
          • 协程
          • Kotlin 中的 Spring 项目
          • 入门
          • 资源
        • Apache Groovy
        • 动态语言支持
      • 附录
      • Java API
      • Kotlin API
      • Wiki
    编辑本页 GitHub 项目 Stack Overflow
    • Spring Framework
    • 测试
    • 附录
    • 注解
    • Spring 测试注解

    Spring 测试注解

    Spring Framework 提供以下一套 Spring 特定的注解,您可以将其与 TestContext framework 结合使用在单元测试和集成测试中。更多信息,包括默认属性值、属性别名和其他细节,请参阅相应的 javadoc。

    Spring 的测试注解包括以下内容

    • @BootstrapWith

    • @ContextConfiguration

    • @WebAppConfiguration

    • @ContextHierarchy

    • @ContextCustomizerFactories

    • @ActiveProfiles

    • @TestPropertySource

    • @DynamicPropertySource

    • @TestBean

    • @MockitoBean 和 @MockitoSpyBean

    • @DirtiesContext

    • @TestExecutionListeners

    • @RecordApplicationEvents

    • @Commit

    • @Rollback

    • @BeforeTransaction

    • @AfterTransaction

    • @Sql

    • @SqlConfig

    • @SqlMergeMode

    • @SqlGroup

    • @DisabledInAotMode

    标准注解支持 @BootstrapWith
    • Spring Framework
      • 6.2.6
      • 6.1.19
      • 6.0.23
      • 7.0.0-M4
      • 7.0.0-SNAPSHOT
      • 6.2.7-SNAPSHOT
      • 6.1.20-SNAPSHOT
    • 相关 Spring 文档
      • Spring Boot
      • Spring Framework
      • Spring Cloud
        • Spring Cloud Build
        • Spring Cloud Bus
        • Spring Cloud Circuit Breaker
        • Spring Cloud Commons
        • Spring Cloud Config
        • Spring Cloud Consul
        • Spring Cloud Contract
        • Spring Cloud Function
        • Spring Cloud Gateway
        • Spring Cloud Kubernetes
        • Spring Cloud Netflix
        • Spring Cloud OpenFeign
        • Spring Cloud Stream
        • Spring Cloud Task
        • Spring Cloud Vault
        • Spring Cloud Zookeeper
      • Spring Data
        • Spring Data Cassandra
        • Spring Data Commons
        • Spring Data Couchbase
        • Spring Data Elasticsearch
        • Spring Data JPA
        • Spring Data KeyValue
        • Spring Data LDAP
        • Spring Data MongoDB
        • Spring Data Neo4j
        • Spring Data Redis
        • Spring Data JDBC 和 R2DBC
        • Spring Data REST
      • Spring Integration
      • Spring Batch
      • Spring Security
        • Spring Authorization Server
        • Spring LDAP
        • Spring Security Kerberos
        • Spring Session
        • Spring Vault
      • Spring AI
      • Spring AMQP
      • Spring CLI
      • Spring GraphQL
      • Spring for Apache Kafka
      • Spring Modulith
      • Spring for Apache Pulsar
      • Spring Shell
    • 所有文档...
    Spring

    版权所有 © 2005 -博通 (Broadcom)。保留所有权利。"Broadcom" 一词指 Broadcom Inc. 和/或其子公司。
    使用条款 • 隐私 • 商标指南 • 致谢 • 您的加州隐私权 • Cookie 设置

    Apache®、Apache Tomcat®、Apache Kafka®、Apache Cassandra™ 和 Apache Geode™ 是 Apache Software Foundation 在美国和/或其他国家的商标或注册商标。Java™、Java™ SE、Java™ EE 和 OpenJDK™ 是 Oracle 和/或其关联公司的商标。Kubernetes® 是 Linux Foundation 在美国和其他国家的注册商标。Linux® 是 Linus Torvalds 在美国和其他国家的注册商标。Windows® 和 Microsoft® Azure 是 Microsoft Corporation 的注册商标。“AWS”和“Amazon Web Services”是 Amazon.com Inc. 或其关联公司的商标或注册商标。所有其他商标和版权均为其各自所有者的财产,仅为提供信息目的提及。其他名称可能是其各自所有者的商标。

    在所有 Spring 文档中搜索