Powered by OpenAIRE graph
Found an issue? Give us feedback
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/ IEEE Accessarrow_drop_down
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
IEEE Access
Article . 2022 . Peer-reviewed
License: CC BY
Data sources: Crossref
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
IEEE Access
Article . 2022
Data sources: DOAJ
https://dx.doi.org/10.60692/wx...
Other literature type . 2022
Data sources: Datacite
https://dx.doi.org/10.60692/7c...
Other literature type . 2022
Data sources: Datacite
DBLP
Article . 2022
Data sources: DBLP
versions View all 5 versions
addClaim

Object-Oriented Test Case Generation Using Teaching Learning-Based Optimization (TLBO) Algorithm

إنشاء حالة اختبار كائنية المنحى باستخدام خوارزمية التحسين القائم على التعلم (TLBO)
Authors: Ohood Al-Masri; Wedad Al-Sorori;

Object-Oriented Test Case Generation Using Teaching Learning-Based Optimization (TLBO) Algorithm

Abstract

Les chercheurs recherchent actuellement des méthodes efficaces pour les tests logiciels automatisés afin de réduire le temps, d'éviter la redondance des cas de test et de créer des cas de test complets à couvrir (chemins, bancs, conditions et déclarations). Générer un nombre minimum de cas de test et couvrir tous les chemins de code est difficile dans la génération automatisée de cas de test. Par conséquent, l'utilisation d'algorithmes d'optimisation est devenue une tendance populaire pour générer des cas de test afin d'atteindre de nombreux objectifs. Dans cette étude, nous avons utilisé un algorithme d'optimisation basé sur l'enseignement-apprentissage pour générer le nombre minimum de cas de test. Nous avons comparé nos résultats avec ceux d'autres méthodes de pointe basées sur la couverture de chemin pour dix programmes Java. Le motif de l'utilisation de cet algorithme est d'optimiser le nombre de cas de test qui couvrent tous les chemins de code dans le test unitaire. Les résultats soulignent que l'algorithme proposé génère le nombre minimum de cas de test et couvre tous les chemins dans le code à un taux de couverture complet.

Los investigadores actualmente están buscando métodos efectivos para las pruebas automatizadas de software para reducir el tiempo, evitar la redundancia de casos de prueba y crear casos de prueba integrales para cubrir (rutas, bancos, condiciones y declaraciones). Generar un número mínimo de casos de prueba y cubrir todas las rutas de código es un desafío en la generación automatizada de casos de prueba. Por lo tanto, el uso de algoritmos de optimización se ha convertido en una tendencia popular para generar casos de prueba para lograr muchos objetivos. En este estudio, utilizamos un algoritmo de optimización basado en la enseñanza-aprendizaje para generar el número mínimo de casos de prueba. Comparamos nuestros resultados con los de otros métodos de vanguardia basados en la cobertura de ruta para diez programas Java. El motivo para usar este algoritmo es optimizar el número de casos de prueba que cubren todas las rutas de código en la prueba unitaria. Los resultados enfatizan que el algoritmo propuesto genera el número mínimo de casos de prueba y cubre todas las rutas en el código a una tasa de cobertura completa.

Researchers are currently seeking effective methods for automated software testing to reduce time, avoid test case redundancy, and create comprehensive test cases to cover (paths, benches, conditions, and statements). Generating a minimum number of test cases and covering all code paths is challenging in automated test case generation. Therefore, the use of optimization algorithms has become a popular trend for generating test cases to achieve many goals. In this study, we used a teaching-learning-based optimization algorithm to generate the minimum number of test cases. We compared our results with those of other state-of-the-art methods based on the path coverage for ten Java programs. The motive for using this algorithm is to optimize the number of test cases that cover all code paths in the unit test. The results emphasize that the proposed algorithm generates the minimum number of test cases and covers all paths in the code at a full-coverage rate.

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

Keywords

FOS: Computer and information sciences, Code coverage, Test (biology), FOS: Mechanical engineering, object-oriented test case generation, Unit testing, Redundancy (engineering), Testing-Effort Dependent Models, Engineering, Machine learning, Test Case Prioritization, Cover (algebra), Biology, Test suite generation, Automated Testing, Software construction, Automated Software Testing Techniques, Paleontology, Software development, Computer science, coverage-based optimization, Mechanical engineering, TK1-9971, Programming language, Algorithm, Operating system, Computer Science, Physical Sciences, Search-Based Testing, Software Reliability Modeling, Electrical engineering. Electronics. Nuclear engineering, Software Reliability Assessment and Prediction, unit testing, Test case, Regression analysis, Software, Java, Empirical Studies in Software Engineering, Information Systems, Test Management Approach

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    0
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
0
Average
Average
Average
gold