Test data generation for dynamic unit test in java language using genetic algorithm
Genetik algoritma kullanarak java dilinde dinamik birim testi için test verisi üretimi
- Tez No: 687549
- Danışmanlar: DR. ÖĞR. ÜYESİ MUHAMMED FATİH ADAK
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Yazılım Testi, Birim Testi, Test Verisi, Evrimsel Algoritma, Genetik Algoritma, Software Testing, Unit Testing, Test Data, Evolutionary Algorithm, Genetic Algorithm
- Yıl: 2021
- Dil: İngilizce
- Üniversite: Sakarya Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Bilgisayar Bilimleri Bilim Dalı
- Sayfa Sayısı: 60
Özet
Yazılım testi, yazılım geliştirme yaşam döngüsünün önemli ve temel bir parçasıdır. Test etme, son kullanıcılara daha kaliteli bir sistem sunmaya yardımcı olur. Fakat, süreç, sistemdeki hataları tespit etme işlemini yerine getirdiğinden emin olmak için yazılması ve sürekli güncel tutulması gerektiğinden maliyetli bir işlemdir. Test senaryolarını sürdürmedeki sorunlardan biri, testleri yazılım ürününün her bir yolunu ve kod satırını kapsayacak şekilde çalıştırmak için kullanılan girdi verileridir. Bu test verilerinin oluşturulması, herhangi bir standart otomatikleştirilmiş test verisi oluşturma aracıyla gerçekleştirilmesi gereken tipik bir faaliyettir. Rastgele test veri oluşturucuları, testler için girdi verileri oluşturmak için en yaygın kullanılan araçlar arasındadır. Ancak, veri türleri ve parametrelerin araçlara göre manuel olarak uyarlanması ve kaynak kodu veya test senaryoları değiştirildiğinde manuel olarak güncellenmesi gerekir. Bu maliyetli bir süreçtir ve bu verileri oluşturmak ve güncellemek çok zaman ve çaba gerektirir. Rastgele test verisi oluşturucu, sembolik değerlendirici, fonksiyon minimizasyon yöntemleri gibi çeşitli test verisi oluşturucu araçları mevcuttur. Son yıllarda, yazılım testine bazı daha gelişmiş iyileştirilmiş arama teknikleri uygulanmıştır. Bu çalışmada, test verisi oluşturma sürecini otomatikleştiren bir model önerilmiştir. Giriş verilerini oluşturmak için gereken süreyi önemli ölçüde azaltmaktadır. Aynı zamanda, önerilen modelde, üretilen veriler, giriş verilerinin doğruluğu ve duyarlılığı açısından rastgele oluşturulan verilerden daha iyi performans göstermiştir. Önerilen modelde en yaygın kullanılan sezgisel algoritmalara dayanan Genetik algoritma kullanılmıştır. Geliştirilen model, farklı yöntem imzası, dönüş türü ve argüman sayısı olan 6 bağımsız genel yöntemle örnek bir sınıf üzerinde çalıştırılmıştır. Ortalama standart sapma 0,15 ve en iyi aday uygunluk ortalaması 8,82 ve ortalama uygunluk 9,79 olan her bir yöntem için 10 olası girdi üretmek ortalama 5 saniye sürmüştür. Sonuçlar çalışmanın sonuçlar bölümünde detaylı bir şekilde tartışılmıştır.
Özet (Çeviri)
Software testing is an essential and fundamental part of the software development lifecycle. Testing helps delivering a higher quality system to end users. However, it is costly as it needs to be written and updated as the process continues to ensure that it does its job in detecting faults and bugs in the system. One of the problems in maintaining test cases is the input data used to run the tests such a way that it covers each path and line of code of the software product. Generation of these test data is a typical activity which has to be accomplished through any standard automated test data generation tool. Random test data generators are among the most widely used tools to generate input data for the tests. However, the data types and parameters has to be manually tailored into the tools and needs to be updated manually once the source code or the test cases are changed. It is a costly process and takes a lot of time and effort to generate and update these data. There are various test data generator tools are available such as: random test data generator, symbolic evaluator, function minimization methods. In recent years some more advanced heuristic search techniques have been applied to software testing. In this study, we propose a model which automates the test data generation process. It significantly reduces the time required to generate the input data. At the same time, the data generated by our model outperforms the data generated randomly in terms of accuracy and sensibility of the input data. It is based on the most widely used heuristic algorithms which is genetic algorithm. We run the model on a sample class with 6 independent public methods of different method signature, return type and number of arguments. It takes 5 seconds to generate10 possible inputs for each method with a mean standard deviation of 0.15 and best candidate fitness average of 8.82 and mean fitness of 9.79. The results will be further discussed in results section of the study.
Benzer Tezler
- How cryptographic implementations affect mobile agent systems
Şifreleme gerçekleştirmelerinin gezgin aracı internet sistemlerini nasıl etkilediği
İSMAİL ULUKUŞ
Yüksek Lisans
İngilizce
2003
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolBoğaziçi ÜniversitesiSistem ve Kontrol Mühendisliği Ana Bilim Dalı
PROF. DR. EMİN ANARIM
- Geoteknik özelliklerin belirlenmesinde sismik ve penetrasyon deneylerinin karşılaştırılması
The Comparison of in-situ seismic and penetration test for the determination of geotechnical properties
RECEP İYİSAN
- SQL/DS ve CSP/AD ile kütüphane uygulaması geliştirme
Design and implementation of a library application with SQL/DS and CSP/AD
İSRAFİL AVCI
Yüksek Lisans
Türkçe
1990
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiDOÇ.DR. BÜLENT ÖRENCİK
- Lageos I ve lageos II için doğruluk analizi
Başlık çevirisi yok
GAYE KIZILSU
Doktora
Türkçe
1998
Jeodezi ve Fotogrametriİstanbul Teknik ÜniversitesiÖlçme Tekniği Ana Bilim Dalı
DOÇ. DR. MUHAMMET ŞAHİN
- Türkiye'de yaşanan siyasi krizlerin ekonomik göstergelere etkisi üzerine bir model çalışması
A model study on the effect of political crises in Turkey on economic indicators
NİSA NUR KOÇOĞLU
Yüksek Lisans
Türkçe
2023
EkonomiFırat Üniversitesiİktisat Ana Bilim Dalı
DR. ÖĞR. ÜYESİ AYŞE ESRA PEKER