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
.NET Core Web API 36 Angular 31 JavaScript Temel 19 JavaScript Orta 18 JavaScript İleri 16 TypeScript Temel 14 TypeScript Orta 14 TypeScript İleri 12 Entity Framework Core 28 Dapper 16 Git & GitHub 29 Web Güvenliği (OWASP Top 10) 21 LLM Temelleri 20 C# Temelleri 20 C# ile Nesne Yönelimli Programlama 16 C# Koleksiyonlar ve Generics 11 LINQ 17 C# Asenkron Programlama 17 C# İleri Seviye 14 C# Sürümleri 6 Çözüm Desenleri 22 SOLID ve Design Principles 12 Clean Code 14 Design Patterns 25 UML ve Modeling 18 Mimariye Giriş 9 Clean, Onion ve Hexagonal Architecture 8 Vertical Slice Architecture 6 Domain-Driven Design 13 CQRS ve Event Sourcing 10 Messaging ve Event-Driven Architecture 9 Modular Monolith 3 Microservices 11 UI Mimari Pattern'leri 9 Architecture Decision'lar 7 System Design 15 Distributed Systems Temelleri 11 Background Job'lar ve Scheduled Job'lar 11 Message Queue'larla Çalışmak 14 .NET'te Logging 10 Caching 10 Real-time Uygulamalar 9 ASP.NET Core MVC ve Razor Pages 13 CI/CD Temelleri 8 GitHub Actions 16 Jenkins 12 Web Server'lar ve Hosting 12 Deployment Stratejileri 9 Kubernetes 19 Authentication ve Authorization 18 ASP.NET Core Güvenliği 8 Frontend Güvenliği 9 API Güvenliği (OWASP API Top 10) 11 .NET ile Yapay Zeka 14 RAG 13 AI Agent'ları ve MCP 14 Test Stratejisi 4 Unit Test 13 SDLC (Software Development Life Cycle) 6 Agile Mindset 6 Scrum 11 Kanban 7 Product Management'a Giriş 9 SEO Temelleri 7 Teknik SEO 12 GEO (Generative Engine Optimization) 7 Algoritmalar ve Data Structures 22 Debugging ve Problem Çözme 13
4 yazı bulundu #mocking
Unit Test'te "Unit" Ne Demek? Classical ve London School, İyi Testin Dört Özelliği
Test ve Kalite SERİ 01

Unit Test'te "Unit" Ne Demek? Classical ve London School, İyi Testin Dört Özelliği

Unit, bir method ya da class değil bir davranıştır; test double'ı yalnız sistem sınırında kullanan classical school, her collaborator'ı mock'layan London school'dan daha refactoring'e dayanıklı testler üretir. Solitary ve sociable test ayrımı, Khorikov'un iyi testin dört özelliği ve davranışı aynı bırakan bir değişikliğin mock'lu testi nasıl kırdığı gerçek çıktıyla.

8 Kas 2026 11 dk 3
Test Double'lar: Dummy, Stub, Spy, Mock ve Fake Arasındaki Fark
Test ve Kalite SERİ 06

Test Double'lar: Dummy, Stub, Spy, Mock ve Fake Arasındaki Fark

Bir test double'ın türünü kütüphanesi değil testteki rolü belirler: dummy yer doldurur, stub veri verir, spy ve mock dışarı giden çağrıyı doğrular, fake çalışan bir kestirmedir. Meszaros taksonomisi, Fowler'ın state ve behavior verification ayrımı, stub'a assert etmenin zararı, kaydı kopyalamayan bir fake'in eksik SaveAsync'i nasıl gizlediği ve FakeTimeProvider ile FakeLogger.

8 Kas 2026 10 dk 3
Mocking Kütüphaneleri Derinlemesine: NSubstitute, Moq ve FakeItEasy
Test ve Kalite SERİ 07

Mocking Kütüphaneleri Derinlemesine: NSubstitute, Moq ve FakeItEasy

NSubstitute, Moq ve FakeItEasy aynı Castle DynamicProxy motorunu kullanır; bu yüzden yalnız interface ve virtual member'ları taklit edebilir ve aralarındaki fark büyük ölçüde syntax ile hata mesajlarıdır. Aynı ödeme senaryoları üç kütüphaneyle: argument matching ve yakalama, ardışık dönüş, async exception, çağrı sayısı ve sırası, strict mod, NS1000 analyzer uyarısı ve Moq'un 2023 SponsorLink olayı.

8 Kas 2026 11 dk 5
Mock'u Ne Zaman Kullanmamalı: Over-mocking, Kırılgan Testler ve "Sahibi Olmadığını Mock'lama"
Test ve Kalite SERİ 08

Mock'u Ne Zaman Kullanmamalı: Over-mocking, Kırılgan Testler ve "Sahibi Olmadığını Mock'lama"

Mock yalnız sistem sınırında, dışarıdan gözlenebilen unmanaged bağımlılıklar için kullanılır; domain object'leri ve uygulamanın kendi veritabanı mock'lanmaz. Mock'lanmış bir döviz kuru adapter'ı testleri yeşil tutarken production'da 100 EUR'yu 0 TRY gösterdi; HttpMessageHandler stub'ı hatayı ilk koşuda yakaladı. Output, state ve communication test stilleri ve managed/unmanaged ayrımı.

8 Kas 2026 9 dk 4
Blog Haritası