Abstract

Software testing is a vital part of software engineering process. Automated testing makes this process more accurate and more efficient. Due to the large number and the variety of testing tools, a comprehensive taxonomy of these features is necessary. This research aims at developing a comprehensive taxonomy for testing tools to help software developers choose the appropriate tool for particular software. The framework includes two main parts: (1) a taxonomy of testing tools; (2) multi-criteria selection method. The first part covers different criteria of testing tools. Because these criteria are large in numbers, wide and variant, a taxonomy of these criteria is needed. This taxonomy will help developers distinguish among testing tools based on a wide spectrum of different criteria. The second part of the framework is a multi-criteria selection method; that enables software developers to choose the appropriate testing tool using a systematic and adequate automated manner. It reduces the cost of the selection process and helps beginners in testing to choose testing tools based on scientific and comprehensive criteria. The selection method employs scientific two well-known methods of multi-criteria decision-making techniques; Analytic Hierarchy Process (AHP) and Technique for Order Preference by Similarity to Ideal Solution (TOPSIS). The testing tools taxonomy is well validated by academic professionals in Software engineering and achieved good scores in terms of significance, usefulness and comprehension. Academics reported that the taxonomy is slightly complex and needs to be simplified. The selection method was implemented as a website and validated using different scenarios to prove the quality of selection even in complex cases.

Highlights

  • Software is one of the most important aspects of technological advances in the world

  • The framework is well evaluated in both parts, the taxonomy of the testing tools and the selection method

  • For the first part of the framework- testing tools taxonomy- the experts indicated that the taxonomy is/will: (1) important and useful; (2) comprehensive; (3) help developers choosing the best tools for software testing among a large number of testing tools

Read more

Summary

Introduction

Software is one of the most important aspects of technological advances in the world. Within the heart of software development life cycle (SDLC), testing represents a milestone process to check the validity and quality of software [9]. The process of manual testing is timeconsuming [37] and the problem becomes worse when we repeat the tests after each correction and with each related feature. Automated testing makes this process more effective [37]. There are many varied tools that provide automated testing These tools exercise the software against some predefined test cases; and compare the actual outcomes with expected ones [5,17,18]. The developer have to look through the VOLUME XX, 2021

Objectives
Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call