# 6.11测试工具

自动化的单元测试和集成测试为软件架构师和开发人员提供了关于其构建块的结构和内部接口以及它们如何相互协作的早期反馈。测试通常是新创建构建块的第一批用户，并可以为其创建、演进和改进提供有价值的信息。单元测试和集成测试工具包括：\
• 单元测试（例如，xUnit 衍生工具）\
• 运行时测试（例如，负载/性能测试、压力测试、健壮性测试）\
• 渗透测试、攻击场景\
• 测试用例、测试数据和测试结果的管理

#### &#xD;6.11.1需求和决策标准

• 集成到开发环境中\
• 简单、可执行的测试描述\
• 测试结果的报告\
• 从多次测试运行中收集测试结果，以识别趋势

#### &#xD;6.11.2 测试工具面临的挑战

• 支持异构或分布式系统\
• 测试用例及其相关测试数据的同步管理（版本和配置管理任务）\
• 用户界面的自动化测试\
• 对尚未可用（或不能使用）的外部系统进行模拟（仿真）以进行测试。对模拟框架类别的支持已经建立。

#### &#xD;6.11.3Examples

在 <http://www.opensourcetesting.org> 有广泛的概述。\
• 用于单元测试的 xUnit 框架（均为开源）\
• 验收测试工具(FitNess、Cucumber、Spock)
