数据驱动测试是基于可用性的测试。可用性是指在特定的任务场景和使用环境下,软件系统能够被理解、学习、使用并持续引起关注的能力,即特定用户有效、可靠、安全、满意地使用软件系统达到特定目标的能力,是软件系统质量、效能、任务能力的外在呈现,是数据驱动测试力求解决的核心问题。ISO 9241将软件可用性划分为有效性、效率和满意度三个子特性。有效性是使用软件系统完成规定任务,达到期望目标的程度;效率是指单位时间内完成的工作量,即在一个使用周期内,基于确定的精度和完整度,软件系统完成目标任务的能力及资源耗费情况;满意度是指客户期望及体验的匹配程度,是客户对软件系统可感知效果的主观反映,即对软件系统的认可度。认知预演、启发式评估、用户测试,在软件可用性测试与评估中展现出了良好的工程实用价值。
认知预演是将用户行为过程及系统反馈,按任务流程划分实现步骤,对每个步骤进行检查评价,判断可能出现的可用性问题。首先,确定目标用户及使用质量目标,定义测试任务及每项任务的执行顺序、期望结果、操作使用等要素;其次,进行操作使用预演,就能否建立并实现任务目标、获得行动计划、完成预期操作、具备足够的健壮性和容错能力、根据系统反馈信息评价任务完成情况,分析判断可能出现的可用性问题;最后,从达到什么效果、行动是否有效、状态是否良好、系统运行是否可靠等对软件系统的可用性进行评价。该方法首先由Wharton等人于1990年提出,2000年Spencer对其进行优化改进。该方法能够使用任何低保真原型,但非最终用户评价,尚不能很好地代表用户。
启发式评估是根据可用性原则,首先由评估小组成员独立地对系统进行反复操作,浏览系统界面,检测系统输出,对系统的可用性做出评价;其次进行集中讨论,确认存在的问题并对可用性做出评价。该方法决断快,资源开销少,能够提供综合评价结论,但评价结果可能存在主观性、不一致等问题。
用户测试是由使用人员在不同场景下,按实际使用方式进行操作使用,对测试过程进行观察,处理并分析测试数据,根据问题的严重程度和紧急程度排序,反馈用户使用表现及实际需求,是一种有效的可用性评估方法。用户测试一般分为实验室测试和现场测试。实验室测试往往同软件测试或相关试验同步开展,现场测试则是在实际使用环境下进行测试,如武器装备软件测试过程中,将软件测试同性能鉴定结合,在很大程度上解决了可用性测试的最佳实践问题。