[发明专利]提供修改相关信息的方法和装置有效
申请号: | 201210364163.9 | 申请日: | 2012-09-26 |
公开(公告)号: | CN103678110A | 公开(公告)日: | 2014-03-26 |
发明(设计)人: | 官孝峰;蒋健;曹蕾 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京市中咨律师事务所 11247 | 代理人: | 周良玉;于静 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 提供 修改 相关 信息 方法 装置 | ||
技术领域
本发明涉及软件回归测试,更具体而言,涉及提供修改相关信息用于回归识别的方法和装置。
背景技术
在软件开发过程中,开发人员针对软件要实现的功能编写出源代码,然后测试人员利用测试用例对基于源代码构建的软件进行测试。一般来说,源代码的编写是逐步完成的。开发人员(对于大型软件来说,通常是多个开发人员)不断地向源代码提交修改记录(track),从而对源代码进行修改、补充和完善。于是,存在这样一种情况:基于某个版本的源代码所构建的软件可以通过测试用例的测试,但是在添加了若干修改记录之后,软件不能正常运行,无法通过同样的测试用例的测试。这种现象称为软件回归(regression)。为了消除软件回归,开发人员需要找出导致软件回归的修改记录,这称为回归识别。导致软件回归的修改记录通常也称为缺陷性修改记录。
现有技术中采用多种方式来识别缺陷性修改记录,也就是进行回归识别。在一种方案中,对于添加的多个修改记录依次进行测试。如果在某个修改记录i处软件可以通过测试但在下一修改记录(i+1)处不能通过测试,那么可以将修改记录(i+1)处识别为回归点,将修改记录(i+1)识别为缺陷性修改记录。该方案可以与二分法相结合来提高识别效率。例如,对于n个修改记录,从n/2处开始进行测试。如果在n/2处测试通过,则进一步在n/2与n的中点处进行测试;如果2/n处测试没有通过,则进一步在修改记录1与修改记录n/2的中点处进行测试,直到识别出如上所定义的缺陷性记录。在这样的方案中,回归识别所花费的时间依赖于修改记录的数目n,每次构建花费的时间b和测试花费的时间t。平均来说,识别出回归点所花费的时间为n/2*(b+t)。对于大型软件的开发与测试,b和t都可能花费较长时间,因此,这样的识别过程要花费很长时间。
在另一种方案中,每提交一个修改记录,就重新对软件进行构建和测试。如果软件不能通过测试用例的测试,就判定新添加的修改记录为缺陷性修改记录。这样的方案可以容易地确定出回归点。但是,该方案显著增加了构建和测试的频率。对于一些大型软件开发来说,高频率的构建和测试是不切实际的。
除了花费较长时间和较多精力之外,以上的方案只能确定出回归点,而不能给出更详细的信息,从而为开发人员的调试和纠错提供建议。
因此,希望提出新的方案,能够更加有效地识别并消除软件回归。
发明内容
鉴于以上提出的问题,提出本发明,旨在提供一种方案,通过提供修改相关信息,为软件回归测试中的回归识别和回归消除提供帮助。
根据本发明一个实施例,提出了一种修改相关信息的方法,包括:获取对软件源代码进行修改的至少一个修改记录的信息,所述至少一个修改记录包括至少一个修改项;从所述至少一个修改项中识别出至少一个初步备选修改项,所述初步备选修改项是导致源代码的执行发生改变的修改项;在所述源代码中与所述至少一个初步备选修改项对应的位置插入测试探针,从而在使用测试用例对所述源代码进行测试的过程中输出至少一个备选修改项的信息,所述至少一个备选修改项是所述至少一个初步备选修改项中与所述测试用例相关的修改项;以及,组合所述至少一个修改记录的信息与所述至少一个备选修改项的信息,基于组合的结果提供所述修改相关信息。
根据另一实施例,提出了一种用于提供修改相关信息的装置,包括:获取单元,配置为获取对软件源代码进行修改的至少一个修改记录的信息,所述至少一个修改记录包括至少一个修改项;识别单元,配置为从所述至少一个修改项中识别出至少一个初步备选修改项,所述初步备选修改项是导致源代码的执行发生改变的修改项;测试探针插入单元,配置为在所述源代码中与所述至少一个初步备选修改项对应的位置插入测试探针,从而在使用测试用例对所述源代码进行测试的过程中输出至少一个备选修改项的信息,所述至少一个备选修改项是所述至少一个初步备选修改项中与所述测试用例相关的修改项;提供单元,配置为组合所述至少一个修改记录的信息与所述至少一个备选修改项的信息,基于组合的结果提供所述修改相关信息。
利用上述方法和装置,可以在用测试用例对源代码进行单次测试期间提供修改相关信息,该修改相关信息能够示出有可能导致软件回归的修改记录及其中的修改项的信息。这样的信息对于有效地识别并消除软件回归非常有利。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210364163.9/2.html,转载请声明来源钻瓜专利网。
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置