Testçilerin kimin daha çok böcek açtığını görmek için rekabet etmesi iyi mi?


54

Ben bir yazılım geliştiricisiyim. Analist tarafından yazılan test vakalarını izleyen ve yürüten, aynı zamanda keşif testi yapan bir test ekibi vardır. Test uzmanları kimin daha fazla böcek açtığını görmek için yarışıyor gibi görünüyor ve hata raporlarının kalitesinin düştüğünü fark ettim. Test işlevselliği ve yazılımın çalışmasıyla ilgili hataları bildirmek yerine, testçiler ekran geliştirmeleri, kullanılabilirlik ya da aptalca hatalar hakkında hatalar gönderiyorlardı.

Bu proje için iyi mi? Olmazsa (bir yazılım geliştiricisi olarak) test ekibinin düşünce ve tutumlarını nasıl değiştirebilirim?

Diğer bir sorun ise, son tarihin tahmini olduğu ve değiştirilemediğidir; bu nedenle, son tarih yaklaşırken test uzmanları test davalarını bitirmek için çabalıyorlar ve bu testlerin kalitesinin düşmesine neden oluyor. Bu, yasal hataların müşteri tarafından alınan son üründe bulunmasına neden olacaktır.

OBS: Bu rekabet şirketin bir uygulaması değil! Sadece kendileri tarafından organize edilen testçiler arasında ve herhangi bir ödül olmadan bir rekabet.


3
Test uzmanları bir inşaattan önce yer alıyor mu? Anlamı gereksinimleri geliştirme veya davaları veya kullanıcı hikayelerini kullanma, tasarım belgelerini gözden geçirme veya kod incelemelerine katılma konularında yer alıyorlar mı? Testçilerin dosyaladığı raporlar iyi midir ve raporların geçerli ve eksiksiz olduğundan emin olmak için kontroller var mı? Sorunuzu, testçilerin rolleri / sorumlulukları ve raporlarının nasıl yönetildiği hakkında daha fazla ayrıntılandırmak için düzenleyebilirseniz, bu iyi bir cevap yazmama yardımcı olur.
Thomas Owens

35
Rekabet mutlaka kötü değildir, ancak teşviklerle birleştirildiğinde olumsuz etkileri olabilir. Bu soru bana The Daily WTF hakkında, testçilerin daha sonra kahramanca bulunabilecek ekstra böcekler yaratmak için devs ile bir araya geldikleri bir hikayeyi hatırlatıyor . Eğlenceli okuma Bu hatayı tekrarlama.
amon

6
Meselenin iyi anlaşıldığı, ancak bir tarafa, birinin bana işimin kullanılabilirlik problemleri olduğunu söylediği için teşekkür ederim. Bu yazılımda doğru olması en zor şeylerden biri ve aynı zamanda da hakkı olan en değerli şeylerden biri.
jpmc26

9
Titiz bir KG ile bir yıldan uzun bir süredir devam eden bir projeden geldiğimde, aynı şeyin verimsiz görünebileceği anlamına gelen unsurlar veya farklı renkli semboller arasında çok fazla beyaz boşluk bulunmasının kusurlarını çıkardıklarını söyleyebilirim. İstenilen tüm özelliklerde genellikle verimliliği artırmak, teknik destek üzerindeki yükü azaltmak ve bir uygulamaya daha profesyonel bir görünüm ve his vermek. Ve evet, bazen yazılım bu nedenle ertelenecek, ancak ödeme bedeli genellikle buna değer.
phyrfox

9
Bazı cevaplar, test görevinin hataları bulmak olduğunu gösteriyor; Bu zihniyet, tanımladığınız sorunu ortaya çıkarır. İş kalite güvencesi için doğru ürün belirtilen bir kalite çubuğu uygun olup olmadığını belirlemek . Bir test cihazının hata raporları üretmesi umrumda değil; Bir test cihazının, ürün kalitesinin doğru ve müşteri odaklı bir analizini üretip üretmediğini önemsiyorum. Teşvik edilmesi gereken şey budur.
Eric Lippert,

Yanıtlar:


87

