---
title: Keşifsel Test
slug: kesifsel-test-18c19
url: /detay/kesifsel-test-18c19
type: article
language: Türkçe
entity:
  primary: Keşifsel Test
  type: article
  disambiguation: Keşifsel test: Yazılımı keşfederek test etme yöntemi.  Öğrenme, tasarım ve yürütme eş zamanlıdır.
  categories:
    - name: Bilişim Ve İletişim Teknolojileri
      slug: bilisim-ve-iletisim-teknolojileri
      url: /kategori/bilisim-ve-iletisim-teknolojileri
    - name: Yazılım Ve Yapay Zekâ
      slug: yazilim-ve-yapay-zeka
      url: /kategori/yazilim-ve-yapay-zeka
  tags:
    - Ad-hoc Testing
    - Keşifsel Test
    - CI/CD
    - Yazılım testi
    - agile
author: Beyza Nur Türkü
created_at: 2025-07-06T18:01:42.161249+03:00
updated_at: 2025-07-11T10:16:42.985799+03:00
image: https://cdn.t3pedia.org/media/uploads/2025/07/10/YWqYx3bAx73YpTXwLEYxlpo7hTv7gPQA.png
---

# Keşifsel Test

<!-- CONTEXT: KURE Information Cards for "Keşifsel Test" -->

## KURE Information Cards

### KURE Information Card: Keşifsel Test

