第十章、软件测试 1.验证与确认:软件的错误举例几种国际知名的问题,一个小小的错误造成巨大的影响,有错是软件的属性,而且是无法改变的。验证和确认是贯穿软件生命周期的规范化评估方法。V&V的活动以V&V的管理验证与确认的活动模型。2.软件测试基础:测试是一个程序执行的过程,其目的在于发现错误,一个好的测试用例很可能是发现至今尚未察觉的错误,一个成功的测试用例是发现至今尚未察觉的错误的测试。软件测试的基本原则:①应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭②程序员应尽量避免检查自己的程序③在设计测试用例时,应当包括合理的输入条件和不合理的输入条件④测试用例应由测试输入数据和与之对应的预期输入结果这两部分组成⑤充分注意测试中的群集现象⑥严格执行测试计划,排除测试的随意性⑦应当对每一个测试结果做全面检查⑧妥善保存一切测试过程文档,为维护提供方便。测试文档包括测试计划、测试范围、测试用例、缺陷报告几部分内容。软件测试人员应具备沟通能力、移情能力、技术能力、自信心、外交能力、幽默感、很强的记忆力、耐心、怀疑精神、自我督促、洞察力等必要素质。3.软件测试策略包括单元测试、集成测试、确认测试、系统测试、软件调试。4.软件测试方法有静态测试与动态测试、黑盒测试与白盒测试,黑盒测试方法有等价类划分、边界值分析、状态测试、失败条件测试、错误推测法几种。白盒测试方法有逻辑覆盖、路径测试。程序的静态测试包括查找问题、遵守规则、审查准备、编写报告几个基本要素。5.面向对象软件测试:面向对象测试类型、面向对象测试示例、GUI测试示例。6.软件测试工具:Junit是一个回归测试框架,供Java开发人员编写单元测试使用。LoadRunner是一种预测系统行为和性能的工业标准级负载测试工具。