1. Geliştirilecek yazılımla ilgili, kodlardan önce test senaryolarının yazıldığı yaklaşıma verilen ad aşağıdakilerden hangisidir?
A) Dokümantasyon Bazlı Yazılım
B) Kodlama Tabanlı Geliştirme
C) Test Güdümlü Geliştirme
D) Analiz Bazlı Tasarım
E) Bakım Temelli Yazılım
Cevap : C) Test Güdümlü Geliştirme
Açıklama : Test Güdümlü Geliştirme (Test Driven Development – TDD), yazılım geliştirme sürecinde kodlamadan önce test senaryolarının yazılmasını ve geliştirmenin bu testleri geçecek şekilde yapılmasını öngören yaklaşımdır.
2. Yazılımlarda bazen bir birimin diğerini olumsuz olarak etkileyebildiği bilinmektedir. Bu durum aşağıdaki testlerin hangisiyle ortaya çıkabilir?
A) Kabul testi
B) Entegrasyon testi
C) Sistem testi
D) Saha testi
E) Birim testi
Cevap : B) Entegrasyon testi
Açıklama : Entegrasyon testi (Integration Testing), birimlerin birleştirildiğinde birbirleriyle olan etkileşimlerini ve uyumunu kontrol eder. Bir modülün diğerini bozup bozmadığı bu aşamada tespit edilir.
3. Aşağıdaki özelliklerden hangisinin bir yazılım geliştiricide olmasına gerek duyulmazken bir yazılım test uzmanında kesin olarak bulunması beklenir?
A) Programlama dilini iyi bilmek
B) Şüphecilik
C) Planlı olmak
D) Analitik olmak
E) Teknik ayrıntılara sahip olmak
Cevap : B) Şüphecilik
Açıklama : Yazılım geliştiriciler genellikle “nasıl çalıştırırım” odaklı iken, test uzmanları “nasıl bozulur” veya “ya çalışmazsa” şüphesiyle yaklaşmalıdır. Bu şüphecilik (skepticism), test uzmanının ayırt edici temel yetkinliğidir.
4. Aşağıdakilerden hangisi fonksiyonel testlerin amaçlarından biri değildir?
A) Yazılım biriminin hatasız, güvenilir ve etkin bir şekilde çalışması
B) Yazılım biriminin ihtiyaçları tam olarak karşılayıp karşılamadığının belirlenmesi
C) Yazılım biriminin sistem gereksinimlerine uygun olması
D) Yazılım biriminin kullanıcının isteklerine cevap vermesi
E) Yazılım biriminin yüksek performansa sahip olması
Cevap : E) Yazılım biriminin yüksek performansa sahip olması
Açıklama : Fonksiyonel testler yazılımın “ne yaptığını” (işlevselliğini) test eder. Performans, yük, stres gibi kavramlar ise yazılımın “nasıl çalıştığını” test eden fonksiyonel olmayan (non-functional) testlerin konusudur.
5. Bir yazılımda, sürekli aynı testler yapılması neticesinde belli bir süre sonra hiçbir hatanın bulunmaması aşağıdaki ilkelerin hangisi ile açıklanabilir?
A) İçerik Bağımlılık
B) Varlığı Göster, Yokluğu Gösterme
C) Erken Test Gereksinimi
D) Hata Yokluğu Yanılgısı
E) Tarım İlacı Paradoksu
Cevap : E) Tarım İlacı Paradoksu
Açıklama : Tarım İlacı Paradoksu (Pesticide Paradox), aynı test senaryolarının tekrar tekrar uygulanması durumunda, bu testlerin artık yeni hataları bulamayacağını ifade eder. Böceklerin ilaca bağışıklık kazanması gibi, yazılım da aynı testlere karşı direnç kazanır; bu yüzden testler güncellenmelidir.
6. Bir yazılım biriminde küçük çaplı testler yapılmış ve daha büyük çaplı testler için hazırlık aşaması başlamışsa bu durumda bu yazılım biriminin aşağıdaki testlerden hangisini tamamladığı ifade edilir?
A) Öncül test
B) Analiz testi
C) Performans testi
D) Duman testi
E) Yük testi
Cevap : D) Duman testi
Açıklama : Duman testi (Smoke Testing), yazılımın en temel fonksiyonlarının çalışıp çalışmadığını kontrol eden, daha detaylı testlere geçmeden önce yapılan ilk kontroldür (“Build Verification Test”).
7. Bir yazılım testinin aynı koşullar altında birden fazla kez yapılabilmesi aşağıdaki isimlerden hangisi ile ifade edilir?
A) Test Tekrarlanabilirliği
B) Doğruluk
C) Test Edilebilirlik
D) Test Analitikliği
E) Test Pratikliği
Cevap : A) Test Tekrarlanabilirliği
Açıklama : Test Tekrarlanabilirliği (Test Repeatability), bir testin aynı ortam ve girdilerle her çalıştırıldığında aynı sonucu vermesi yeteneğidir.
8. “Kurgusuz test” ismine sahip olan yazılım testine bu isim aşağıdaki özelliklerinin hangisine bağlı olarak verilmiştir?
A) Test esnasında hangi verilerin kullanıldığı
B) Testin nasıl planlandığı
C) Test esnasında hangi teknolojilerin kullanıldığı
D) Testin nasıl uygulandığı
E) Yazılımın hangi parçasının test edildiği
Cevap : B) Testin nasıl planlandığı
Açıklama : Kurgusuz test (Ad-hoc veya Exploratory testing), önceden yazılmış detaylı test senaryoları veya planları olmadan, test uzmanının sezgi ve deneyimine dayalı olarak anlık planlama ile yaptığı testtir.
9. Aşağıdakilerden hangisi bir mimarî ve /veya tasarım hatası değildir?
A) Yanlış sırada komut kullanmak
B) Belirtilmemiş birincil veri ve veri işleme sınıfları
C) Yazılım üzerinde gerçekleştirilen eksik inceleme
D) Iş süreç tasarımının zayıf kalması
E) Yazılımın müşterinin bilgisayarında çalışmaması
Cevap : E) Yazılımın müşterinin bilgisayarında çalışmaması
Açıklama :
10. Aşağıdakilerden hangisi bir yazılım riskinin Müşteri Açısından Önemine göre yapılmış bir kategorilendirme değildir?
A) İsteğe bağlı
B) Kritik
C) Zorunlu
D) Acil
E) Önemli
Cevap : B) Kritik
Açıklama :
11. Aşağıdaki şıklarda verilen test türlerinden hangileri, yazılımda değişiklik yapıldıktan sonraki durumları test eden testlerdir?
A) Kurulum Testi – Ölçeklenebilirlik Testi
B) Eşzamanlılık Testi – Hacim Testi
C) Saldırı Bazlı Test – Risk Bazlı Test
D) Bakım Testi – Regresyon Testi
E) Stres Testi – Yük Testi
Cevap : D) Bakım Testi – Regresyon Testi
Açıklama : Regresyon testi, yapılan bir değişikliğin mevcut çalışan özellikleri bozup bozmadığını kontrol eder. Bakım testi de yazılımın canlıya alındıktan sonraki değişim süreçlerini kapsar.
12. İngilizce’de yazılım hatası için genellikle bug (böcek) kelimesinin kullanılmasının sebebi nedir?
A) Herhangi bir sebebi yoktur, rastgele konulmuş bir isimdir
B) Yazılım hatalarının böceklere benzer şekilde zarar vermesi
C) Böcek ve hata kelimelerinin İngilizce’de aynı kökten gelmesi
D) Yazılım hatalarının fiziksel şeklinin böceğe benzemesi
E) Tespit edilen ilk yazılım hatasının gerçekten bir böcek yüzünden gerçekleşmesi
Cevap : E) Tespit edilen ilk yazılım hatasının gerçekten bir böcek yüzünden gerçekleşmesi
Açıklama : 1947 yılında Grace Hopper’ın ekibi, Mark II bilgisayarındaki bir hatanın röle arasına sıkışmış gerçek bir güve (böcek) yüzünden olduğunu bulmuş ve “bug” terimi literatüre girmiştir.
13. Aşağıdakilerden hangisi bir yazılım test raporunda genellikle bulunan bilgilerden biri değildir?
A) Hangi verilerin kullanıldığı
B) Hangi testin uygulandığı
C) Hangi bileşenin test edildiği
D) Testi kimin gerçekleştirdiği
E) Ne gibi sonuçlar elde edildiği
Cevap : D) Testi kimin gerçekleştirdiği
Açıklama :
14. Yeni bir cep telefonu modeli çıktığında bu model genellikle önceki modellerden faydalanılarak test edilir.
Bu test işlemine ne isim verilmektedir?
A) N-Anahtar Testi (N-Switch Testing)
B) Karar Testi (Decision Testing)
C) Çevik Test (Agile Testing)
D) Karşılaştırma Testi (Benchmark Test)
E) Negatif Test (Negative Testing)
Cevap : D) Karşılaştırma Testi (Benchmark Test)
Açıklama : Benchmark testi, bir sistemin performansını veya özelliklerini referans alınan başka bir sistemle (örneğin önceki modelle veya rakip ürünle) kıyaslamak için yapılır.
15. Test karşılaştırma işlemi esnasında test karşılaştırıcı aşağıdakilerden hangilerini karşılaştırır?
A) Beklenen sonuç gerçekleşen sonuç
B) Test girdisi – test çıktısı
C) Koşul-test kapanışı
D) Test koşulu – test ortamı
E) Test senaryosu – test prosedürü
Cevap : A) Beklenen sonuç gerçekleşen sonuç
Açıklama : Testin temel amacı, yazılımın beklenen davranışı (Expected Result) ile test sırasındaki gerçek davranışı (Actual Result) arasındaki farkı bulmaktır.
16. Öğrenci numaralarının girildiği bir alana girilen tüm değerlerin test edilmesi mümkün değildir.
Bunun sebebi aşağıdakilerden hangisidir?
A) Alana girilebilecek doğru ya da yanlış sonsuz adet değer bulunması
B) Alana girilen bir sayının öğrenci numarası olup olmamasının tespit edilememesi
C) Alana girilecek değerlerin çift ya da tek olabilmesi
D) Alana girilebilecek değerlerin farklı sayıda hane içerebilmesi
E) Farklı alanların da öğrenci numarası değerini içerebilmesi
Cevap : A) Alana girilebilecek doğru ya da yanlış sonsuz adet değer bulunması
Açıklama : Kapsamlı test (Exhaustive Testing) prensibine göre, tüm girdi kombinasyonlarını test etmek pratik olarak imkansızdır çünkü sonsuz sayıda olasılık vardır. Bu yüzden eşdeğerlik sınırları gibi teknikler kullanılır.
17. Aşağıdakilerin hangisi bir yazılımda yapılabilecek doğrudan ölçmelere örnek olarak verilemez?
A) Yazılımcının kod yazma performansı
B) Veri tabanındaki toplam tablo sayısı
C) Yazılım dokümantasyonunun sayfa sayısı
D) Yazılım testinin süresi
E) Yazılım dosyalarının toplam boyutu
Cevap : A) Yazılımcının kod yazma performansı
Açıklama : Dosya boyutu, sayfa sayısı, süre ve tablo sayısı gibi değerler doğrudan ölçülebilir (objektif) metriklerdir. Ancak “kod yazma performansı” soyut bir kavramdır ve genellikle satır sayısı (LOC) veya işlev puanı gibi dolaylı metriklerle tahmin edilmeye çalışılır, doğrudan bir ölçü birimi yoktur.
18. Aşağıdakilerden hangisi kurtarma testinin kontrolünü gerçekleştirdiği işlemlerden biri değildir?
A) Çöken bir modüldeki verilerin yeniden elde edilip edilemediği
B) Yazılımdaki herhangi bir sorunda bilgi kaybı oluşup oluşmadığı
C) Yazılımın dışarıdan saldırıya uğrayıp uğramadığı
D) Çöken bir modülün yeniden eski haline gelip gelmediği
E) Bir geri kurtarma işlemi yapıldığı takdirde zamanlamanın ne kadar olduğu
Cevap : C) Yazılımın dışarıdan saldırıya uğrayıp uğramadığı
Açıklama : Sistemin dış saldırılara karşı dayanıklılığı “Güvenlik Testi”nin (Security Testing) konusudur. Kurtarma testi (Recovery Testing), sistemin çökme sonrası veriyi ve işlevselliği geri getirip getiremediğine odaklanır.
19. Aşağıdaki hangi değerlere sahip olan bir yazılım riskinin RPN değeri 12 değildir?
A) Sistem Açısından Önemine Göre: Veri Kaybı / Müşteri Açısından Önemine Göre: Düzeltilmesi İyi Olacak / Gerçekleşme Olasılığına Göre: İhtimal Dahilinde Olmayan
B) Sistem Açısından Önemine Göre: İşlevsellik Kaybı / Müşteri Açısından Önemine Göre: Zorunlu / Gerçekleşme Olasılığına Göre: İhtimal Dahilinde Olmayan
C) Sistem Açısından Önemine Göre: Kozmetik Risk / Müşteri Açısından Önemine Göre: İsteğe Bağlı / Gerçekleşme Olasılığına Göre: Muhtemel
D) Sistem Açısından Önemine Göre: Giderilebilir İşlevsellik Kaybı / Müşteri Açısından Önemine Göre: Düzeltilmesi İyi Olacak / Gerçekleşme Olasılığına Göre: Muhtemel
E) Sistem Açısından Önemine Göre: Giderilebilir İşlevsellik Kaybı / Müşteri Açısından Önemine Göre: Zorunlu / Gerçekleşme Olasılığına Göre: Mümkün
Cevap : C) Sistem Açısından Önemine Göre: Kozmetik Risk / Müşteri Açısından Önemine Göre: İsteğe Bağlı / Gerçekleşme Olasılığına Göre: Muhtemel
Açıklama : Risk Öncelik Sayısı (RPN) hesaplamalarında genellikle 1-5 arası puanlar çarpılır. C şıkkındaki “Kozmetik (Düşük – 1)”, “İsteğe Bağlı (Düşük – 1)” ve “Muhtemel (Yüksek – 3 veya 4)” değerlerinin çarpımı 12 etmeyecektir (1x1x3=3 veya 1x1x4=4). Diğer şıklarda orta ve yüksek değerlerin çarpımı (Örn: 2x2x3=12 veya 3x4x1=12) 12 sonucunu verebilir.
20. Bazı yazılım testleri doğrudan yazılımın özelliklerini ve kriterlerini test etmeyi amaçlar. Aşağıdakilerden hangisi bu tip bir test değildir?
A) Sürdürülebilirlik Testi
B) Güvenlik Testi
C) Entegrasyon Testi
D) Kurtarılabilirlik Testi
E) Güvenilirlik Testi
Cevap : C) Entegrasyon Testi
Açıklama : Sürdürülebilirlik, Güvenlik, Kurtarılabilirlik ve Güvenilirlik; yazılımın kalite nitelikleridir (Quality Attributes). Entegrasyon Testi ise bir kalite niteliği değil, testin yapıldığı “seviye” veya “aşama”dır (Birim -> Entegrasyon -> Sistem).
|