بهبود فرایند تولید خودکار داده آزمون نرمافزار مبتنی بر معیار پوشش مسیر و با استفاده از ترکیب الگوریتم بهینه سازی کواتی و الگوریتم یادگیری Q
محورهای موضوعی : مهندسی برق و کامپیوترمرضیه سپهوند 1 , مجتبی صالحی 2
1 - گروه کامپیوتر، واحد خرمآباد، دانشگاه آزاد اسلامی، خرمآباد، ايران
2 - گروه کامپیوتر، واحد خرمآباد، دانشگاه آزاد اسلامی، خرمآباد، ايران
کلید واژه: آزمون نرمافزار, تولید داده آزمون, آزمون ساختاری, الگوریتمهای فرامکاشفهای, الگوریتم یادگیری Q.,
چکیده مقاله :
آزمون نرمافزار یکی از مهمترین روشهای تحلیل میزان اطمینان کیفیت نرمافزار است. این فرایند بسیار زمانبر و پرهزینه است و تقریباً نیمی از هزینه تولید نرمافزار را به خود اختصاص داده است. از این رو به دنبال استفاده از روشهای خودکار به منظور کاستن هزینه و زمان آزمون هستیم. مسأله عمده در فرایند تولید داده آزمون، تعیین دادههای ورودی برنامه، به گونهای است که معیار آزمون مشخصشده را برآورده سازد. در این تحقیق از روش ساختاری به منظور فرایند خودکارسازی تولید داده آزمون با تمرکز بر معیار پوشش همه مسیرهای متناهی استفاده شده است. در روش ساختاری، مسأله به یک مسأله جستجو تبدیل شده و از الگوریتمهای فرامکاشفهای برای حل آن استفاده میشود. روش پیشنهادی یک الگوریتم ترکیبی است که در آن الگوریتم یادگیری q بهعنوان یک روش جستجوی محلی در درون ساختار الگوریتم جستجوی کواتی مورد استفاده قرار میگیرد. به طور متوسط، الگوریتم پیشنهادی ما در مقایسه با سایر الگوریتمها حدود 25 تا 30 درصد بهبود را در پوشش نشان میدهد که آن را به طور قابل توجهی نسبت به دیگر الگوریتم ها مؤثرتر میکند. نتایج آزمایشها نشان میدهد که الگوریتم پیشنهادی بهدلیل رویکرد بهینه در جستوجوی مسیرهای آزمون، در مقایسه با سایر الگوریتمها، پوشش مسیر بالاتری حاصل کرده است.
The software testing process is very time-consuming and expensive and accounts for almost half of the cost of software production. The main issue in the test data generation process is determining the program's input data in such a way that it meets the specified test criteria. In this research, the structural method has been used to automate the process of generating test data, focusing on the criterion of covering all finite paths. In the structural method, the problem becomes a search problem, and metaheuristic algorithms can be used to solve it. The proposed method is a hybrid algorithm in which the q-learning algorithm is used as a local search method within the structure of the Coati search algorithm. The results of the tests have shown that this method for generating test data is faster than many metaheuristic algorithms and can provide better coverage with fewer evaluations. On average, our proposed algorithm shows about 25-30% improvement in coverage compared to other algorithms, which makes it significantly more effective than other algorithms. This shows that our algorithm achieves superiority over other compared algorithms due to its more efficient and optimal path coverage approach.