| Software product line engineering is an emerging software development technique.Using this technique,a series of software products with common features can be developed and managed quickly and efficiently,thus form a family of software products.However,the advantages of software product line engineering in development also bring the challenges to testing work.In order to overcome this challenge,a model-based software product line testing strategy emerged.Combinatorial interaction testing is aresearch hotspot in software testing filed.In recent years,the researchers of software product line have applied it to the model-based software product line testing.The strategy of this test method is to select a small number of product configurations,which is considered as a test from a variety of product configurations to achieve the higher combined coverage.Normally the number of valid feature combinations explode as the interaction strength increases,this method is mostly implemented in the context of low-strength feature interaction.However,in the real industrial software product line application environment,the feature interaction is mostly high-strength interaction.In summary,how to achieve the maximum combination coverage with least product configuration under high-strength feature interaction is a difficult and practical problem.The model-based software product line testing methods are inseparable from feature models.The traditional feature model generation methods require software product line engineers extract relevant information manually from the requirements specification for feature modeling.Therefore,the manual-based feature modeling is a difficult,costly,error-prone and labor-intensive task.Because the requirement specification is a document written in natural language,it is difficult for a computer to recognize the implicated information directly.Most of the existing(semi)automatic feature modeling methods aim at the English context,and hence are unsuitable for Chinese context.Therefore,the(semi)automatic feature extraction modeling for the Chinese context is a challenging and meaningful work.In this thesis,we have carried out the relevant research on the two directions mentioned above.The contents and innovations of our work are as follows:(1)Proposing a test suite generation method using multi-objective evolutionary algorithm under high-strength feature interaction.When selecting a product configuration as test data,multiple factors need to be considered,such as the number of selected product configurations and combined coverage.Thus,the software product line combination interactive test problem can be considered as a multi-objective optimization problem.And due to the huge search space caused by high-intensity feature interaction,we propose a test suite generation method using multi-objective evolutionary algorithm under high-strength feature interaction.Our method uses three objectives as the selection orientation of the test suite,namely:the number of product configurations selected,the coverage of combination and the similarity between product configurations.For the software product line environment,an individual representation compatible with evolutionary algorithm is designed,and the generation of initial population is optimized to improve the efficiency of the method.Besides that,the method of this thesis can generate many different solutions at one time,which can provide sufficient selection for test engineers to meet different test requirements.Finally,four case studies and a set of benchmark comparative experiments are used to verify the effectiveness and efficiency of our method.(2)Proposing an NLP-based feature extraction method and a pattern matching based constraint relationship mining method for the Chinese context.The feature modeling work is mainly divided into two parts:candidate feature extraction and constraint relationship mining.In this thesis,a feature extraction method based on natural language processing(NLP)technique and a constraint relationship mining method based on pattern matching are designed for Chinese context.The whole feature modeling work is semi-automatically.The method is comprised of three parts:(i)text preprocessing,it contains tokenization and removal stop words;(ii)identification of candidate features and root features.We first perform part-of-speech tagging,and then determine candidate features by naive Bayesian classifier;(ⅲ)Constraint relationship mining.We apply the pattern matching technique to achieve constraint relationship mining,and then design 11 constraint relationship patterns and a decision table for the Chinese context to obtain possible constraint relationships among candidate features.Finally,this thesis sets up four examples and a set of comparative experiments to verify the effectiveness of our method. |