En fazla böcek bulma konusunda bir yarışma yapmanın iyi olacağını sanmıyorum. İşlerinin hata bulmak olduğu doğru olsa da, işleri "en fazla hata bulmak " değildir. Amaçları en fazla bulmak değil, amaçları yazılımın kalitesini arttırmaktır. Onları daha fazla hata bulma konusunda ödüllendirmek, bir programcının en yüksek kalitede kod yerine kod satırlarını yazmakla ödüllendirmekle aynıdır.

Oyunu oyuna sokmak, onlara en kritik hataları bulmak yerine, birçok sığ böceği bulmaya odaklanma konusunda bir teşvik sağlar. Düzenlemenizde bahsettiğiniz gibi, bu tam olarak organizasyonunuzda olan şeydir.

Bir kişi, buldukları herhangi bir hatanın adil bir oyun olduğunu ve tüm böceklerin keşfedilmesi gerektiğini savunabilir. Bununla birlikte, ekibinizin muhtemelen kaynakları sınırlı olduğu göz önüne alındığında, gerçekten büyük hatalar bulmaya çalışırken, sisteminize derinlemesine araştırma yapan birkaç saat veya gün boyunca bir test cihazı odaklanmasını mı yoksa tipografik hatalar veya küçük hatalar arayan uygulamalarda atlayarak birkaç saat veya gün geçirmenizi mi tercih edersiniz? Sayfadaki nesnelerin hizalanmasındaki hatalar?

Şirket gerçekten oyun oynamak istiyorsa, geliştiricilere bir hataya puan ekleme gücü verin. "aptalca hatalar" negatif puanlar alır, iyi yazılmış raporlarda hatalar bulmak zordur. Bu daha sonra teşviği “iş bulmakta en iyisi olmak” için “en fazlasını bulmak” dan hareket ettirir. Bununla birlikte , bu bir tavsiye edilmez, çünkü bir programcı ve KG analisti, sayılarını yapay olarak doldurmak için birlikte çalışabilir.

Alt satır: böcek bulmaktan oyun oynama. Kuruluşunuzda iyi çalışmaları ödüllendirmenin ve bu konuda bırakmanın yollarını bulun. Oyunlaştırma insanları bir hedefe ulaşmak için ödüllendirir. Bir QA analistinin “en fazla hata bulma” hedefine sahip olmasını istemezsiniz, amaçlarının “yazılımın kalitesini iyileştirme” olmasını istersiniz. Bu iki hedef aynı değil.


5
Düşündüğüm ilk şey benzerdi - eğer bir oyuna dönüştürmek istiyorlarsa, eğer bir QA yöneticisi (varsa), bu kişinin çıkarlarını en iyi şekilde kullanabileceğine güvenilebileceğini varsayarsak, bulunan hatalara dikkat çekerse daha iyi olurdu. akılda şirket. Bu bakımdan rekabeti daha iyi kontrol edebilir ve bunu kabul edilebilir olarak görüp görmediğinize bakmasa bile, rekabet uğruna biraz daha yüksek veya düşük puanlar vererek rekabeti keyfi olarak biraz daha yaklaştırabilir. ( Aksi halde, bir kişi yeni geliştiricinin yazdıklarını test etmek için bir adım
öteye giderse

2
Öyle olsa bile, bu fikri tavsiye etmem çünkü takım üyeleriniz neredeyse tamamen aynı olmadıkça (ki bu olmaz) hızlıca sıkıcı olur. Kendine karşı yarışmak daha iyi.
DoubleDouble

1
QA verimliliğini bulunan hata sayısına göre ölçmek fikri, programcı üretkenliğini yazılı kod satırlarıyla (ya da kapalı öykü noktalarıyla) ölçmeye eşdeğerdir. Her ikisi de saçma ama ikisi de performansı ölçmenin daha ince bir yolunu göremeyen PHB'lerin kafasında ısrar ediyor.
dodgethesteamroller

Cevabınız düşündüğüm aynı şey. Ancak, aynı test seviyelerinin @DoubleDouble noktası, düşünmek için iyi bir nokta!
Sadece Meraklı Bir Zihin

2
Kabul. Eski QA işimde zor ve hızlı kotalar olmamasına rağmen, bulabilecekleri her küçük suç ortağı hata yapmanın en önemli olduğunu düşünen birkaç testçi vardı - "karakterin gömleği çok uzun, çoğu insan "uzun süre gömlek giymeyin" (karakterin gömleği uzunluğu oyunla tamamen ilgisiz olduğunda), "gerçek eşliğinde bir oyunda] ağ kablosunu tekrar tekrar bağlamak / bağlantısını kesmek gibi [gerçek bir oyunda] oyunda müşteri ve kazananın konağın çevrimiçi kayıtlarına eklenmesini sağlamak ".
Doktor J,

