Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
80 yazı bulundu
Playwright ile API Testi ve Playwright Test Agents: APIRequestContext, Hibrit Senaryolar ve Planner, Generator, Healer'ı Güvenle Kullanmak
Test ve Kalite SERİ 13

Playwright ile API Testi ve Playwright Test Agents: APIRequestContext, Hibrit Senaryolar ve Planner, Generator, Healer'ı Güvenle Kullanmak

storageState'i bir API context'ine vermek token tabanlı bir uygulamada oturumu taşımaz: Bookstore'da Ada'nın kendi siparişi 401 döndü. APIRequestContext ile tarayıcısız API testlerini, toBeOK'u, UI ile API'yi birleştiren hibrit senaryoyu, API testinin integration testlerine göre yerini ve Playwright Test Agents'ın init-agents kurulumunu, seed testi ve planner, generator ile healer'ın ürettiklerini review etmeyi anlatıyoruz.

15 Kas 2026 11 dk 9
Playwright Test Runner Yapılandırması: playwright.config, Project'ler, Fixture Yazmak (test.extend), test.step, Tag/Annotation ve Reporter'lar
Test ve Kalite SERİ 12

Playwright Test Runner Yapılandırması: playwright.config, Project'ler, Fixture Yazmak (test.extend), test.step, Tag/Annotation ve Reporter'lar

Angular uygulamasında yakalanmamış hataları pageerror ile yakalayan bir auto fixture hiçbir şey görmez, çünkü Angular'ın global error listener'ları hatayı console.error'a çevirir. Bookstore üzerinde playwright.config'i, timeout katmanlarını, project'leri, ortam değişkenli webServer'ı, test ve worker scope'lu fixture yazmayı, test.step'i, tag ve annotation'ları, blob raporlarıyla shard birleştirmeyi ve .NET'te PageTest'i gerçek koşularla anlatıyoruz.

15 Kas 2026 12 dk 9
Playwright Assertion Rehberi: Web-first expect Matcher'ları, Soft Assertion, expect.poll, toPass, Snapshot ve Custom Matcher
Test ve Kalite SERİ 11

Playwright Assertion Rehberi: Web-first expect Matcher'ları, Soft Assertion, expect.poll, toPass, Snapshot ve Custom Matcher

Değeri textContent() ile alıp toBe ile karşılaştıran bir assertion tekrar denemez; Bookstore'da kupon sonrası toplamı eski değerle okuyup kalıyor. Web-first matcher kataloğunu, toHaveText ile toContainText farkını, expect.soft, expect.poll ve toPass'i, toMatchAriaSnapshot'ı ve para biçimini tek yerde tutan custom matcher'ı gerçek koşularla anlatıyoruz; .NET karşılıkları tabloda.

15 Kas 2026 10 dk 7
Playwright Locator ve Action Rehberi: getByRole'den filter/and/or'a, Frame, Shadow DOM, Upload, Download ve Dialog
Test ve Kalite SERİ 10

Playwright Locator ve Action Rehberi: getByRole'den filter/and/or'a, Frame, Shadow DOM, Upload, Download ve Dialog

Strict mode hatasını first() ile susturmak sorunu çözmez: Bookstore'da stokta olmayan baskıyı seçip timeout'a düşen bir test bunu gösteriyor. getByRole seçeneklerini, filter, and ve or ile daraltmayı, setInputFiles, selectOption ve check gibi action'ları, shadow DOM, iframe, dialog ve download'u kurumsal sipariş ekranı üzerinde gerçek koşularla anlatıyoruz; .NET karşılıkları tabloda.

15 Kas 2026 11 dk 10
Tekniği Seçmek ve Birleştirmek: Requirement'tan Test Listesine, Acceptance Criteria ile Hizalamak ve AI ile Test Case Üretmenin Sınırları
Test ve Kalite SERİ 08

Tekniği Seçmek ve Birleştirmek: Requirement'tan Test Listesine, Acceptance Criteria ile Hizalamak ve AI ile Test Case Üretmenin Sınırları

Test tekniğini requirement'ın şekli seçer: aralıklar için equivalence partitioning ve boundary value analysis, koşul kombinasyonları için decision table, geçmişe bağlı sonuç için state transition; teknikler birleştirilip tekrarları atılınca tek bir test listesi kalır. Bookstore'un kurumsal kısmi sevkiyat story'sinde beş teknik 27 condition üretti, liste 19'a indi ve üç tekniğin buluştuğu satır sevkiyat hatasını yakaladı. AI'dan test case istemek için prompt ve review checklist'i.

15 Kas 2026 15 dk 13
White-box ve Experience-based Teknikler: Branch Coverage'ı Test Tasarımı için Kullanmak, Error Guessing, Checklist ve Exploratory Testing
Test ve Kalite SERİ 07

White-box ve Experience-based Teknikler: Branch Coverage'ı Test Tasarımı için Kullanmak, Error Guessing, Checklist ve Exploratory Testing

Branch coverage raporu test tasarımında hedef değil, hiç çalışmamış dalı gösterip yeni test case'ler çıkaran bir araçtır; ama yazılmamış kodu göremez, onu error guessing, checklist ve exploratory testing bulur. Bookstore'un kupon kodunda rapor story'de olmayan tavan dalındaki hatayı, error guessing Türkçe I hatasını, bir saatlik exploratory session de çift tıklamayla açılan iki siparişi ve negatif tutarlı siparişi buldu; hepsi regression testine döndü.

