Geri Dön

Yapay zeka tabanlı yazılım testi platformu geliştirilmesi

Development of artificial intelligence based software testing platform

  1. Tez No: 817096
  2. Yazar: SERGEN AŞIK
  3. Danışmanlar: DR. ÖĞR. ÜYESİ UĞUR YAYAN
  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: 2023
  8. Dil: Türkçe
  9. Üniversite: Eskişehir Osmangazi Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Bilgisayar Bilimleri Bilim Dalı
  13. Sayfa Sayısı: 87

Özet

Teknolojinin hızla gelişmesiyle birlikte yazılım, donanım cihazlarını işleten ve kontrol eden modern yaşamın hayati bir unsuru haline gelmiştir. Hatalı ve düşük kaliteli yazılım, insanlar için ciddi risk oluşturabilir ve hayatlarını tehlikeye atabilir. Bu durum, hatasız ve yüksek kaliteli yazılım geliştirmenin zorunlu hale geldiğini vurgulamaktadır. Hatasız ve yüksek kaliteli yazılım geliştirmenin yolu doğrulama ve onaylama süreçleriyle sağlanmaktadır. Bu sürecin ayrılmaz bir parçası yazılım testidir. Kod kapsamı, test takımlarının etkinliğini değerlendirmek için yaygın olarak kullanılan bir yazılım testi tekniği olsa da bazı sınırlamaları bulunmaktadır. Bu sınırlamaları ele almak için endüstride ve akademik çalışmalarda mutasyon testi yaklaşımı önerilmektedir. Mutasyon testi, test senaryoları oluşturma ve test takımlarının etkinliğini değerlendirme yöntemi olarak kabul edilmektedir. Bu tez çalışmasının amacı, yazılım uygulamalarındaki gerçek dünya hatalarından mutasyonları otomatik olarak öğrenmek ve platform üzerinde sunmaktır. Önerilen yöntem, ilk olarak hata düzeltmelerini metot (fonksiyon) seviyesinde çıkarmayı, mutasyon türlerine göre ayrıştırmayı ve kaynak kodunun soyutlamasını içermektedir. Daha sonra, mutasyon türlerine göre ayrıştırılan soyutlanmış metot seviyesindeki kaynak kodlarından mutant kod üretimini gerçekleştirmek amacıyla nöral makine çevirisi tabanlı dönüştürücü modeli geliştirilmiştir. Son olarak, önerilen nöral makine çevirisi tabanlı mutant üretim modeli dahil olmak üzere yazılım testini yapay zekâ tabanlı olarak gerçekleştirebilen modeller için bir platform oluşturulmuştur. Deneysel sonuçlardan elde edilen bulgular, önerilen yöntemin %6 ile %35 arasında gerçek dünya hatalarına benzer mutasyonlu kodları başarıyla tahmin edebildiğini göstermektedir. Ayrıca, mutant üretici modelin orijinal hatalı kaynak kodundan farklı olarak mutant kodları %94'lük başarıyla üretebilmektedir. Üretilen mutant kaynak kodları, sözlüksel ve sözdizimsel olarak %96 doğrulukla elde edilebilmektedir. Bu sonuçlar, yazılım testi için kaynak kodlarının yapay zekâ tabanlı olarak üretilebileceğini göstermiştir.

Özet (Çeviri)

Due to the fast-paced development of technology, the software has become a crucial aspect of modern life, faciliating the operation and management of hardware devices. Faulty and low-quality software can pose severe risks to individuals and endanger their lives. This highlights the necessity of developing error-free and high-quality software. Verification and validation processes are integral to achieving error-free and high-quality software, with software testing being a fundamental part of this process. While code coverage is a widely used software testing technique to assess the effectiveness of test suites, it has certain limitations. The mutation testing approach has been proposed in industry and academic research to address these limitations. Mutation testing is considered a method for generating test scenarios and evaluating the effectiveness of test suites. This thesis aims to automatically learn mutations from real-world bugs in software applications and present them on a platform. The proposed method involves initially extracting bug fixes at the method-level, categorizing them according to mutation types, and abstracting the source code. Subsequently, a neural machine translation-based transformer model has been developed to generate mutant code from the abstracted method-level source code based on the mutation types. Finally, a platform has been created for conducting software testing, including the proposed neural machine translation-based mutant generation model. The experimental results demonstrate that the proposed method successfully predicts mutation codes similar to real-world mutations, ranging from 6% to 35%. Additionally, the mutant generator model can successfully produce mutant codes different from the original buggy source code with a success rate of 94%. The generated mutant source codes can be obtained with 96% accuracy regarding lexical and syntactic correctness. These results indicate that source codes can be artificially generated for software testing based on artificial intelligence.

Benzer Tezler

  1. Yapay zekâ tabanlı bir mobil uygulama yazılımının geliştirilmesi; Öğretmen adaylarının sanal bitki koleksiyonları oluşturma projesinin bitki körlüğü ile bilgi düzeyleri açısından değerlendirilmesi

    Development of an artificial intelligence-based mobile application; Evaluation of prospective science teachers virtual plant collections project in terms of plant blindness and knowledge levels

    BERKAY CEYLAN

    Yüksek Lisans

    Türkçe

    Türkçe

    2024

    Eğitim ve ÖğretimMuğla Sıtkı Koçman Üniversitesi

    Matematik ve Fen Bilimleri Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ MELEK ALTIPARMAK KARAKUŞ

  2. Android zararlı yazılım tespit sistemi

    Android malware detection system

    TÜLAY AVAN

    Yüksek Lisans

    Türkçe

    Türkçe

    2020

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolEskişehir Osmangazi Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ ESRA NERGİS YOLAÇAN

  3. Ai-based visual odometry implementation on an embedded system

    Yapay zeka tabanlı görsel odometrinin gömülü bir sistemde gerçeklemesi

    OĞUZHAN BÜYÜKSOLAK

    Yüksek Lisans

    İngilizce

    İngilizce

    2023

    Savunma ve Savunma Teknolojileriİstanbul Teknik Üniversitesi

    Savunma Teknolojileri Ana Bilim Dalı

    PROF. DR. ECE OLCAY GÜNEŞ

  4. A virtual reality-based training environment designed for hands-on experience of software development

    Yazılım geliştirmenin uygulama deneyimi için tasarlanmış sanal gerçeklik tabanlı eğitim ortamı

    ULAŞ GÜLEÇ

    Doktora

    İngilizce

    İngilizce

    2018

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. VEYSİ İŞLER

    DR. ÖĞR. ÜYESİ MURAT YILMAZ

  5. Bilgisayarlı görü ile dijital ergonomik risk değerlendirme sistemi: REBA, RULA ve OWAS uygulaması

    Digital ergonomic risk assessment system with computerized vision: REBA, RULA and OWAS application

    ANIL ÖZKAN GEÇİCİ

    Yüksek Lisans

    Türkçe

    Türkçe

    2023

    Endüstri ve Endüstri MühendisliğiSakarya Üniversitesi

    Endüstri Mühendisliği Ana Bilim Dalı

    DOÇ. DR. ALPER KİRAZ