Welcome to My Blog 👋

Java, Spring Framework, Microservices, Docker, Kubernetes, AWS and Others 🚀
Follow Me

Test - Mock Nedir?



  January 30, 2019    Labels:,,,,,,,,,,,,, 

Yazılım test edilmesi konusunda dikkat edilmesi gereken en büyük nokta bir test metodunda sadece tek bir senaryonun test edilmesi gerektiğidir. Bu konuda yaşanan en büyük sorun test edeceğimiz senaryonun bağımlılıklarıdır. Örneğin bizim test edeceğimiz senaryo bir dış servisi bağımlı olabilir veya bir veritabanı işlemine bağımlı olabilir. Bizim test senaryomuzu bu bağımlılıkları kullanmadan test etmemiz gerekir. İşte bu nokta mock nesneleri devreye giriyor. Mock nesneleri istenilen bir nesneyi birebir taklit eden nesnelerdir. Örneğin bir veritabanı işlemi yapan nesne yerine mock nesnesi kullanabiliriz ve o işlemden beklediğimiz cevabı mock nesnesi ile koda verebiliriz. Bu şekilde her test metodumuzda ilgilendiğimiz senaryoya odaklanabiliriz. Ayrıca gerçek işlemler çok uzun sürebilir. Örneğin bir veritabanı işlemi çok uzun sürebilir. Onlarca yüzlerce testimizin olduğunu düşünürsek yazılımı her test ettiğimizde ciddi süreler beklemek zorunda kalabiliriz. Mock nesneleri işlemleri gerçekten gerçekleştirmediği için çok hızlıdır. Bu şekilde yazılımımızı çok hızlı bir şekilde test edebiliriz.

  • Mock nesnesi istenilen gerçek bir nesneyi birebir taklit edebilir
  • Mock nesnesinin istediğimiz gibi davranmasını sağlayabiliriz


Java'da bir çok mock kütüphanesi vardır. Bunlardan bazıları;


  • Mockito
  • JMock
  • PowerMock

No comments:

Post a Comment