Geri Dön

Automated identification and refactoring of code clones in test scripts for eliminating duplication

Test betiklerindeki kod klonlarının otomatik tanımlanması ve tekrarın ortadan kaldırılması için yeniden yapılandırılması

  1. Tez No: 981476
  2. Yazar: ABDULMECİT ŞAHİN
  3. Danışmanlar: PROF. DR. HASAN SÖZER
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2025
  8. Dil: İngilizce
  9. Üniversite: Özyeğin Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Bilimleri Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: Belirtilmemiş.

Özet

Test betiklerindeki kod klonları, sürdürülebilirliği önemli ölçüde azaltabilmektedir. Özellikle test senaryolarında benzerliklerin bulunduğu ekosistemlerde ve ürün ailelerinde bu durum, kod tekrarına yol açabilmektedir. Bu çalışmanın amacı, test betiklerindeki tekrarları ortadan kaldırarak bu betiklerin boyutunu küçültmek ve bakımını kolaylaştırmaktır. Özellikle Python test betiklerine odaklanılarak, ortaklıkların otomatik olarak tespit edilmesi, varyasyonların belirlenmesi ve refaktörizasyonun uygulanmasına yönelik bir yöntem önerilmektedir. Çeşitli klon tespit araçlarının, Python test betiklerinde fonksiyonel düzeydeki kod klonlarını tespit etme etkinlikleri karşılaştırılmıştır. Benzer işlevler arasındaki farklılıkları ve kod bağımlılıklarını belirlemek amacıyla statik analiz uygulanmış, böylece otomatik refaktörizasyon süreci yönlendirilmiştir. Önerilen refaktörizasyon yaklaşımı, yeni işlevlerin çıkarılması veya mevcut işlevlerin parametreleştirme yoluyla genelleştirilmesini içermektedir. Yöntemimiz, bir endüstriyel ve üç açık kaynaklı proje üzerinde yapılan vaka çalışmalarıyla doğrulanmıştır. Elde edilen sonuçlar, otomatik refaktörizasyonun test betiklerinin boyutunda %8'e varan bir azalma sağlayabileceğini göstermektedir. Test betiklerindeki kod klonlarının otomatik olarak tespiti ve refaktörizasyonu, kod tekrarını ortadan kaldırarak betik boyutunu azaltabilmektedir. Vaka çalışmaları ile doğrulanan bu yaklaşım, farklı yazılım ekosistemlerinde test betiklerinin bakımını iyileştirmek amacıyla uygulanabilir niteliktedir.

Özet (Çeviri)

Code clones in test scripts can significantly reduce maintainability. They can lead to duplication especially in ecosystems and product families where applications have commonalities in their test scenarios. Our goal is to eliminate duplication in test scripts for reducing their size and improving their maintainability. In particular, we focus on Python test scripts and propose an automated approach to identify commonalities, detect variations, and apply refactoring. We compare the effectiveness of various clone detection tools in identifying code clones at the function level in Python test scripts. We apply static analysis to detect variations and code dependencies among similar functions to steer the automated refactoring process. The refactoring approach involves extracting new functions or generalizing existing functions through parameterization. We validate our approach through case studies on one industrial and three open-source projects. Our findings indicate that automated refactoring can lead to a reduction of up to 8% in the size of test scripts. Automated detection and refactoring of code clones in test scripts can eliminate code duplication and reduce the script size. The proposed approach, validated through case studies, shows promising results and can be applied in various software ecosystems to improve test script maintainability

Benzer Tezler

  1. Pozitif sinyal veren kan kültür şişelerinden MALDI TOF MS ile direkt tanımlama ve BD Phoenix otomatize sistemi ile direkt antibiyotik duyarlılık testi çalışılması

    Direct identification with MALDI TOF MS and direct antibiotic susceptibility testing with the BD Phoenix automated system from positive blood culture bottles

    GÜLŞAH MİROĞLU

    Tıpta Uzmanlık

    Türkçe

    Türkçe

    2023

    MikrobiyolojiSağlık Bakanlığı

    Tıbbi Mikrobiyoloji Ana Bilim Dalı

    DOÇ. DR. AYFER BAKIR

  2. Bakteriyolojik identifikasyonda konvansiyonel yöntemler ile otomatize sistemlerin karşılaştırılması.

    Comparison of the conventional methods and automated systems for identification of bacteria.

    ÖZGÜL KISA

    Doktora

    Türkçe

    Türkçe

    1995

    Enfeksiyon Hastalıkları ve Klinik MikrobiyolojiGata

    Mikrobiyoloji ve Klinik Mikrobiyoloji Ana Bilim Dalı

    PROF. DR. HÜSEYİN GÜN

  3. Düz basım ve çevrilerek alınan parmak izlerinin otomatik parmak izi tespit sistemi (OPTES)'nde tespit performanslarının karşılaştırılması

    Comparing hit performance for plain and rolled fingerprints in automated fingerprint identification system (AFIS)

    ÖZCAN YILDIZ

    Doktora

    Türkçe

    Türkçe

    2020

    Adli TıpAnkara Üniversitesi

    Adli Bilimler Ana Bilim Dalı (disiplinlerarası)

    PROF. DR. ASLIHAN GÜRBÜZ

  4. Kan ve kateter kültürü örneklerinden izole edilen corynebacterium afermentans ve corynebacterium mucifaciens bakterilerinin tanımlanmasında konvansiyonel yöntemler, otomatize sistemler ve DNA dizi analizi yöntemlerinin karşılaştırılması

    Comparison of conventional methods, automated systems and dna sequence analysis methods for identification of corynebacterium afermentans and corynebacterium mucifaciens bacteria isolated from blood and catheter culture samples

    SERPİL ÖLMEZ

    Tıpta Uzmanlık

    Türkçe

    Türkçe

    2017

    MikrobiyolojiYüzüncü Yıl Üniversitesi

    Tıbbi Mikrobiyoloji Ana Bilim Dalı

    DOÇ. DR. HÜSEYİN GÜDÜCÜOĞLU

    PROF. DR. BANU SANCAK

  5. Kan kültüründe üreyen gram-negatif çomakların otomatize sistemlerle tanımlanmadan hızlı antimikrobiyal duyarlılık testi metoduyla üçüncü kuşak sefalosporin, karbapenem ve seftazidim-avibaktam duyarlılığın tespit edilmesi

    Rapid antimicrobial susceptibility testing method for third-generation cephalosporins, carbapenems, and ceftazidime-avibactam susceptibility of gram-negative rods cultured in blood culture without automated identification systems

    MUHAMMED BURAK SEVİNÇ

    Tıpta Uzmanlık

    Türkçe

    Türkçe

    2025

    Enfeksiyon Hastalıkları ve Klinik Mikrobiyolojiİstanbul Üniversitesi

    Enfeksiyon Hastalıkları ve Klinik Mikrobiyoloji Ana Bilim Dalı

    DOÇ. DR. SENİHA BAŞARAN