See You Again

软件测试学术界在研究什么

软件测试是一个相对新兴的行业,从软件开发细分而来,新东西不会像开发技术那样不断的涌现,整体上给人的感觉是比较死板,没有前途,机会少。我个人因为各种机缘进入了测试行业,接触了一些比较厉害的人,逐渐坚定了留在这个行业的决心。

有一天突发奇想,学术界在研究什么东西?是什么催发了这样一个细分的行业出来?于是翻阅了最近几年的 Google学术论文,主要的论文方向如下:

一、课程教学改革类

很多高校是最近几年才添加的软件测试课程,于是有人提了教学方面比较接地气的一些改革,比如线下的实践实习等。

二、测试用例约简算法

这里面比较高深,怎么用最小的用例集实现最大的测试覆盖度,随便摘一段感受一下:

顾庆等人[6] 基于选择性回归测试提出了一种 HATS算法, 该算法能够降低用例规模和避免无关需求覆盖,以更少的用例 数维持软件检测有效性。陈静等人[7]提出了一种基于关联模式的回归测试用例约简模型,纵向分析程序、测试需求和测试 用例之间的关联关系,简化测试用例。华丽等人[8]基于遗传算法和蚁群算法提出了一种新的软件测试用例约简算法,该算法能够利用遗传算法实现快速全局搜索,结合蚁群算法的初始信息素和正反馈性,得到用例约简的近似最优解,节省回归测试成本。孙青青等人[9] 提出了一种基于粗糙集与证据理论的 测试用例优化方法,该算法结合了粗糙集和证据理论的优势, 可以有效地实现用例集约简。郭曦等人[10] 提出了一种基于谓词抽象的测试用例约简生成算法,该算法根据指定谓词集合划 分等价类,实现状态集合之间的映射,得到约简抽象状态,实现用例约简。周冲波等人[11] 将用例约简问题建模为一种不会改变测试需求与测试用例覆盖关系的布尔运算问题,引入测试需求、用例集优先策略,经矩阵列变化得到精简的测试需求集,接着使用行变换约简测试用例集。王克朝等人[12]定义了一种失效覆盖向量相似度优先排序方法,可以将执行路径和失效执行路径相似的成功测试用例设置为较高的优先级,接着定义失效覆盖等价划分优化选择方法,获取可以最大区分失效执行语句的成功测试用例集合,构件测试用例优选模型,该模型具有较高的约简率和定位程序错误

这里有几个关键因素:执行时间、覆盖度、错误识别能力,可以说是研究比较多的方向,但是感觉还处于理论阶段,对实际的指导意义不是很大。

三、自动化测试系统的实施

这个比较偏向工程实施了,例如一个项目的测试用例建模、测试用例自动生成、数据收集和监测等等,不太具备可移植性。

四、新的测试手段或方法

例如众包测试、面向复用的软件测试方法,这种比较通用,通过一些方法降低软件测试工作,同时不降低软件质量,其实施细节的参考意义大。

五、测试数据自动生成

各种算法的研究,自动生成测试数据,这个在某些场景下也比较有用。

六、测试用例评审

提出一些理论来指导测试用例评审过程

七、其他

例如探讨大数据、云计算技术对软件测试未来的挑战,敏捷软件测试等。

小结:软件测试是一门实践性课程,理论性研究可以提供一些指导性的方向,如果在某个环节遇到困惑的时候可以参考一下这些论文。

2019-02-19 喜欢

Copyright © 2015-2022 BY-NC-ND 4.0

回到顶部 ↑