![20250711_0212_Keşifsel Test Yazılımı_simple_compose_01jzv9p422f5atz4gtbrqeyn3f.png](https://cdn.t3pedia.org/media/uploads/2025/07/10/2HZiV9rZw69cCntabPfQ3P2NBUzcHi4o.png)
*Yapay zeka ile oluşturulmuştur.*

| Field | Value |
|-------|-------|
| Süreç Aşamaları | Analiz & Raporlama,Test Yürütme,Test Tasarımı,Öğrenme |
| Temel İlkeler | Tamamen scripted test ile freestyle test arasında süreklilik (continuum) oluşturur.,Süreç esnek ve bağlama duyarlıdır,Öğrenme tasarım ve yürütme aynı anda ve döngüsel yürütülür.,Testçi pasif uygulayıcı değil aktif tasarımcıdır. |
| Tanım | Keşifsel Test, yazılım testinde öğrenme, test tasarımı ve test yürütmenin eş zamanlı gerçekleştirildiği, dinamik ve esnek bir yaklaşımdır. |
| Tür(ler) | Freestyle,Çiftli/Grup Tabanlı,Zaman Kutulu,Charter Bazlı,Senaryo Tabanlı,Strateji Tabanlı |

<!-- CONTEXT: Article Content for "Keşifsel Test" -->

## Article Content

**Keşifsel test,** [yazılım testinde](/tr/detay/yazilim-test-d9267/llms.txt) hem bir yöntem hem de bir felsefe olarak tanımlanabilir. Keşifsel test, öğrenme, test tasarımı ve test yürütmenin eş zamanlı olarak yürütüldüğü bir süreçtir. Başka bir ifadeyle testçi, test sürecinin pasif bir uygulayıcısı değil, sürecin aktif bir tasarımcısı ve geliştiricisidir.

Bu yaklaşımda testçi, testleri önceden tamamen tanımlanmış senaryolardan ziyade, yazılımı keşfederken elde ettiği bilgiye dayalı olarak tasarlar. Böylece test süreci statik değil, dinamik bir akışa sahiptir. Bu dinamik yapı, betimlenmiş (scripted) testlerle keşifsel test arasında süreklilik (continuum) olduğunu da gösterir: Tamamen önceden belirlenmiş testler bir uçta, tamamen doğaçlama (freestyle) keşifsel test diğer uçta yer alır.

### **Tarihsel Arka Plan**

Yazılım geliştirme pratiğinin giderek karmaşıklaştığı 1980’li yıllarda, test süreçleri belirli planlara, belgelenmiş test senaryolarına ve raporlara dayandırılarak daha ölçülebilir ve tekrarlanabilir hale getirilmeye çalışılmıştır. Bu dönemde hâkim olan yaklaşım, testlerin önceden ayrıntılı şekilde planlanması ve bu planların harfiyen uygulanması üzerine kurulmuştur. Ancak yazılım geliştirme, özellikle dinamik kullanıcı ihtiyaçları ve hızlı teknolojik dönüşümler sebebiyle, her zaman öngörülebilir bir düzende ilerlememektedir.

Bu bağlamda, plansız fakat esnek deneme süreçleri anlamına gelen *ad-hoc testing* kavramı, test pratiğinde kendine bir yer edinmiştir. *Ad-hoc testing*, temelinde rastlantısal test denemelerini ifade ederken, sistematik bir öğrenme ve geri bildirim mekanizmasından yoksun olması nedeniyle çoğu zaman düşük değerli bir yöntem olarak görülmüştür.

Keşifsel test ([Exploratory Testing](/tr/detay/exploratory-testing-1fd80/llms.txt)) kavramı, bu dağınık ve plansız yapıya eleştirel bir yaklaşım getirmiştir. Terim olarak “exploratory testing” ifadesi, yazılım test uzmanı Cem Kaner tarafından, *Testing Computer Software*[^1]  adlı klasikleşmiş eserinde sistematik bir biçimde tanımlanarak literatüre kazandırılmıştır. Kaner’in yaklaşımına göre keşifsel test, yalnızca rastlantısal bir deneme süreci değil; aynı zamanda öğrenme, test tasarımı ve test yürütmenin eşzamanlı biçimde kurgulandığı bir düşünsel faaliyettir.

1990’lı yıllarda yazılım endüstrisinin hızlı dönüşümü, kişisel bilgisayarların yaygınlaşması ve kısa geliştirme döngülerinin baskın hale gelmesi, keşifsel testin önemini artırmıştır. Bu dönemde geliştirilen *bug bash* gibi uygulamalar, bir grup testçinin kısa süreli oturumlarda sistematik olmayan testler yürüttüğü yöntemler olarak dikkat çekmiş; keşifsel test bu kültürün akademik zeminini oluşturmuştur.

Öte yandan *context-driven school* yaklaşımı, test faaliyetlerinin mutlak kurallarla değil, bağlamın dinamiklerine uygun biçimde yürütülmesi gerektiğini savunarak keşifsel testi yalnızca bir teknik olmaktan çıkarıp bir düşünce biçimi haline getirmiştir. Bu yönüyle keşifsel test, geleneksel betimlenmiş testlere alternatif değil, tamamlayıcı bir paradigma olarak yazılım testi disiplininde kalıcı yerini almıştır.

### **Keşifsel Testin Temel İlkeleri ve Süreç Aşamaları**

Keşifsel testin temel felsefesi, [yazılım testinin](/tr/detay/yazilim-testi-kalite-guvencesinin-temel-tasi-47981/llms.txt) katı plan ve senaryolardan bağımsız olarak, sürekli öğrenmeye ve geri beslemeye açık bir biçimde yürütülmesi anlayışına dayanır. Keşifsel test, dört temel aşamadan oluşur:

1. **Öğrenme (Discovery):&#32;**Keşifsel testin başlangıç aşaması, yazılımın mevcut durumunu anlamaya yöneliktir. Testçi, hem önceki bilgi birikimini hem de ürünün anlık davranışlarını gözlemleyerek potansiyel risk alanlarını tespit eder. Bu aşamada, ürünün kullanıcı arayüzü, işlevselliği, mevcut hatalar ve kullanıcı davranışları gibi unsurlar kritik rol oynar.
2. **Test Tasarımı:&#32;**Öğrenme süreciyle elde edilen bilgiler, hemen test tasarımına dönüştürülür. Bu noktada geleneksel, ayrıntılı test senaryoları yerine, esnek hedefler belirlenir. Sıkça kullanılan *charter* yapıları, test oturumunun amacını, kapsamını ve sınırlarını tanımlar.
3. **Test Yürütme:&#32;**Tasarlanan testler, anlık olarak yürütülür. Testçi, test yürütme sırasında yeni anomaliler veya olağandışı davranışlarla karşılaştığında, derhal yeni test fikirleri geliştirir. Bu, keşifsel testin dinamik karakterini besleyen temel mekanizmadır.
4. **Analiz ve Raporlama:&#32;**Test yürütme sonucunda elde edilen bulgular analiz edilir. Hatalar raporlanır, olası eksiklikler belirlenir ve süreç gerektiğinde tekrar başa sarılır. Böylece öğrenme, tasarım ve yürütme, sürekli bir geri besleme döngüsü oluşturur.

Bu döngüsel yapı, keşifsel testi tek seferlik bir etkinlik değil, ürün yaşam döngüsüne paralel ilerleyen sürekli bir öğrenme ve kalite kontrol mekanizması haline getirir.

### **Keşifsel Test Türleri**

Keşifsel test, farklı senaryo ve ihtiyaçlara göre çeşitli biçimlerde uygulanabilir. Bu türler, test sürecinin amaçlarına, kapsamına ve uygulanış biçimine göre değişiklik gösterir:

- **Freestyle Keşifsel Test:&#32;**En serbest biçimidir. Testçi, herhangi bir ön planlama olmadan, tamamen kendi gözlemleri ve deneyimleri doğrultusunda yazılımı keşfeder. Bu yaklaşım, genelde yeni bir ürüne aşinalık kazanmak veya diğer test mühendislerinin çalışmalarını gözden geçirmek için tercih edilir.
- **Strateji Tabanlı Keşifsel Test:&#32;**Deneyimli test mühendislerinin belirli test teknikleri (karar tablosu testi, sınır değer analizi, eşdeğer bölgeleme, hata tahmini gibi) ile yürüttüğü, sistematik bir keşif sürecidir. Strateji, testçiye kapsamlı ve yapılandırılmış bir çerçeve sağlar.
- **Senaryo Tabanlı Keşifsel Test:&#32;**Belirli kullanıcı senaryolarına dayanarak yürütülür. Testçi, gerçekçi kullanım yollarını izleyerek sistemin uçtan uca nasıl davrandığını analiz eder. Bu, karmaşık iş akışlarının denetlenmesinde etkilidir.
- **Charter Bazlı Keşifsel Test:&#32;**Test oturumu, net bir *charter* ile tanımlanır. Charter, testin hedeflerini, sınırlarını ve odak noktalarını belirler. Bu yapı, özellikle Session-Based Testing uygulamalarında standarttır.
- **Zaman Kutulu (Time-Boxed) Keşifsel Test:&#32;**Belirli bir süre sınırına sahiptir. Amaç, tanımlı bir zaman dilimi içinde mümkün olan en fazla sayıda kritik hatayı keşfetmektir. Bu yöntem, hız ve etkililik gerektiren durumlarda kullanılır.
- **Çiftli veya Grup Tabanlı Keşifsel Test:&#32;**Birden fazla testçinin aynı oturumda iş birliği yaparak yürüttüğü yöntemdir. Eş zamanlı gözlemler, farklı bakış açılarını bir araya getirir ve hata keşfetme kapasitesini artırır.

Bu türler, farklı bağlamlarda birbiriyle kombin edilerek de uygulanabilir. Örneğin bir oturum hem charter bazlı hem de zaman kutulu olarak tasarlanabilir.

### **Session-Based Testing: Yapılandırılmış Keşif**

Keşifsel testin zayıf yönlerinden biri, sürecin belgelendirilebilirliğinin ve izlenebilirliğinin zayıf olabilmesidir. Bu nedenle James Bach tarafından geliştirilen Session-Based Test Management (SBTM) modeli, keşifsel testin esnekliğini korurken, kontrol edilebilirliğini artırmayı hedefler.

SBTM yaklaşımında test süreci, belirli oturumlara (*session*) bölünür. Her oturum:

- Açıkça tanımlanmış bir charter içerir.
- Zaman kutusu (örneğin 90 dakikalık bloklar) ile sınırlandırılır.
- Testçiler, oturum süresince elde ettikleri bulguları sistematik olarak kaydeder.
- Oturum sonunda, test yöneticisi veya takım lideri, testçiden ayrıntılı geri bildirim alır.

Bu yapı, keşifsel testin doğasında yer alan *freestyle* akışı, planlanabilir ve raporlanabilir bir forma dönüştürür. SBTM, özellikle büyük ekiplerde veya yüksek riskli projelerde test faaliyetlerinin şeffaf, izlenebilir ve değerlendirilebilir olmasını sağlar.

Örneğin charter bazlı bir oturumda, testçiye şu görev verilebilir: *“Kullanıcı girişi işlevini farklı cihazlarda deneyimle, karakter limiti ve parola sıfırlama senaryolarını denetle.”* Bu charter, testçiye yön verir fakat adımları katı biçimde tanımlamaz. Bu sayede testçi, karşılaştığı yeni durumlara göre test akışını anlık olarak şekillendirir.

SBTM, keşifsel testin hem yaratıcı hem de hesap verebilir olmasına imkân tanıyarak, çağdaş yazılım geliştirme süreçlerinde ([Agile](/tr/detay/agile-project-management-0d24c/llms.txt), [DevOps](/tr/detay/devops-c817e/llms.txt) vb.) önemli bir köprü görevi görür.

### **Agile, DevOps ve CI/CD Bağlamında Keşifsel Test**

Modern yazılım geliştirme paradigmaları, Agile, DevOps ve Sürekli Entegrasyon/Sürekli Teslimat ([CI/CD](/tr/detay/surekli-entegrasyon-testi-continuous-integration-t/llms.txt)) süreçlerinin merkezinde yer alan hız, esneklik ve geri bildirim odaklılık ilkelerini öne çıkarır. Bu bağlamda keşifsel test, geleneksel betimlenmiş testlerin tamamlayıcısı niteliğinde kritik bir rol oynar.

**Agile geliştirme** döngülerinde, kısa sprintler ve sık değişiklikler, önceden tanımlı test senaryolarının her zaman yeterli olmasını engeller. Gereksinimler ve özellikler hızlıca değişebildiğinden, testçilerin mevcut planları esneterek yeni risk alanlarını hızla keşfetmesi gerekir. Keşifsel test, bu ihtiyaca doğrudan yanıt verir. Testçi, sprint içinde ortaya çıkan yeni işlevleri, senaryo dışı akışları ya da öngörülmeyen kombinasyonları deneyerek kritik kusurları belirleyebilir. Bu esnek yapı, otomasyonun kapsamı dışında kalan karmaşık kullanıcı davranışlarının da test edilmesini sağlar.

**DevOps** kültürü ise geliştirme ve operasyon ekipleri arasında kesintisiz entegrasyon ve teslimatı destekler. Bu ortamda keşifsel test, otomasyon odaklı regresyon testlerinin tamamlayıcısı olarak özellikle son aşamalarda devreye girer. Sürekli entegrasyon akışında, otomatik testler yazılımın bilinen yönlerini doğrularken; keşifsel test, beklenmeyen davranışları, sistem entegrasyon hatalarını veya kullanıcı deneyimine dair detayları ortaya çıkarır.

**CI/CD** (Continuous Integration/Continuous Delivery) bağlamında keşifsel testin avantajı, sürüm sıklığı yüksek projelerde dahi testçilerin ürünü anlık olarak keşfederek geri bildirim sağlayabilmesidir. Böylece, klasik betimlenmiş testlerin gözden kaçırabileceği uç senaryolar, veri kombinasyonları veya gerçek kullanıcı davranışları test edilebilir.

### **Ad-Hoc Testing ile Farkları**

Keşifsel test, uygulamada sık sık *ad-hoc testing* kavramıyla karıştırılmaktadır. Ancak bu iki yaklaşım, kaynaklarda da belirtildiği gibi temel ilke, süreç yönetimi ve çıktılar bakımından birbirinden ayrılır.

*Ad-hoc testing*, Latince kökeninden hareketle “bu işe özel” anlamına gelir ve çoğunlukla rastlantısal, plansız test faaliyetlerini ifade eder. Bu yöntemde testçi belirli bir plana ya da metodolojiye bağlı kalmaksızın yalnızca aklına gelen testleri uygular. Çoğu zaman bir defalık yürütülür, öğrenme amacı veya sistematik bilgi üretimi içermez.

Oysa keşifsel test, rastlantısallığın ötesinde, sistematik bir öğrenme, gözlem ve geri bildirim süreci barındırır. Burada testçi, her yeni bulguyu bir sonraki adımın tasarımında kullanarak test derinliğini ve kapsamını geliştirir. [Ad-hoc testing](/tr/detay/kurgusuz-test-ad-hoc-testing-2c9b2/llms.txt), genellikle hızlıca uygulanır ancak testlerin yinelenebilirliği zordur ve çoğu zaman kayıt tutulmaz. Keşifsel testte ise oturumlar *charter* belgeleriyle yönlendirilir, notlar ve raporlar oluşturulur. Bu, hem izlenebilirlik hem de tekrarlanabilirlik açısından kritik bir farktır.

| Özellik | Ad-Hoc Testing | Keşifsel Test |
| Amaç | Duruma özel,

rastlantısal | Sistematik öğrenme

ve keşif |
| Planlama | Yok denecek

kadar az | Charter ve

yapılandırılmış oturumlar |
| İzlenebilirlik | Genelde

yok | Notlar, raporlar

ve geri bildirim |
| Tekrarlanabilirlik | Zayıf | Charter ve oturum

kaydı ile mümkün |
| Öğrenme

Döngüsü | Yok veya

kısıtlı | Sürekli ve

dinamik |

Bu bağlamda keşifsel test, ad-hoc testin aksine rastgele bir etkinlik değil, planlı bir keşif stratejisidir.

### **Öne Çıkan Uygulamalar**

Kaynaklara göre keşifsel testin etkinliğini artırmak için bazı temel uygulamalar öne çıkar:

- **Açık Charter Kullanımı:** Her oturuma yönelik açık, kısa ve net bir misyon (charter) belirlenmelidir. Charter, testçinin neyi test edeceğini, neyi keşfetmeye odaklanacağını tanımlar.
- **Zaman Kutulu Oturumlar:** Oturumlar, belirli zaman dilimleriyle sınırlandırılarak testçilerin odağını koruması sağlanır. Bu yaklaşım, verimsiz dağınık testlerin önüne geçer.
- **Not Tutma ve Kayıt:** Süreç boyunca ekran görüntüsü alma, sesli notlar veya ekran kayıtları gibi pasif araçlar kullanarak izlenebilirlik sağlanmalıdır. Bu, test sonuçlarının doğruluğunu ve tekrar edilebilirliğini güçlendirir.
- **Geri Bildirim Döngüsü:** Test oturumları sonunda elde edilen bulgular düzenli raporlanmalı, test lideri veya yönetici ile paylaşılmalı ve oturumlar bu geri bildirimlere göre optimize edilmelidir.
- **Grup Çalışması:** Çiftli veya grup test oturumları, farklı bakış açılarını bir araya getirerek hata bulma oranını artırır.
- **Araçlardan Yararlanmak:** Test yönetim araçlarıyla keşifsel test oturumları kaydedilmeli, gerekirse bulgular betimlenmiş testlere dönüştürülerek tekrar kullanılabilir hale getirilmelidir.

<!-- CONTEXT: Academic Sources and References for "Keşifsel Test" -->

## Academic Sources and References

1. Bach, James. "Exploratory testing explained". 2003. Erişim Adresi.
2. Geeksforgeeks. "Exploratory Testing". 2025. Erişim Tarihi: 6 Temmuz 2025. Erişim Adresi.
3. Itkonen, Juha, and Kristian Rautiainen. "Exploratory testing: a multiple case study." In 2005 International Symposium on Empirical Software Engineering, 2005., pp. 10-pp. IEEE, 2005. Erişim Adresi.
4. Rice, W. Randall. "What is Exploratory Testig? (A Simple Guide)". 2021. PractiTest. Erişim Tarihi: 6 Temmuz 2025. Erişim Adresi.
5. Suranto, Beni. "Exploratory software testing in agile project." In 2015 International Conference on Computer, Communications, and Control Technology (I4CT), pp. 280-283. IEEE, 2015. Erişim Adresi.
6. Test Academy. "Exploratory Testing". 2024. Erişim Tarihi: 6 Temmuz 2025. Erişim Adresi.

<!-- CONTEXT: Citations for "Keşifsel Test" -->

## Citations

[^1]: Kaner, Cem, Jack Falk, and Hung Q. Nguyen. Testing computer software. John Wiley & Sons, 1999. Erişim Adresi.