17

Diğer cevaplara biraz katılıyorum. Bir test cihazı için "hata bulma" biraz "geliştirici kodunu yazmak" gibidir. Ham miktar anlamsız. Test cihazının işi, bulabilecekleri birçok hatayı bulmak, en fazla hatayı bulamamaktır. A test cihazı 10 böceğin 5 tanesini yüksek kaliteli bir bileşende bulursa ve B test cihazı 263 böceğin 58 tanesini düşük kaliteli bir bileşende bulursa, o zaman A test cihazı daha iyi bir test cihazıdır.

Geliştiricilerin belirli bir sorunu çözmek için minimum miktarda kod yazmasını ve bozuk bir davranışı doğru şekilde tanımlayan minimum sayıda rapor yazmasını test eden bir kullanıcı istersiniz. En fazla kusur bulmak için rekabet etmek, en fazla kod satırını yazmak için rekabet etmek gibidir. Yararlı olması için sistemi oyuna sokmak çok kolaydır.

Test etmek isteyen test sahiplerine sahip olmak istiyorsanız, ne yapacaklarına bağlı olarak, yazılımın tanımlandığı şekilde çalıştığını doğrulamak için daha doğrudan olmalıdır. Bu nedenle, belki de en çok kabul edilen sınav senaryolarını kimin yazabileceğini görmek için rekabet etmeli, hatta en iyisi, en fazla kodu kapsayan sınav senaryolarını yazmalısınız.

Geliştirici verimliliğinin daha iyi ölçüsü, görevlerin karmaşıklığı ile tamamlanan işlerin sayısıdır. Test cihazı verimliliğinin daha iyi ölçülmesi, test vakası karmaşıklığının yapıldığı test vakalarının sayısıdır. Bu hata bulmak değil, en üst düzeye çıkarmak istiyorum.


3
Test cihazının işi, bulabilecekleri birçok hatayı bulmak, en fazla hatayı bulamamaktır. Test hedeflerinin bu beyanları arasında büyük bir fark olması isteniyorsa, bu benim için kaybedilir.
Atsby

6
Çünkü A test cihazı 10 böceğin 5'ini yüksek kaliteli bir bileşende bulursa ve B test cihazı 263 böceğin 58'ini düşük kaliteli bir bileşende bulursa, o zaman A test cihazı daha iyi bir test cihazıdır.
Robot'a Gort

6
@ Tek bir bozuk davranış 10 farklı yerde kendini gösterirse, o zaman gerçek kırık şey hakkındaki 1 hata raporu, 10 farklı belirtiden 8'ini tanımlayan 8 ayrı hata raporundan çok daha iyidir.
Peteris

8
@Peteris (ve Steven) Her ikisi de ilginç noktalardır, ancak Steven'ın alıntı ifadesiyle etkili bir şekilde iletişim kurmazlar .
Atsby

@Atsby Alıntı yaptığınız cümleyle, birinci fıkra göreceli bir cümle (hataların en büyük bölümünü bulun) ve ikincisi ise mutlak (hataların en büyük bölümünü bulun). Bu şunu demek arasındaki fark bu bu kovayı% 90 doldurmak ve 1/2 galon ile bu kovayı doldurmak kova 1 galon tutan zaman.
dodgethesteamroller

16

Kişisel deneyimlerime dayanarak, bu iyi bir şey değil. Neredeyse her zaman geliştiricilerin kopya, saçma ya da tamamen geçersiz olan dosyalama hatalarına neden olur. Testçiler kotaları karşılamak için acele ederken, genellikle bir ay / çeyrek sonunda aniden beliren birçoğunu görürsünüz. Bundan daha kötüsü olan tek şey, geliştiricilere kodlarında bulunan hata sayısına göre de ceza vermenizdir. Test ve geliştirme ekipleriniz bu noktada birbirlerine karşı çalışıyorlar ve biri diğerini kötü göstermeden başaramıyor.

