Öncelikle, yanıtlayanların çoğunun belirttiği gibi, adam testin değerini görmezse, bu konuda yapabileceğiniz pek bir şey yok ve zaten adamı kovamayacağınızı söylediniz. Ne birkaç şey hakkında o kadar Ancak, başarısızlık bir seçenek burada değil edebilir mi?
Kuruluşunuz 6'dan fazla geliştiriciye sahip olacak kadar büyükse, bir Kalite Güvence departmanına sahip olmanızı şiddetle tavsiye ederim (başlayacak tek kişi olsa bile). İdeal olarak, 1 test kullanıcısı ile 3-5 geliştirici arasında bir oranınız olmalıdır. Programcılar ile ilgili olan şey ... onlar programcıdır, testçi değil. Henüz resmi olarak uygun QA teknikleri öğretilmiş bir programcı ile röportaj yapmadım.
Çoğu kuruluş, test rollerini yeni işe alan kişiye, kodunuza EN AZ maruz kalan kişiye atamanın ölümcül hatasına sahiptir - ideal olarak, kıdemli geliştiriciler, kodda deneyime sahip oldukları için QA rolüne taşınmalıdır. ve (umarım) ortaya çıkabilecek kod kokuları ve başarısızlık noktaları için altıncı bir his geliştirdik.
Dahası, hatayı yapan programcı muhtemelen kusuru bulamayacaktır çünkü bu genellikle bir sözdizimi hatası değildir (derlemede yakalanırlar), ancak bir mantık hatasıdır - ve aynı mantık, kodu yazarken olduğu gibi test edin. Kodu geliştiren kişinin bu kodu test etmesine izin vermeyin - herkesten daha az hata bulacaktır.
Sizin durumunuzda, yeniden yönlendirilmiş çalışma çabasını karşılayabiliyorsanız, bu yeni adamı QA ekibinizin ilk üyesi yapın. Ona "Gerçek Dünyada Yazılım Testi: Süreci İyileştirmek" adlı kitabı okumasını sağlayın, çünkü belli ki yeni görevinde biraz eğitime ihtiyacı olacak. Hoşuna gitmezse, istifa eder ve sorununuz çözülür.
Biraz daha az intikamcı bir yaklaşım, bu kişinin iyi olduğu şeyi yapmasına izin verilebilir (bu kişinin işe alındığını varsayıyorum çünkü aslında işin programlama kısmında yetkin olduğu için) ve testi yapmak için bir veya iki test görevlisi işe alması ( Üniversite öğrencileri genellikle staj veya "kooperatif" terimlerine sahiptir, maruz kalmaya bayılır ve ucuzdur)
Yan Not: Sonunda, QA ekibinin bir QA direktörüne veya en azından bir yazılım geliştirici yöneticisine rapor vermesini istemeyeceksiniz, çünkü QA ekibinin birincil hedefi ürünü bitirmek olan yöneticiye rapor vermesi, faiz.
Organizasyonunuz 6'dan küçükse veya yeni bir ekip oluşturmaktan kurtulamıyorsanız, eşli programlamayı (PP) öneririm. Ekstrem programlama tekniklerini tamamen değiştirmiyorum, ancak kesinlikle eşli programlamaya inanıyorum. Ancak, eşleştirilmiş programlama ekibinin her iki üyesi de kendini adamalıdır, yoksa bu işe yaramaz. İki kurala uymaları gerekir: müfettiş ekranda neyin kodlandığını tam olarak anlamalı veya kodlayıcıdan açıklamasını istemelidir; kodlayıcı yalnızca açıklayabildiği şeyi kodlayabilir - "göreceksiniz" veya "bana güvenmeyin" veya el sallamaya izin verilmez.
PP'yi yalnızca ekibiniz bunu yapabiliyorsa öneririm, çünkü test gibi, hiçbir tezahürat veya tehdit, ego dolu içedönükleri eğer bunu yapmakta kendilerini rahat hissetmezlerse birlikte çalışmaya ikna edemez. Bununla birlikte, ayrıntılı işlevsel özellikler yazma ve kod incelemeleri yapma ile eşleştirilmiş programlama arasında seçim yapma arasında, PP'nin genellikle kazandığını görüyorum.
PP sizin için değilse, TDD sizin için en iyi seçenektir, ancak sadece kelimenin tam anlamıyla alınırsa. Test Güdümlü Geliştirme, testleri İLK olarak yazmanız, gerçekten başarısız olduklarını kanıtlamak için testleri çalıştırmanız ve daha sonra çalışması için en basit kodu yazmanız anlamına gelir. Takas, artık binlerce testten oluşan bir koleksiyona sahip olmanızdır, ki bu da koddur ve üretim kodunun hatalar içermesi kadar muhtemeldir. Dürüst olacağım, TDD'nin büyük bir hayranı değilim, esasen bu nedenle, ancak test senaryoları yerine test komut dosyaları yazmayı tercih eden birçok geliştirici için işe yarıyor - bazı testler hiç yoktan iyidir. Daha iyi bir test kapsamı olasılığı ve komut dosyasında daha az hata için TDD'yi PP ile birleştirin.
Her şey başarısız olursa, programcıların bir küfür eşdeğeri olmasını sağlayın - programcı yapıyı her kırdığında, favorinize giden bir kavanozun içine 20 $, 50 $, 100 $ (personeliniz için orta derecede acı verici olan) koymaları gerekir ( kayıtlı Bağış. Ödeyene kadar, onlardan uzak dur :)
Tüm şakalar bir yana, programcınızın testler yazmasını sağlamanın en iyi yolu programlamasına izin vermemektir. Bir programcı istiyorsanız, bir programcı kiralayın - Test istiyorsanız, bir test uzmanı tutun. 12 yıl önce test yaparak genç bir programcı olarak başladım ve bu benim kariyer yoluma dönüştü ve hiçbir şey için takas etmem. Düzgün bir şekilde beslenen ve yazılımı geliştirme gücü ve yetkisi verilen sağlam bir Kalite Güvence departmanı, yazılımı ilk başta yazan geliştiriciler kadar değerlidir.