第三方构件的安全性是影响构件技术发展的重要因素之一,也是软件质量指标体系的重要组成部分,而安全性测试是确保此特性的有效手段。本课题以第三方构件为研究对象,首先研究第三方构件静态及动态运行时的显式及隐式安全漏洞特点,基于数据挖掘技术给出构件的安全性测试模型。然后基于此测试模型采用频繁项集和序列模式挖掘算法挖掘生成需求规约和有效的构件接口方法及构件方法执行序列,进一步导出构件状态转换图并生成接口方法测试序列。在此基础上给出相应的构件条件及状态变异算法,并对测试序列进行条件及状态变异,根据变异算法生成变异测试序列进行安全性测试。此外,基于构件测试运行时的监测日志及变异测试产生的不安全序列,采用数据分类技术、频繁项集及序列挖掘算法得到安全关联规则、安全异常方法及安全异常方法执行序列,同时生成安全测试报告。本课题的研究将为第三方构件的安全性测试提供新的方法和思路,将进一步促进构件软件工程的发展。
英文主题词Third-party component;Security testing;Data mining;Testing sequence;Mutation testing