Odak noktanızı burada kullanıcı üzerinde tutmanız gerekir. Bir kullanıcı, test sırasında kaç tane hatanın dosyalandığına dair hiçbir fikre sahip değildir, tüm gördükleri, başından geçenlerden biridir. Kullanıcılar sonuçta, yazılım çalıştıklarında çalıştığı sürece 20 hata raporu veya 20.000 dosyalamanızın umrunda değil. Test edicileri değerlendirmek için daha iyi bir ölçüm, kullanıcılar tarafından bildirilen ancak test ediciler tarafından makul şekilde yakalanması gereken hataların sayısı olacaktır.

Yine de, takip etmesi çok daha zor. Belli bir kişi tarafından kaç tane hata raporunun yayınlandığını görmek için bir veritabanı sorgusu çalıştırmak oldukça kolaydır, bu nedenle "dosyalanan hatalar" metriğinin bu kadar çok kişi tarafından kullanılmasının ana nedeni olduğundan şüpheleniyorum.


+1, ancak daha iyi bir ölçümünle ilgili tek sorun, kullanıcı hata raporlama sistemini iyileştirmemeye teşvik edicidir ... Fikir doğru, ancak belki de daha genel bir 'resmi test sürecinin dışında bulunan hatalar' olmalı.
user56reinstatemonica8

@ user568458 - Söz konusu kuruluşun, iç kalite güvencesi ve müşteriye yönelik destek için farklı ekipleri olduğunu ve bu sorunun yalnızca iç kalite güvencesi ile ilgilendiğini varsayıyordum. Her ikisi de aynı ekip ise, o zaman gerçekten (benim yöntemimi kullanıyor olsanız da kullanmasanız da) çıkar çatışmalarınız olacak.
bta

6

Hata bulmaktan oyun çıkarken yanlış bir şey yoktur. İnsanları motive etmenin bir yolunu buldun. Bu iyi. Aynı zamanda önceliklerin iletilemediğini de ortaya koydu. Yarışmayı sonlandırmak israf olur. Öncelikleri düzeltmen gerekiyor.

Birkaç gerçek oyunun basit bir puanlama sistemi var. Böcek neden avlanmalı?

Oyunu sadece hataların sayısına göre puanlamak yerine, hata raporu kalitesinin bir ölçüsünü vermeniz gerekir. Öyleyse yarışma böcek sayısından az. Daha çok balık avlama yarışması gibi olacak. Herkes yüksek öncelikli puan alacağınız büyük hatayı bulmaya çalışacak. Hata raporunun kalitesini puanın bir parçası haline getirin. Geliştiricilere testçilere hata raporunun kalitesi hakkında geri bildirimde bulunmalarını sağlayın.

İnce ayar oyun dengesi basit bir iş değildir, bu yüzden bu hakkı almak için biraz zaman harcamak için hazırlıklı olun. Hedeflerinizi açıkça belirtmeli ve eğlenceli olmalıdır. Ayrıca, işletme ihtiyaçları değiştikçe ayarlayabileceğiniz bir şey olacaktır.


5

Hata bulmak onların işidir. İşleri daha az verimli hale getirmedikleri sürece (örneğin, birkaçını örtmek yerine 10 yazım hatası için bir böcek açarak) bu, tam olarak yapmaları gereken şeyi yapmalarını teşvik eder. Bir dezavantajı çok göremiyorum.


