计算机科学 ›› 2022, Vol. 49 ›› Issue (11): 24-29.doi: 10.11896/jsjkx.210400210
张冰清1, 费琪2, 王轶辰1, 杨召2
ZHANG Bing-qing1, FEI Qi2, WANG Yi-chen1, Yang Zhao2
摘要: 集成测试序列生成是软件集成测试研究中的一个重要课题,合理的测试序列可以在提高集成测试效率的同时有效降低测试代价。面向服务的架构SOA(Service-Oriented Architecture)是近年来在企业中被广泛应用的一类分布式架构,目前针对SOA架构中集成测试序列生成的相关研究较少。由于SOA架构中服务间组合具有多态性,单纯使用传统的自顶向下和自底向上等集成测试策略,无法得到SOA架构中服务软件之间的集成测试序列,而目前以面向对象系统中类簇为对象的集成测试序列生成研究又很难适应SOA架构中服务之间复杂的耦合关系。基于此,提出了一种基于遗传算法的集成测试序列生成方法,用于解决SOA架构中服务软件之间的集成测试问题。该方法提出了利用服务特征组的概念表征集成测试影响因素和利用集成测试优先度的概念来表征服务软件的集成测试重要度的基本思想,同时构建了测试依赖图,用于描述SOA架构中服务软件之间的复杂耦合关系,在此基础上提出了面向测试依赖图的测试优先度算法,并以降低测试代价为最优化目标设计了遗传算法,用于生成集成测试序列。最后通过实例验证了所提方法的可行性和正确性,结果表明,所提方法能够生成测试优先度相对较高的节点优先集成和测试代价较低的服务软件集成测试序列。
中图分类号:
[1]NN A,WI A,IG B,et al.Understanding Service-Oriented Architecture(SOA):A systematic literature review and directions for further investigation[J].Information Systems,2020,91:101491. [2]ERL T,GEE C,NORMANN H,et al.Next generation SOA:A concise introduction to service technology & service-orientation[M].Pearson Education,2014. [3]ZHANG N P,CHEN X Q.Software testing technology [J].Microcomputer Development,2005(7):69-72. [4]ZHANG Y M,JIANG S J,ZHANG M,et al.Review of class test sequence generation techniques in integration testing [J].Acta Computa Sinica,2018,41(3):670-694. [5]KUNG D C,GAO J,PEI H,et al.Class Firewall,Test Order,and Regression Testing of Object-Oriented Programs[J].JOOP-Journal of Object-Oriented Programming,1995,8(2):51-65. [6]ZHOU Y,SONG J H.Research on object oriented integration test sequence [J].Computer Measurement and Control,2010,18(9):2014-2015,2018. [7]WANG Y,YU H,ZHU Z L.Integration test sequence generation method based on software node importance [J].Computer Research and Development,2016,53(3):517-530. [8]BRIAND L C,FENG J,LABICHE Y.Experimenting with genetic algorithms to devise optimal integration test orders[C]//Software Engineering with Computational Intelligence.Sprin-ger,Boston,MA,2003:204-234. [9]BRIAND L C,JIE F,LABICHE Y.Experimenting with Genetic Algorithms and Coupling Measures to Devise Optimal Integration Test Orders ABSTRACT[C]//International Conference on Software Engineering & Knowledge Engineering.DBLP,2011. [10]ZHANG Y M,JIANG S J,CHEN R Y,et al.Class integrationtest sequence determination method based on particle swarm optimization [J].Journal of Computer Science,2018,41(4):931-945. [11]ASSUNÇÃO W,COLANZI T E,VERGILIO S R,et al.A multi-objective optimization approach for the integration and test order problem[J].Information Sciences,2014,267:119-139. [12]ZHANG Y N.Research on class integration test sequence gene-ration method based on evolutionary optimization [D].Xuzhou:China University of mining and technology,2019. [13]YANG L L,LI B X.Survey of web service testing [J].Compu-ter Science,2008,35(9):258-265. [14]HUANG N,YU Y,ZHANG D Y.Research and implementation of web service software testing technology [J].Computer Engineering and Application,2004(35):147-149. [15]CANFORA G,DI PENTA M.Testing services and service-centric systems:challenges and opportunities[J].It Professional,2006,8(2):10-17. [16]ZHANG M,KEUNG J W,CHEN T Y,et al.Validating class integration test order generation systems with Metamorphic Testing[J].Information and Software Technology,2021,132:106507. [17]XUAN G N,CHENG R W.Genetic algorithm and engineering optimization [M].Beijing:Tsinghua University Press,2004. [18]QIN H B,LI D L,GUO L,et al.Software architecture complexity measurement method based on complex network [J].Micro-electronics and Computer,2013,30(2):5-8. [19]CZIBULA G,CZIBULA I G,MARIAN Z.An effective approach for determining the class integration test order using reinforcement learning[J].Applied Soft Computing,2018,65:517-530. [20]GUIZZO G,BAZARGANI M,PAIXAO M,et al.A hyper-heuristic for multi-objective integration and test ordering in google guava[C]//International Symposium on Search Based Software Engineering.Cham:Springer,2017:168-174. |
[1] | 杨浩雄, 高晶, 邵恩露. 考虑一单多品的外卖订单配送时间的带时间窗的车辆路径问题 Vehicle Routing Problem with Time Window of Takeaway Food ConsideringOne-order-multi-product Order Delivery 计算机科学, 2022, 49(6A): 191-198. https://doi.org/10.11896/jsjkx.210400005 |
[2] | 沈彪, 沈立炜, 李弋. 空间众包任务的路径动态调度方法 Dynamic Task Scheduling Method for Space Crowdsourcing 计算机科学, 2022, 49(2): 231-240. https://doi.org/10.11896/jsjkx.210400249 |
[3] | 杨文博, 原继东. 局部时间序列黑盒对抗攻击 Locally Black-box Adversarial Attack on Time Series 计算机科学, 2022, 49(10): 285-290. https://doi.org/10.11896/jsjkx.210900254 |
[4] | 吴善杰, 王新. 基于AGA-DBSCAN优化的RBF神经网络构造煤厚度预测方法 Prediction of Tectonic Coal Thickness Based on AGA-DBSCAN Optimized RBF Neural Networks 计算机科学, 2021, 48(7): 308-315. https://doi.org/10.11896/jsjkx.200800110 |
[5] | 郑增乾, 王锟, 赵涛, 蒋维, 孟利民. 带宽和时延受限的流媒体服务器集群负载均衡机制 Load Balancing Mechanism for Bandwidth and Time-delay Constrained Streaming Media Server Cluster 计算机科学, 2021, 48(6): 261-267. https://doi.org/10.11896/jsjkx.200400131 |
[6] | 王金恒, 单志龙, 谭汉松, 王煜林. 基于遗传优化PNN神经网络的网络安全态势评估 Network Security Situation Assessment Based on Genetic Optimized PNN Neural Network 计算机科学, 2021, 48(6): 338-342. https://doi.org/10.11896/jsjkx.201200239 |
[7] | 左剑凯, 吴杰宏, 陈嘉彤, 刘泽源, 李忠智. 异构无人机编队防御及评估策略研究 Study on Heterogeneous UAV Formation Defense and Evaluation Strategy 计算机科学, 2021, 48(2): 55-63. https://doi.org/10.11896/jsjkx.191100053 |
[8] | 高帅, 夏良斌, 盛亮, 杜宏亮, 袁媛, 韩和同. 基于投影圆度和遗传算法的空间圆柱面拟合方法 Spatial Cylinder Fitting Based on Projection Roundness and Genetic Algorithm 计算机科学, 2021, 48(11A): 166-169. https://doi.org/10.11896/jsjkx.201100057 |
[9] | 姚泽玮, 林嘉雯, 胡俊钦, 陈星. 基于PSO-GA的多边缘负载均衡方法 PSO-GA Based Approach to Multi-edge Load Balancing 计算机科学, 2021, 48(11A): 456-463. https://doi.org/10.11896/jsjkx.210100191 |
[10] | 于扬, 邢镔, 曾骏, 文俊浩. KSN:一种基于知识图谱和相似度网络的Web服务发现模型 KSN:A Web Service Discovery Method Based on Knowledge Graph and Similarity Network 计算机科学, 2021, 48(10): 160-166. https://doi.org/10.11896/jsjkx.200900026 |
[11] | 高基旭, 王珺. 一种基于遗传算法的多边缘协同计算卸载方案 Multi-edge Collaborative Computing Unloading Scheme Based on Genetic Algorithm 计算机科学, 2021, 48(1): 72-80. https://doi.org/10.11896/jsjkx.200800088 |
[12] | 吉顺慧, 张鹏程. 基于支配关系的数据流测试用例生成方法 Test Case Generation Approach for Data Flow Based on Dominance Relations 计算机科学, 2020, 47(9): 40-46. https://doi.org/10.11896/jsjkx.200700021 |
[13] | 董明刚, 黄宇扬, 敬超. 基于遗传实例和特征选择的K近邻训练集优化方法 K-Nearest Neighbor Classification Training Set Optimization Method Based on Genetic Instance and Feature Selection 计算机科学, 2020, 47(8): 178-184. https://doi.org/10.11896/jsjkx.190700089 |
[14] | 梁正友, 何景琳, 孙宇. 一种用于微表情自动识别的三维卷积神经网络进化方法 Three-dimensional Convolutional Neural Network Evolution Method for Facial Micro-expression Auto-recognition 计算机科学, 2020, 47(8): 227-232. https://doi.org/10.11896/jsjkx.190700009 |
[15] | 杨德成, 李凤岐, 王祎, 王胜法, 殷慧殊. 智能3D打印路径规划算法 Intelligent 3D Printing Path Planning Algorithm 计算机科学, 2020, 47(8): 267-271. https://doi.org/10.11896/jsjkx.190700184 |
|