Spring
为何选择 Spring
概览 微服务 响应式 事件驱动 云 Web 应用 无服务器 批处理
学习
概览 快速入门 指南 博客
项目
概览 Spring Boot Spring Framework Spring Cloud Spring Cloud Data Flow Spring Data Spring Integration Spring Batch 查看所有项目
  • 开发工具
  • 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 微调基于注解的自动装配
            • 使用 Generics 作为自动装配 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 Expression Language (SpEL)
          • 评估
          • Bean 定义中的表达式
          • 语言参考
            • 字面量表达式
            • 属性、数组、列表、映射和索引器
            • 内联列表
            • 内联映射
            • 数组构建
            • 方法
            • 运算符
            • 类型
            • 构造函数
            • 变量
            • 函数
            • 可变参数调用
            • Bean 引用
            • 三元运算符 (If-Then-Else)
            • 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 实现
          • 定义新的 Advice 类型
        • Null 安全
        • 数据缓冲区和编解码器
        • 日志
        • 提前编译优化
        • 附录
          • 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 栈的 Web
        • Spring Web MVC
          • DispatcherServlet
            • 上下文层级
            • 特殊 Bean 类型
            • Web MVC 配置
            • Servlet 配置
            • 处理
            • 路径匹配
            • 拦截
            • 异常
            • 视图解析
            • 区域设置
            • 主题
            • Multipart 解析器
            • 日志
          • 过滤器
          • HTTP 消息转换
          • 注解控制器
            • 声明
            • 映射请求
            • Handler 方法
              • 方法参数
              • 返回值
              • 类型转换
              • 矩阵变量
              • @RequestParam
              • @RequestHeader
              • @CookieValue
              • @ModelAttribute
              • @SessionAttributes
              • @SessionAttribute
              • @RequestAttribute
              • 重定向属性
              • Flash 属性
              • Multipart
              • @RequestBody
              • HttpEntity
              • @ResponseBody
              • ResponseEntity
              • Jackson JSON
            • Model
            • @InitBinder
            • 验证
            • 异常
            • Controller Advice
          • 函数式端点
          • URI 链接
          • 异步请求
          • CORS
          • 错误响应
          • Web 安全
          • HTTP 缓存
          • 视图技术
            • Thymeleaf
            • FreeMarker
            • Groovy Markup
            • 脚本视图
            • HTML 片段
            • JSP 和 JSTL
            • RSS 和 Atom
            • PDF 和 Excel
            • Jackson
            • XML 编组
            • XSLT 视图
          • MVC 配置
            • 启用 MVC 配置
            • MVC 配置 API
            • 类型转换
            • 验证
            • 拦截器
            • 内容类型
            • 消息转换器
            • 视图控制器
            • 视图解析器
            • 静态资源
            • 默认 Servlet
            • 路径匹配
            • 高级 Java 配置
            • 高级 XML 配置
          • HTTP/2
        • REST 客户端
        • 测试
        • WebSocket
          • WebSocket API
          • SockJS 回退
          • STOMP
            • 概览
            • 优势
            • 启用 STOMP
            • WebSocket 传输
            • 消息流
            • 注解控制器
            • 发送消息
            • 简单消息代理
            • 外部消息代理
            • 连接到消息代理
            • 点作为分隔符
            • 认证
            • Token 认证
            • 授权
            • 用户目的地
            • 消息顺序
            • 事件
            • 拦截
            • STOMP 客户端
            • WebSocket 作用域
            • 性能
            • 监控
            • 测试
        • 其他 Web 框架
      • 基于响应式栈的 Web
        • Spring WebFlux
          • 概览
          • 响应式核心
          • DispatcherHandler
          • 注解控制器
            • @Controller
            • 映射请求
            • Handler 方法
              • 方法参数
              • 返回值
              • 类型转换
              • 矩阵变量
              • @RequestParam
              • @RequestHeader
              • @CookieValue
              • @ModelAttribute
              • @SessionAttributes
              • @SessionAttribute
              • @RequestAttribute
              • Multipart 内容
              • @RequestBody
              • HttpEntity
              • @ResponseBody
              • ResponseEntity
              • Jackson JSON
            • Model
            • DataBinder
            • 验证
            • 异常
            • Controller Advice
          • 函数式端点
          • URI 链接
          • CORS
          • 错误响应
          • Web 安全
          • HTTP 缓存
          • 视图技术
          • WebFlux 配置
          • HTTP/2
        • WebClient
          • 配置
          • retrieve()
          • 交换
          • 请求体
          • 过滤器
          • 属性
          • 上下文
          • 同步使用
          • 测试
        • HTTP 接口客户端
        • WebSocket
        • 测试
        • RSocket
        • 响应式库
      • 测试
        • Spring 测试简介
        • 单元测试
        • 集成测试
        • JDBC 测试支持
        • Spring TestContext Framework
          • 关键抽象
          • 引导 TestContext Framework
          • TestExecutionListener 配置
          • 应用事件
          • 测试执行事件
          • 上下文管理
            • 使用 XML 资源进行上下文配置
            • 使用 Groovy 脚本进行上下文配置
            • 使用组件类进行上下文配置
            • 混合使用 XML、Groovy 脚本和组件类
            • 使用 Context Customizers 进行上下文配置
            • 使用 Context Initializers 进行上下文配置
            • 上下文配置继承
            • 使用环境 Profile 进行上下文配置
            • 使用测试属性源进行上下文配置
            • 使用动态属性源进行上下文配置
            • 加载 WebApplicationContext
            • 使用 Web Mock
            • 上下文缓存
            • 上下文失败阈值
            • 上下文层级
          • 测试夹具的依赖注入
          • 测试中的 Bean 覆盖
          • 测试 Request- 和 Session-scoped Bean
          • 事务管理
          • 执行 SQL 脚本
          • 并行测试执行
          • TestContext Framework 支持类
          • 测试的提前编译支持
        • WebTestClient
        • MockMvc
          • 概览
          • 设置选项
          • Hamcrest 集成
            • 静态导入
            • 配置 MockMvc
            • 设置特性
            • 执行请求
            • 定义预期
            • 异步请求
            • 流式响应
            • 过滤器注册
          • AssertJ 集成
            • 配置 MockMvcTester
            • 执行请求
            • 定义预期
            • MockMvc 集成
          • HtmlUnit 集成
            • 为何集成 HtmlUnit?
            • MockMvc 和 HtmlUnit
            • MockMvc 和 WebDriver
            • MockMvc 和 Geb
          • MockMvc vs 端到端测试
          • 更多示例
        • 测试客户端应用
        • 附录
          • 注解
            • 标准注解支持
            • 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
          • 要求
          • 扩展
          • Null 安全
          • 类和接口
          • 注解
          • Bean 定义 DSL
          • Web
          • 协程
          • Kotlin 中的 Spring 项目
          • 快速入门
          • 资源
        • Apache Groovy
        • 动态语言支持
      • 附录
      • Java API
      • Kotlin API
      • Wiki
    编辑此页 GitHub 项目 Stack Overflow
    • Spring Framework
    • 测试
    • Spring 测试简介

    Spring 测试简介

    测试是企业软件开发不可或缺的一部分。本章重点介绍 IoC 原则为单元测试带来的价值以及 Spring Framework 对集成测试支持的好处。(企业测试的全面论述超出了本参考手册的范围。)

    测试 单元测试
    • 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. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
    使用条款 • 隐私 • 商标指南 • 感谢 • 您的加州隐私权 • Cookie 设置

    Apache®, Apache Tomcat®, Apache Kafka®, Apache Cassandra™, and Apache Geode™ are trademarks or registered trademarks of the Apache Software Foundation in the United States and/or other countries. Java™, Java™ SE, Java™ EE, and OpenJDK™ are trademarks of Oracle and/or its affiliates. Kubernetes® is a registered trademark of the Linux Foundation in the United States and other countries. Linux® is the registered trademark of Linus Torvalds in the United States and other countries. Windows® and Microsoft® Azure are registered trademarks of Microsoft Corporation. “AWS” and “Amazon Web Services” are trademarks or registered trademarks of Amazon.com Inc. or its affiliates. All other trademarks and copyrights are property of their respective owners and are only mentioned for informative purposes. Other names may be trademarks of their respective owners.

    在所有 Spring 文档中搜索