Moot ile daha fazla hemfikir olamadım. Elbette insanlar aptalca bir şey yapabilirler (dosya 100'lük yazım hatası, vb.) - ama "insanlar aptalca bir şey yapabilir".
Fattie,

1

Bu @ CandiedOrange en üstünde bir genişleme cevap .

Dikkatleri daha faydalı hedeflere kaydırmaya başlamak için gayri resmi ve gayri resmi bir şey düşünün. Örneğin, geliştiriciler bazı küçük jetonlar ve ödüller alabilirler.

En az bir önemli hatanın bildirildiği her gün, test cihazının masasında bir "Günün Böceği" belirteci bırakın. Haftada bir, daha büyük ve daha iyi bir "Haftanın Böceği" belirteç ya da kupasını veren geliştiricilerin alayıyla bir tören düzenleyin. "Ayın Böceği" ödülünü, belki pasta ile daha da çarpıcı hale getirin. Her belirteç ya da kupaya, geliştiricilerin test etmede hatanın bulunmasının iyi bir şey olduğunu düşündüğünü söyleyen bir alıntı eşlik etmelidir. Alıntıların kopyaları, test edicilerin hepsini okuyabileceği bir yere konulmalıdır.

Umut, test uzmanlarının dikkatlerini en fazla hata bulmaktan ve en çok kupa ve jeton toplamaya yönlendirmek zorunda kalmalarıdır. Bunu yapmak için en iyi stratejileri, alıntıları okumak ve hangi test yaklaşımlarının geliştiricilerin önemli olduğunu düşündüğü hataları ortaya çıkarması gerektiğini düşünmektir.

Sadece önemsiz hata raporlarını görmezden gelin. Hepsi gayri resmi ve gayri resmi olacağından, herhangi bir zamanda kapatılabilir veya değiştirilebilir.


Aynı fikirdeyim. Bir şey: yönetimden onay alma konusunda bunu yapma. Bir oyun gibi hissettirmek için, testçilerin kuralları kendilerinin anladıkları gibi hissetmeleri çok önemlidir. Eğer giriş sistemi yüksek öncelikli bir kaygı ise, önlerini öğrenmelerini sağlayın ve gevşetin. Trafik yoğunluğunun yüksek olduğu durumlarda, hatalı köşe durumlarından ziyade öncelikli kusurlar varsa, bunu netleştirin ve nasıl puanlandığını açıklayın. Önceliklerin net olması, eğlenceli hale getirecek ve insanların doğru oltada balık avına çıkmasını sağlayacaktır.
candied_orange

1

Bu proje için iyi mi?

Hayır . Kendini, gerekli işlevselliği hedeflemeyen düşük kaliteli raporlarla sonuçlandığını ve test edicilerin sorunu çözdüğünü, gerçekten de oldukları işi tamamlamak için çabalıyorlar olduğunu belirttiniz. "yapmak için.

Olmazsa (bir yazılım geliştiricisi olarak) test ekibinin düşünce ve tutumlarını nasıl değiştirebilirim?

Sorunu Proje Yöneticinizle yapın. Bu tür şeyleri işlerinin bir parçası olarak düşünmelidirler. Başbakanınız onunla başa çıkmakta isteksiz ya da baş edemiyorsa, kendi başa çıkma stratejilerinizi geliştirmek için takılıp kalmışsınızdır. (farklı bir soru olurdu)


-1

Ben böyle devam ederse nasıl olacağını (veya halihazırda nasıl olacağını) düşünüyorum, mutlaka daha düşük kaliteye sahip olmayacaksınız. Yine de miktarın kalite oranını azaltacağını düşünüyorum. Bu kötü bir şey olup olmamasına bağlıdır. Bağlıdır

ekran geliştirmeleri, kullanılabilirlik veya aptal hatalarla ilgili hataları bildirme.

Gerçekten istemediğin bir şey . Bu, test edicilerden açıkça anlaşılıyorsa, onlara sadece bildirilmesini istemediğiniz şeyleri yapmalarını değil, netleşmelerini söylerim. Bu raporlardan biri tekrar göründüğünde bunu yap.

Rekabet etmelerinin nedeni muhtemelen çalışırken eğlenmek, bu nedenle muhtemelen kötü iş yapmak istemiyorlar (eğer kötü kabul edilirse).


1
Kullanılabilirlik konularını kesinlikle bilmek istiyorum. Onlara "özellikteki hatalar" diyoruz.
RubberDuck

1
@RubberDuck Eğer bu takım ile% 100 açıksa, o zaman onlara ne yaptıklarını beğenmediklerini ve nedenini bilmediklerini bildirmek için onlara bir neden var. Öyleyse onları uyar. Eğer spesifik olarak bu takımla konuşulmazsa, onlara gerçekten kızabileceğini sanmıyorum ve onaylamadığın raporlardan birine bir örnek ver ve böyle istemediğini bilmelerini sağla.
Loko
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.