15 Kas 2026 14 dk 12
Kombinatoryal Test: Pairwise, Orthogonal Array ve PICT ile Konfigürasyon Patlamasını Yönetmek
Test ve Kalite SERİ 06

Kombinatoryal Test: Pairwise, Orthogonal Array ve PICT ile Konfigürasyon Patlamasını Yönetmek

Pairwise testing, her iki parametrenin her değer çiftini en az bir testte yan yana getirerek tam kombinasyonun maliyetini düşürür; hataların çoğunun bir ya da iki parametrenin etkileşiminden çıktığı varsayımına dayanır. Bookstore'un checkout'unda each choice'un üç testi eksik İngilizce mağazadan teslim template'ini kaçırdı; PICT'in constraint'li modelden ürettiği 11 satır yakaladı. t-wise, orthogonal array, seed, oracle ve Playwright project'leri.

15 Kas 2026 12 dk 11
State Transition Testing: Sipariş State Machine'inden Test Case Üretmek, Geçersiz Geçişler ve 0-switch/1-switch Coverage
Test ve Kalite SERİ 05

State Transition Testing: Sipariş State Machine'inden Test Case Üretmek, Geçersiz Geçişler ve 0-switch/1-switch Coverage

State transition testing, sistemin davranışı geçmişine bağlıysa test case'leri state diagram'ından ve state table'dan çıkarır: geçerli transition'lar (0-switch), state table'ın boş hücrelerindeki geçersiz transition'lar ve art arda iki transition'dan oluşan çiftler (1-switch). Bookstore'un siparişinde üç yeşil test, kargodaki siparişin iptal edilebilmesini ve beklemeden dönen siparişin kargoya verilememesini kaçırdı; 40 geçersiz geçiş ve 10 transition çifti ikisini de yakaladı.

15 Kas 2026 14 dk 11
Decision Table Testing: Kural Kombinasyonları, Tabloyu Sadeleştirmek ve Kural Tablosundan Teste
Test ve Kalite SERİ 04

Decision Table Testing: Kural Kombinasyonları, Tabloyu Sadeleştirmek ve Kural Tablosundan Teste

Decision table testing, sonucu birden fazla koşulun kombinasyonuna bağlı kurallar için bütün kombinasyonları tabloya döker, sadeleştirir ve her sütunu bir teste çevirir. Bookstore'un kargo ücretinde cümle başına yazılan dört yeşil test, Plus üyesinin yurt dışı kargosundaki çelişkiyi ve yedi tanımsız kupon durumunu kaçırdı; tablo hepsini test yazmadan gösterdi. Limited ve extended-entry tablo, "–" ve N/A, iade onayı ve testi koddaki tablodan kopyalamamak.

15 Kas 2026 14 dk 10
Boundary Value Analysis: 2-Value ve 3-Value BVA, Off-by-One, Tarih, Para ve Uzunluk Sınırları
Test ve Kalite SERİ 03

Boundary Value Analysis: 2-Value ve 3-Value BVA, Off-by-One, Tarih, Para ve Uzunluk Sınırları

Boundary value analysis, test değerini partition'ın ortasından değil sınırından ve komşusundan seçer; komşunun ne olduğunu tipin ve kuralın hassasiyeti belirler. Bookstore'da partition başına bir test yeşilken 500,00 TL ücretsiz kargo, UTC'ye kaymış Kasım kampanyası ve 23:59:59'da kapanan son saniye ancak sınır testleriyle yakalandı. 2-value ve 3-value BVA, FakeTimeProvider ile tarih sınırı, ISBN uzunluğu ve sepet boyutu.

15 Kas 2026 13 dk 10
Equivalence Partitioning: Girdiyi Sınıflara Bölmek, Geçerli ve Geçersiz Partition'lar, Coverage ve xUnit Theory'ye Dökmek
Test ve Kalite SERİ 02

Equivalence Partitioning: Girdiyi Sınıflara Bölmek, Geçerli ve Geçersiz Partition'lar, Coverage ve xUnit Theory'ye Dökmek

Equivalence partitioning, girdiyi kodun aynı davranması beklenen partition'lara böler ve her partition'ı bir testle kapsar; geçersiz partition'lar ise her biri ayrı testte denenir. Bookstore'un sipariş validator'ında iki geçersiz değeri birleştiren testler eksik misafir ödeme kuralını sakladı; partition tablosundan türetilen dokuz test hem onu hem tanımsız enum değeri hatasını yakaladı. Each Choice coverage, çıktı partition'ları ve TheoryData.

15 Kas 2026 12 dk 10
Test Case Tasarımı Nedir? Test Koşulu, Test Case, Coverage Hedefi ve Teknik Aileleri
Test ve Kalite SERİ 01

Test Case Tasarımı Nedir? Test Koşulu, Test Case, Coverage Hedefi ve Teknik Aileleri

Test case tasarımı, test case'leri sezgiyle değil requirement'tan türetmektir: test basis'ten test condition'a, coverage item'a, test case'e ve test verisine giden bir zincir. Bookstore'un kurumsal sipariş kuralında aynı senaryoyu deneyen beş yeşil test iki hatayı kaçırdı; kuraldan türetilen sekiz test ikisini de yakaladı. ISTQB CTFL v4.0.1'e göre black-box, white-box, experience-based teknikler ve collaboration-based yaklaşımlar.

15 Kas 2026 13 dk 8
Blog Haritası