Test cases prioritization for component-based front end technologies

Other Title(s)

تحديد الأولويات لحالات فحص منتج برمجي يستخدم تقنية واجهة مستخدم مبنية من خلال عمارة المكونات

Dissertant

Ghannam, Hibah

Thesis advisor

Sayyad, Abd al-Salam
Ahmad, Subhi

University

Birzeit University

Faculty

Faculty of Engineering and Technology

Department

Department of Computer Systems Engineering

University Country

Palestine (West Bank)

Degree

Master

Degree Date

2020

Arabic Abstract

يعد تحديد أولويات حالات الاختبار إجراء مهما يجب القيام به أثناء مرحلة الاختبار ضمن دورة حياة تطوير البرامج.

يساعد ذلك على إضافة المزيد من التركيز على حالات الاختبار التي لها أولوية عالية.

بالإضافة إلى ذلك، فإنه يساعد على اكتشاف العيوب في المراحل المبكرة، وبالتالي سنتم إدارة التكلفة والوقت بطريقة فعالة في الأونة الأخيرة، لبناء تطبيقات الويب، تعد أطر الواجهة الأمامية للبنية القائمة على المكونات من أكثر التقنيات المستخدمة لذلك يمكن ربط أولويات حالات الاختبار الجديدة بمكونات الواجهة الأمامية اعتمادا على إمكانية إعادة استخدام المكونات ومتطلبات أعمالها.

في الأبحاث السابقة، تم اقتراح العديد من الحلول لتحديد أولويات حالات الاختبار.

الفجوة هنا، أن معظم هذه الحلول تم بناؤها لنوع من أنواع الاختبار يسمى الانحدار أو التراجع regression.

تم إنشاء عدد قليل من الحلول المقترحة الحالات الاختبار الجديدة، في حين أن هذه الحلول لا تأخذ في عين الاعتبار تقنيات الواجهة الأمامية الجديدة مثل React أو Angular قدم هذا البحث إطار عمل كحل ألي لتحديد أولويات حالات الاختبار الجديدة.

حيث تمثل حالات الاختبار هذه تطبيق ويب سيتم تطويره باستخدام أطر عمل الواجهة الأمامية للبنية القائمة على المكونات.

تم اعتبار مشكلة تحديد الأولويات على أنها مشكلة متعددة الأهداف حيث يجب إجراء المفاضلة بين الأهداف المختلفة.

لذلك، تم تطوير الحل المقترح باستخدام أربع خوارزميات جينية : NSGA-II و BEA و MOCell و SPEA2.

خلال هذا البحث، تم إنشاء خمس مجموعات بيانات نظرا لعدم توفر مجموعات بيانات تم إنشاء المجموعة الأولى يدويا، بينما تم إنشاء المجموعات الأخرى باستخدام نهج عشوائي تم إنشاء مجموعات البيانات بالطريقة العشوائية للحصول على مجموعات بيانات بأحجام مختلفة، وقد أتاح ذلك فرصة لدراسة تأثير حجم مجموعة البيانات على النتائج يمكن أن يساعد هذا النهج العشوائي المقترح لإنشاء مجموعات البيانات الباحثين الآخرين على إنشاء أي مجموعة بيانات بأي حجم مطلوب لاختبار أي مشكلة مماثلة تم إجراء العديد من التجارب خلال هذا البحث وباستخدام مجموعات البيانات الخمس.

تم الحصول على نتائج متقاربة لجميع مجموعات البيانات فقد كانت 30 ثانية كحد أدنى لوقت التنفيذ كافية لجميع الخوارزميات المذكورة.

بالإضافة إلى أن الجودة متقاربة لجميع الخوارزميات التي تم تطبيقها على جميع مجموعات البيانات المذكورة في البحث.

وأقرت النتائج أيضا أن وجود وقت محدود للاختبار سيؤدي الى حل عالي الجودة في أقل من 30 ثانية كوقت تنفيذ لأي خوارزمية مذكورة.

من ناحية أخرى، يؤدي المزيد من الوقت المتاح للاختبار إلى مشكلة أكثر تعقيدا تقلل من جودة الحلول.

English Abstract

Test cases prioritization is an important action that has to be done during the testing phase within the software development life cycle.

It helps to add more focus on test cases that have high priority.

In addition, it helps to discover defects in early stages therefore cost and time will be managed in an effective way.

Recently, for building web applications, component based architecture frontend frameworks are the most popular used technologies.

Therefore new test cases prioritization could be connected with frontend components depending on components reusability and their business requirements.

In previous research, several solutions were proposed for test cases prioritization.

The gap here, that most of these solutions were built for regression testing.

Few proposed solutions have been generated for new test cases, while these solutions are not considering the new frontend technologies like React or Angular.

This research presents a framework as an automated solution for prioritization of new test cases.

Where those test cases represent a web application that is going to be developed using component based architecture frontend frameworks.

The prioritization problem has been considered as a multi objective optimization problem where trade-off has to be done between different objectives.

Therefore, the proposed solution in this research uses four genetic algorithms: NSGA-II, IBEA, MOCell and SPEA2.

During this research, five datasets have been created since there are no available datasets.

First one has been created manually, while the others have been created using a random approach.

The randomly generated datasets have been created to generate different dataset sizes and this has provided an opportunity to study the impact of dataset size on results.

This proposed random approach for creating datasets, can help researchers to create any dataset with any required size for testing any similar problem.

Several experiments have been done during this research and using the five datasets.

Results for all datasets approved that 30 seconds as minimum execution time is enough to all mentioned algorithms.

In addition the quality is close to all algorithms.

The results also approved that having limited time for testing generates a high quality solution in less than 30 seconds as execution time for any mentioned algorithm.

On the other hand, more available time for testing leads to a more complex problem that reduces the solutions quality.

Main Subjects

Information Technology and Computer Science

No. of Pages

121

Table of Contents

Table of contents.

Abstract.

Abstract in Arabic.

Chapter One : Introduction.

Chapter Two : Background.

Chapter Three : Related work.

Chapter Four : Research methodology.

Chapter Five : Experiment setup and run.

Chapter Six : Experiment results and analysis.

Chapter Seven : Threats to validity and conclusion.

References.

American Psychological Association (APA)

Ghannam, Hibah. (2020). Test cases prioritization for component-based front end technologies. (Master's theses Theses and Dissertations Master). Birzeit University, Palestine (West Bank)
https://search.emarefa.net/detail/BIM-1412837

Modern Language Association (MLA)

Ghannam, Hibah. Test cases prioritization for component-based front end technologies. (Master's theses Theses and Dissertations Master). Birzeit University. (2020).
https://search.emarefa.net/detail/BIM-1412837

American Medical Association (AMA)

Ghannam, Hibah. (2020). Test cases prioritization for component-based front end technologies. (Master's theses Theses and Dissertations Master). Birzeit University, Palestine (West Bank)
https://search.emarefa.net/detail/BIM-1412837

Language

English

Data Type

Arab Theses

Record ID

BIM-1412837