Saturday, June 21, 2014

Yazılım Test Mühendisliği - İş Görüşmesinde Sorulan Sorular

Bu konuda oldukça sık e-posta alıyorum, o yüzden bir blog mesajı yazmayı uygun gördüm. Sorular genelde yeni mezun ve/veya test mühendisliği alanında çalışmamış ama yaptığı ilan başvurusu sonrasında iş görüşmesine çağrılmış kişilerden geliyor.

Genelde soru içeriği "iş görüşmesine çağırdılar, hangi soruları sorarlar, ne cevap vermeliyim" şeklinde oluyor.

Herhangi bir iş görüşmesinde sorulabilecek soruların sınırı yoktur, hepsini burada yazmaya imkân yok. Özel olarak, yazılım test mühendisliği iş görüşmelerinde sorulan / sorulabilecek soruları aşağıda listeledim, cevaplarını araştırmayı ise okuyucuya bıraktım :)

İş görüşmelerinde (özellikle yeni mezunlar ile yapılanda) sorulan her soruya doğru cevap vermeniz beklenmez (en azından ben beklemem), fakat daha ziyade bu sorulara karşı nasıl bir yaklaşım geliştirdiğiniz, nasıl çözüm ürettiğiniz ile ilgilenilir.

Sorular:

  • Yazılım Testi sizce nedir?
  • Yazılımı neden test edelim, zaten yazılım geliştiriciler dikkatli bir şekilde kod yazıyorlar ve birim test yapıyorlar?
  • Sizce tek tip yazılım testi mi vardır, yoksa birden fazla test türü olabilir mi?
  • Bildiğiniz test türleri nedir? Bunlardan hangilerini icra ettiniz?
  • Hata (Defect) ile Kusur (Deficiency) arasındaki fark nedir?
  • Sorun, Arıza, Kusur, Hata, Bozukluk tanımları sizce aynı şey midir? Ne gibi farkları olabilir?
  • Bir hatanın önem derecesi ile öncelik derecesi arasındaki fark nedir?
  • Örneğin bir yazılımda hata tespit edildi ve yazılım geliştirici tarafından hatanın düzeltildiği söylendi. Sonrasında ne yaparsınız?
  • Daha önce hangi test araçlarını kullandınız?
  • Özgeçmişinizde HP Load Runner'ı bildiğiniz yazıyor, işte size bilgisayar ve Load Runner programı, şirketimizin web sitesine hemen bir yük testi hazırlayabilir misiniz?
  • Bir hesap makinesini nasıl test edersiniz?
  • Peki bir meşrubat şişesini nasıl test edersiniz?
  • TürkSat 2A uydusunun yazılım test sorumlusu olsaydınız, ne tip testler yapardınız?
  • Yazılım ekibi, geliştirdikleri uygulamanın 16 milyon adet rengi desteklediğini iddia etmektedir. Uygulamanın kullanıcısı olan grafik tasarımcılar için 16 milyon rengin desteklenmesi önemlidir. Uygulamanın gerçekten bu kadar rengi desteklediğini nasıl doğrularsınız?
  • Bir yazılım mühendisinin geliştirdiği uygulamadaki hataları test mühendisi bulur, peki test mühendisinin olası hatalarını kim bulur?
  • Test edilecek uygulamanın bir sayfasında bir metin alanı ve bir sayı alanı vardır. Bu iki alanın her birini nasıl / hangi girdileri kullanarak test edersiniz?
  • Test etmekte olduğunuz uygulama ile ilgili açılmış 100 adet hata henüz çözülmemiş durumdadır. Ancak proje yöneticisi uygulamanın müşteri ortamına kurulmasında ısrar etmektedir. Sizce nasıl bir yol izlenmelidir?
  • 20 adet alt modülden oluşan bir sistem olduğu düşünelim. Sistem, pek çok sensörden bilgi toplamakta, topladığı bu bilgileri bu 20 adet modül içerisinde çeşitli işlemlerden geçirmekte ve işlemler sonunda tek bir karar vermektedir (ve bu kararın ölümcül sonuçlarını olduğunu düşünelim). Sistemin doğru karar verdiğini test etmek için nasıl bir yol izlersiniz?
  • Hangi yazılım test standartları hakkında bilgi sahibisiniz?
  • Hangi yazılım geliştirme yaşam döngüleri hakkında bilgi sahibisiniz?
  • Bir yazılım geliştirilirken baştan sona hangi aşamalardan geçilir?
  • Yazılım ile sistem arasında sizce nasıl bir fark vardır?
  • Gereksinim ne demektir? Neden ihtiyaç vardır?
  • Gereksinimi olmayan bir uygulama olabilir mi? Uygulamaların gereksinimlerinin olmamasının ne gibi sakıncaları olur?
  • Bir "Test Durumu" (Test Case) ile "Kullanım Durumu" (Use Case) arasındaki fark / ilişki nedir?
  • Gereksinim - Tanımlama (Specification) - Kullanım Durumu (Use Case) - Test Durumu (Test Case) arasında nasıl bir ilişki vardır?
  • Fonksiyonel bir gereksinim ile Fonksiyonel Olmayan bir gereksinim arasında ne gibi farklar vardır?
  • 10.000 adet gereksinimi ve 3500 adet test durumu olan bir projenin Kabul Komitesi'nde olsaydınız, uygulamanın eksiksiz olarak doğrulandığından emin olmak için neleri kontrol ederdiniz?


No comments: