Abstract

摘要 - 内部测试很难代表该领域真实用户执行的丰富多样的软件行为。 为了弥合内部测试和现场执行之间的差距,我们需要方法来 (1) 识别在现场而不是内部执行的行为,以及 (2) 生成执行此类(或至少类似)行为的新测试。 在这种情况下,我们提出了 Replica,这是一种使用现场执行数据来指导测试生成的技术。 Replica 在部署软件之前对其进行检测,以便在用户执行未经测试的行为时触发现场数据收集。 然后,当它接收到收集的字段数据时,Replica 使用引导符号执行来生成执行这种先前未经测试的行为的执行。 我们的经验评估表明,Replica 可以成功生成模拟现场执行的测试,包括执行的行为和检测到的故障。 我们的结果还表明,Replica 可以胜过不利用现场数据的最先进的输入生成技术。
索引词——软件测试; 现场数据; 测试输入生成