İster kendi şirketinizin üyeleri ister geniş bir müşteri tabanı için yazılım kodluyor olun, manuel, otomasyon veya hibrit olsun, doğru test uygulamalarına ve çerçevelerine sahip olmak tutarlı yazılım kalitesi, gelişmiş itibar ve verimlilik sağlar.
Çalıştığınız şirkete bağlı olarak, birçok test manuel test şeklinde gerçekleştirilir.
Manuel testin ne olduğu, şirketlerin manuel test ile neleri test ettiği ve yazılım test süreçleri ile ilgili diğer önemli bilgiler hakkında daha fazla bilgi edinin.
Manuel test nedir?
Manuel test, bir test senaryosunun test uzmanı tarafından herhangi bir otomatik araç yardımı olmadan manuel olarak yürütüldüğü bir yazılım testi türüdür.
Şirketler, yazılımlarındaki hataları veya sorunları tespit etmek için manuel testi bir yöntem olarak kullanırlar. Bazıları bunu basit veya ilkel bir test şekli olarak tanımlasa da, sonuçta üçüncü taraf test araçlarının kullanılmasını gerektirmeden bir programın işlevselliğini belirler.
Her türlü yazılım testinin bazı manuel yönleri vardır, çünkü bir uygulamanın bazı özelliklerini manuel müdahale olmadan test etmek imkansızdır.
1. Ne zaman manuel test yapmanız gerekir?
Geliştiricilerin manuel testleri kullandığı birkaç aşama vardır, bunlardan ilki temel işlevsellik geliştirme aşamasıdır.
Yazılımın temel işlevselliği geliştirme aşamasındayken yazılım geliştiriciler, kodun oldukça basit bölümleri için test senaryoları oluşturmaktan daha hızlı olduğu için programın her bir parçasının manuel olarak çalışıp çalışmadığını test eder.
Manuel testler, bir programın kullanıcı arayüzü oluşturulduğunda geliştirmenin son aşamalarında da yaygındır. Kullanıcı arayüzü testi, gerçek hayattaki bir kullanıcının menülerin tasarlanma şekline ve sistemin çalışma biçimine nasıl tepki verdiğini görmeyi içerir.
Bu, saf nicel ölçümlerden ziyade çok sayıda nitel veri ve kişisel görüş içerdiğinden, manuel test, ürün hakkında daha fazla bilgi edinmek için ideal bir seçenektir.
2. Manuel test yapmanıza gerek olmadığında
Manuel test kullanmanın gerekenden çok daha fazla zaman ve çaba gerektireceği birkaç durum vardır, bunlardan ilki veritabanı testidir.
Veritabanları çok büyük miktarda veriyi işler ve bunları manuel olarak girmek çok zaman alır ve bir kuruluş için verimsiz olur.
Bu durumlarda, büyük veri paketlerini sınırlı bir süre içinde işleyebildikleri için otomatik sistemlerin kullanılması idealdir.
Manuel testler ayrıca, bir geliştiricinin yazılımının önemli kullanıcı yüklerini nasıl işlediğini görmek için testleri tamamladığı yük testleri gibi alanlarda daha az kullanışlıdır.
Bu durum genellikle çevrimiçi uygulamalar ve kapsamlı değerlendirme gerektiren sunuculara sahip programlar için geçerlidir. Manuel testlerin tamamlanması için çok sayıda kişinin aynı anda bir uygulamaya erişmesi gerekir ve bu da otomatik bir yazılım test sistemi tarafından çok daha düşük bir maliyetle tamamlanabilecek bir hizmet için ciddi işçilik maliyetlerine yol açabilir.
3. Manuel teste kimler katılır?
Manuel testlerle ilgilenen personel üyeleri, çalıştığınız şirketin yapısına bağlıdır.
Manuel test sürecine dahil olan kişilerden bazıları, bu rolleri bulabileceğiniz türden bir geliştirme ekibine ek olarak:
– Geliştirici:
Bir geliştirici, yazılımın temel işlevselliğini test ederek ve QA test cihazı geri bildirimlerine bağlı olarak kodda güncellemeler yaparak sürece sürekli olarak dahil olur.
Geliştiriciler, yazılım geliştirmenin ilk aşamalarında modüllerin yüksek standartlarda çalışmasını sağlamaktan sorumlu oldukları için çok sayıda manuel test gerçekleştirirler.
– QA test uzmanı
Daha büyük ekiplerde bulunan QA test uzmanları, bir şirket için testleri özel olarak tamamlar ve uygulamanın müşterinin beklediği gibi çalışmasını sağlar.
Bir QA test uzmanı öncelikle geliştirmenin test, entegrasyon ve bakım aşamalarında önemlidir ve uygulama boyunca test yapan geliştiricilerin manuel testlerini devralır.
– QA yöneticisi
En büyük geliştirme şirketlerinde çalışan QA yöneticileri, test uzmanlarını projenin belirli görevlerine ve alanlarına atar.
Ayrıca tamamlanması gerekenlerin bir listesini oluşturmaktan ve test raporlarını okumaktan da sorumludurlar. Personel memnuniyeti çok daha iyi sonuçlar sağlayabileceğinden, bu özellikle manuel testlerde önemlidir.
Manuel testlerle neleri test ediyoruz?
Manuel testlerin incelediği yazılımın birkaç farklı yönü vardır ve bunların her biri, testlerin kendine özgü zorlukları sayesinde manuel test kullanıldığında daha iyidir.
Manuel testlerin burada başarılı olmasının nedenlerine ek olarak, manuel testleri kullanmaktan yararlandığınız ana özelliklerden bazıları şunlardır:
1. Temel işlevsellik
Yazılım test sürecinin en erken bölümlerinden biri, bir yazılım parçasının temel işlevselliğine bakar.
Bu aşamada, bir geliştirici veya test uzmanı kodun işlevsel modüllerinden birini inceler ve beklendiği gibi çalışıp çalışmadığını değerlendirir. Bu modüllerin küçük ölçekli olması nedeniyle, otomasyon çok uzun süreceğinden manuel testlere odaklanmaya değer.
Bunun bir örneği, test uzmanlarının bir veri parçasını işleve yerleştirdiği ve beklenen çıktıyı zaten bildiği bir veritabanı yazılımıdır.
İkisi eşleşirse test başarılı olur. Sürecin bu aşamasında yapılan testler, şirketin geri kalan çalışmaları için güçlü bir temel oluşturur.
2. Kullanıcı arayüzü tasarımı
Kullanıcı arayüzü, bir yazılım parçasının kullanıcı arayüzünü veya bir kullanıcının kullanabileceği menüleri, düğmeleri ve etkileşimi ifade eder.
UI testi, hem UI’nin çalışma şekline hem de kullanıcının tüm özelliklerle etkileşime girip giremeyeceği ve menülerin estetik açıdan hoş olup olmadığı da dahil olmak üzere kullanıcı için rahat bir çalışma şekli olup olmadığına odaklanır.
Arayüzlerin iyi görünüp görünmediği gibi niteliksel bilgiler otomatik bir programın başarılı olduğu bir konu olmadığından, bu aşamada manuel test bir gerekliliktir.
3. Sızma testi
Sızma testi, harici bir tarafın yazılıma gayrimeşru yollarla ne kadar kolay erişebileceğini görmek için bir yazılım paketinin test edilmesi anlamına gelir.
Yazılım otomasyonu, güvenlik testi için bir zorunluluk olan yeni alanları keşfetmek yerine, birkaç belirli adımı izlemeye ve zaten uygulamanın bir parçası olan süreçleri tamamlamaya odaklanır.
Örneğin, bir şirket yazılımlarını değerlendirmesi ve kötü niyetli bir tarafın kullanıcı verilerine erişmek için sahip olabileceği her türlü fırsatı araması için etik bir hacker kiralayabilir.
GDPR’nin Avrupa genelinde yasanın bir parçası olarak yürürlüğe girmesinden bu yana geçen yıllarda bu durum giderek önem kazanmaktadır.
4. Keşifsel test
Keşifsel test, yalnızca bir veya iki kez tamamlanması gereken testleri ifade eder ve yazılımı beklenmedik özellikler veya hatalar için “keşfetmenin” bir parçası olduğu için bu adı alır.
Bir test senaryosu için kod yazmak zaman alacağından ve birinin yazılıma manuel olarak girip incelemesi daha az zaman alacağından, manuel test bu durum için daha uygundur.
Bunun bir örneği, bir geliştiricinin belirli bir özelliğin düzgün bir şekilde entegre edilip edilmediğini kontrol etmek istemesi ve tek bir testle verilerin program boyunca doğru şekilde hareket ettiğini doğrulamasıdır.
Manuel testlerin yaşam döngüsü
Manuel testlerin yaşam döngüsünde birkaç aşama vardır ve manuel testler bir yazılım paketinin çok çeşitli yönlerini incelemek için kullanılır.
Manuel testlerin yaşam döngüsündeki bazı aşamalar şunlardır:
– Planlama
Uygulamanın gereksinimlerini, tamamlanması gereken belirli testleri ve yazılımı test ettiğiniz yapıyı değerlendirmeyi içeren bir test turu için plan yapın.
Bu aşama, manuel test uzmanının tamamlaması için test senaryolarının yazılmasını ve bir test ortamının oluşturulmasını içerir. Manuel test uzmanlarının testleri yanlışlıkla farklı şekillerde yapmasını önlemek için titiz olun.
– Test:
Testleri tamamlayın. Bu, tutarlı veriler elde etmek için test senaryolarını birden çok kez gözden geçirmeyi ve elde ettiğiniz tüm bilgileri not etmeyi içerir.
Test senaryosundan herhangi bir farklılık gösterirseniz, nasıl ve neden olduğunu not edin. Varyasyon en çok uçtan uca testlerde görülür, ancak tüm manuel testlerde test uzmanının çalışma biçiminde bazı farklılıklar olabilir.
– Analiz:
Testlerden aldığınız tüm sonuçları analiz edin. Bu, yazılımdaki hataların neler olduğunu ve sorunların potansiyel nedenlerini bulmayı içerir.
Basit işlevselliğin ötesine geçin ve uygulamanın tasarımını dikkate almak gibi niteliksel bilgileri entegre edin.
Niteliksel bilgiler özellikle manuel testlerde gelişir; test uzmanları, geliştiricileri bir kişinin bir uygulamayla olan deneyimini büyük ölçüde iyileştiren küçük ayarlamalar hakkında bilgilendiren açıklayıcı veriler üretir.
– Uygulama:
Bir dizi değişikliği uygulamak için önceki raporları kullanın. Bu, değişikliklere bağlı olarak uzun bir süreç olabilir ve geliştiriciler önceki sürümlerde var olan hatalara bir çözüm sağlamak için kod üzerinde denemeler yaparlar.
Manuel test kullanıldığında, geliştiriciler tüm değişiklikleri bir test uzmanıyla konuşmaktan ekstra fayda sağlar. Bu, her iki tarafın da neyin ayarlanması gerektiğini ve bunun işlevsel veya tasarımsal bir değişiklik olup olmadığını nasıl ayarlanabileceğini doğru bir şekilde anlamasına yardımcı olur.
– Planlamayı yeniden başlatın:
Geliştiriciler önceki testlerdeki sorunlar için bir düzeltme oluştururken, bir sonraki test seti için plan yapın. Bu, en son güncellemelerin test edilmesini ve son sürümde mevcut olan hataların yeniden oluşturulmaya çalışılmasını içerir.
Bu sürekli test döngüsüne sahip olmak, yazılımın her zaman geliştiği ve asla durağan olmadığı anlamına gelir. Manuel testler uzun zaman alıyor gibi görünebilir, ancak tekrarlanan testlerle sunduğu esneklik ve süreklilik sayesinde önemli bir yatırım getirisi vardır.
Manuel testin faydaları
Bir yazılım geliştirme şirketinde manuel test kullanmanın, yazılımın kendi kalitesinden projenin şirketin mali durumunu etkileme şekline kadar pek çok faydası vardır.
Bir şirkette manuel test kullanmanın faydalarından bazıları şunlardır:
1. Daha fazla esneklik
Test otomasyonunu tamamlamak için, bir QA analistinin bir yazılım parçasına girmesi ve her seferinde kesin bir dizi adımı tamamlayan bir test senaryosu kodlaması gerekir.
Bu bazen faydalı olsa da, bir insan test uzmanı bir süreçten geçebilir ve araştırmadan önce ve bir satır kodu değiştirmek zorunda kalmadan yerinde olmayan bir şey fark edebilir.
Bu, testlerinizin esnekliğini önemli ölçüde artırır ve programınızda aksi takdirde fark edilmeyecek sorunları bulmanız ve sorunları düzeltmek için daha büyük bir fırsata sahip olmanız anlamına gelir.
2. Niteliksel bilgi
Niteliksel bilgi, bir şeyi tanımlayan bilgi anlamına gelir ve bu, insan test uzmanlarının bir geliştirici ekibine sunabileceği bir bilgi türüdür.
Manuel bir test uzmanı, belirli bir menünün “hantal” hissettirip hissettirmediğini şirkete bildirebilir ve nedenini açıklayabilirken, bir otomasyon programı bu içgörüyü bir geliştiriciye sunamayacaktır.
Bu da şirketlerin iş akışlarına manuel testler uygulayarak, süreçlerinde yalnızca test otomasyonu kullanırken zorlanacakları bir şekilde uygulamanın standardını önemli ölçüde artırabilecekleri anlamına geliyor.
3. Çevre tarafından sınırlama yok
Otomasyon testi, mevcut bir platformun kullanımına dayanır ve bazılarının nispeten katı sınırları vardır.
Bazı platformların (hepsi olmasa da) karşılaştığı sınırlamalar arasında Linux gibi platformlarla çalışamama, yalnızca belirli bir kodlama diliyle çalışabilme ve yalnızca belirli sayıda görevi yerine getirebilme sayılabilir.
Test süreçlerinizde insanlarla birlikte çalıştığınızda, bu sınırlar etkin bir şekilde ortadan kalkar. Herhangi bir teknik sorundan ziyade yalnızca manuel test uzmanlarınızın becerileriyle kısıtlanırsınız.
Bu, ödün vermenize gerek kalmadan bir programı daha kapsamlı bir şekilde inceleyen bir test stratejisi oluşturmanıza yardımcı olur.
4. Kullanılabilirlik testine izin verir
Kullanılabilirlik testi, bir yazılımın son kullanıcıya nasıl göründüğü ve hissettirdiği de dahil olmak üzere “kullanılabilir” olup olmadığını değerlendiren test türüdür.
Bu tür testler, bir işlevin kullanılıp kullanılamayacağını değerlendirmenin ötesine geçerek, bir kişinin rakip ürünler yerine bu işlevi kullanmayı tercih edip etmeyeceğini inceler.
Manuel kullanılabilirlik testi uygulamak, şirketlere daha fazla içgörü sağlar ve otomasyonun geliştirme ekiplerine sunamayacağı bir şey olan uygulamayı daha rekabetçi hale getiren ayarlamaların yapılmasına yardımcı olur.
Manuel Testin Zorlukları
Bir geliştirici olarak her tür süreçte olduğu gibi, manuel testi bir kalite güvence aracı olarak kullanmanın da bazı zorlukları vardır.
Bu zorlukların farkında olarak, yazılımı manuel olarak test ederken kullandığınız tekniği uyarlayabilir, bu sorunların ciddi sorunlara yol açmasını önleyebilir ve sürecin sonunda programın standardını yükseltebilirsiniz.
Şirketlerin manuel test kullanırken karşılaştıkları başlıca zorluklardan bazıları şunlardır:
1. Test cihazı beceri seviyeleri
Başa çıkılması gereken ilk büyük zorluk, bir ekipteki tüm manuel test uzmanlarının gerekli beceri düzeyidir.
Yetenekli manuel test uzmanları sayesinde şirketler, hataları daha hızlı tespit ettiklerinden ve yazılımlarının beklendiği gibi çalıştığından emin olduklarından net bir fayda görürler. En iyi şirketler, daha yüksek bir performans seviyesini garanti altına almak için her zaman alanın ön saflarında yer alan manuel test uzmanları ararlar.
Siz de bir test uzmanı olarak her zaman bu becerileri öğrenmeye ve geliştirmeye çalışın. Geliştirilmiş beceriler, manuel testlerin daha fazla hata bulması ve kullanıcı deneyimlerini iyileştirmesi ile bir şirkete daha fazla değer katmanız anlamına gelir. En iyi manuel testler, yeteneklerini geliştirmek için zaman harcayan test uzmanlarından gelir.
2. Test maliyeti
Manuel test, her büyüklükteki işletme için yaygın bir süreçtir, ancak manuel testi kullanma şeklinize bağlı olarak maliyetler artabilir.
Örneğin, kayıtlarında çok sayıda yüksek vasıflı test personeli bulunan bir şirket, tekrarlanan testlerin yapılması durumunda çok fazla para harcayabilir, çünkü bu durumda herkesin zamanı için etkin bir şekilde ödeme yapmış olursunuz. Otomatik test süreçlerinde bu daha az sorun teşkil eder.
Bu soruna karşı ideal bir çözüm, önceden planlama yapmaktır; çünkü tamamlayacağınız testleri ve bunları tamamlama sırasını planlamak için ne kadar çok zaman harcarsanız, insanların ihtiyaç duymadıkları testleri tamamlamaları nedeniyle personel maliyetlerinin artması ihtimali o kadar düşük olur.
3. Zaman alıcı
Bilgisayarlar, bir satranç hamlesini planlamaktan borsaya para yatırmaya ve hatta renk değiştirdikten sonra bir düğmeye basmaya kadar her türlü şeyde insanlardan daha hızlıdır. Aynı konsept testler için de geçerlidir; kullanıcılar tüm bilgileri okumak ve menüler arasında gezinmek için zaman ayırırlar.
Bu nedenle manuel testler, test otomasyonu kullanmaktan çok daha uzun sürebilir. Manuel ve otomatik testlerin bir kombinasyonunu kullanarak, manuel test uzmanlarından önemsiz görevleri alarak ve bunun yerine uzmanlığın gerekli olduğu yerlerde onları kullanarak buna karşı koyun. Süreçlerinizi basitleştirmek, mümkün olduğunca çok adımı ortadan kaldırdığı için manuel testler için de idealdir.
4. Hata potansiyeli
İnsanlar hata yapar. Bu, ister bir testte adımları yanlış sırada tamamlamak isterse yanlış tıklama nedeniyle sonuçları yanlış not etmek şeklinde olsun, doğaldır. Ancak bu hatalar bir yazılım test rejiminin doğruluğu konusunda ciddi sorunlara yol açabilir.
Aynı görevi tekrar tekrar tamamlamaktan daha yorgun veya bıkkın olan manuel test uzmanlarının hata yapma olasılığı diğerlerine göre daha yüksektir, bu nedenle mümkün olduğunda bunu önlemek için otomasyon kullanın veya test uzmanlarına ekranlarından düzenli olarak ara verin, çünkü bu onları neler olup bittiğine karşı daha uyanık tutar.
Yöneticiler, insanların tükenmesini ve sorun yaşamasını önlemek için iş yükü yönetimini de göz önünde bulundurabilir.
Manuel Testlerin Özellikleri
Manuel testlerde aranması gereken birkaç temel özellik vardır. Bunlar manuel testin ne olduğunu tanımlar ve testlerinizi tasarlarken etrafında plan yapabileceğiniz önemli özelliklerdir.
Manuel testlerin bazı temel özellikleri ve bunların aktif bir test ortamında ne anlama geldiği hakkında daha fazla bilgi edinin:
1. Optimize edilmiş test senaryoları
Manuel testlerde, test senaryoları yüksek oranda optimize edilir. Bu, manuel bir test uzmanının bir testi tamamlamadan önce sahip olduğu talimatları ifade eder ve yüksek düzeyde optimizasyon, bir test ekibinin daha az görev tamamlayarak zamandan ve kaynaklardan tasarruf etmesini sağlar.
Mevcut kaynaklardan en iyi şekilde yararlanmak için mümkün olan her yerde bir test senaryosunun boyutunu sınırlandırmaya çalışın.
2. Daha anlaşılır metrikler
En iyi manuel testler daha anlaşılır metriklere sahiptir. Test otomasyonunun sürekli olarak karmaşık istatistikler ve bilgiler ürettiği durumlarda, bu metriklerin sağlayabileceği içgörü, manuel bir test uzmanının tamamlaması veya hesaplaması için harcayacağı zamana değmez.
Alternatif olarak, manuel testler, üretilmesi kolay ve sürecin ilerleyen aşamalarında analiz edilmesi daha az zaman alan çok daha basit metrikleri içerir.
3. Akıllı raporlama
Manuel testler, test ekibinin daha akıllı raporlama yapmasını sağlar. Otomatik testler, sürecin sonunda kendi raporlarını oluşturur ve bu da raporların hepsinin aynı formatta olmasına neden olur.
İnsan test uzmanları çok daha esnektir ve gerektiğinde geliştirme ekibi için yararlı olduğunu düşündükleri bilgileri ekleyerek kendi raporlarını oluşturabilirler.
4. Stratejileri yeniden çalıştırın
Yeniden çalıştırma stratejileri, bir test ekibinin testleri tekrar tekrar çalıştırarak görevlerin tekrar tekrar yapılmasından veri toplama yöntemini ifade eder.
Manuel testler, yeniden çalıştırma stratejilerinin çok daha esnek olduğu ve test uzmanlarının araştırılacak daha fazla şey olduğunu düşündüklerinde daha fazla test tamamlayabilecekleri anlamına gelir.
Bazı manuel testler, daha geniş bir davranış yelpazesinden veri sağlayarak kullanıcının tamamladığı eylemlerdeki farklılığı da aktif olarak teşvik eder. Bu, yazılım hakkında daha fazla veri üretir ve ileriye dönük daha tutarlı güncelleme stratejilerine yol açar.
Manuel test türleri
Şirketlerin kullandığı üç farklı manuel test türü vardır ve aralarındaki fark test uzmanlarının sahip olduğu erişim seviyesine göre belirlenir. Her tür kendi benzersiz bağlamında faydalıdır.
Başlıca manuel test türleri şunlardır:
1. Beyaz kutu testi
Beyaz kutu testi, test uzmanlarının bir yazılım parçasının tüm kaynak kodunu ve tasarım belgelerini görebilmesini içeren bir test şeklidir.
Bu daha yüksek erişim seviyesi, test uzmanının kodun tüm bireysel yönlerini ve bunların yazılımın çalışma şeklini nasıl etkilediğini görebilmesi anlamına gelir. Bu, geliştirme sürecinin ilk aşamaları için idealdir, çünkü geliştiriciler kendi kodlarına manuel olarak bakabilir, test senaryolarıyla karşılaştırabilir ve mevcut hatalardan herhangi birini düzeltmeden önce önemli sorunlara neden olan alanı kolayca bulabilirler.
2. Kara kutu testi
Kara kutu testi, test uzmanlarının kullanıcı arayüzünün arkasında neler olup bittiğini göremediği bir test biçimini ifade eder. Bu, herhangi bir koda veya tasarım belgesine erişim olmadığı ve test uzmanlarının yazılıma tamamen bilgisiz bir şekilde yaklaştığı anlamına gelir.
Kullanıcı kabul testi ve uçtan uca testler, geliştirme sürecine dahil olan birinden ziyade bir son kullanıcının bakış açısını gerektirdiğinden, manuel test uzmanları bu yaklaşımı geliştirme sürecinin son aşamalarında kullanır.
3. Gri kutu testi
Gri kutu testi, kara kutu ve beyaz kutu testlerinin bir kombinasyonudur ve test uzmanının bazı belgeleri ve kaynak kodu görebilmesini gerektirir. Bu, herhangi bir sorunun potansiyel nedenlerini görebilme avantajını bir araya getirirken, bilgileri sınırlandırmaya devam ederek veri işleme gibi özelliklere yardımcı olur.
Geliştirme sürecinin orta aşamalarında manuel gri kutu testlerini kullanın, test uzmanlarına daha fazla bilgi sağlayın ancak yine de son kullanıcının sistemleri anlayabilmesini sağlamak için birçok işlevsellik için kendi sezgilerine güvenmelerini sağlayın.
Bazı karışıklıkları gidermek – Manuel Test ve Otomasyon Testi
Yazılım testinde manuel test ve otomasyon testi olmak üzere iki farklı disiplin vardır. Her ikisi de etkili bir şekilde aynı işleve sahip olmalarına rağmen, şirketlerin yazılım paketlerini incelemek için kullandıkları farklı disiplinlerdir.
Otomasyon testinin ne olduğu, otomasyon testi ile manuel test arasındaki fark ve yazılım QA süreçlerinizde her iki test türünün ne zaman kullanılacağı hakkında daha fazla bilgi için okumaya devam edin.
1. Otomasyon Testi Nedir?
Otomasyon testi, bir yazılım parçasını otomatikleştirmek için üçüncü taraf bir araç kullanan bir test uzmanının, bir kuruluş için yeterince yüksek bir standartta performans gösterdiğinden emin olmak için yazılımı aynı işlemi tekrar tekrar tamamlarken incelemesi sürecidir. Testleri otomatikleştirmenin temel faydası, özellikle veri girişi gibi önemsiz görevleri tamamlarken çok daha hızlı bir süreç olmasıdır.
Buna örnek olarak bir veritabanının tüm bilgileri düzgün bir şekilde işlediğinden emin olmak için test edilmesi, binlerce verinin birkaç dakika içinde yazılıma girilmesi ve sonrasında sonuçların değerlendirilmesi verilebilir.
Şirketler otomasyon testini öncelikle büyük ve yüksek oranda tekrar eden görevler için kullanır. Otomatik bir sistem yanlış bilgi girme veya yanlış bağlantıya tıklama gibi küçük hatalar yapmayacaktır.
Bunu kullanan ana yazılım parçalarından bazıları canlı sunucular ve veritabanlarıdır, çünkü bunlar çok fazla bilgi ve yüksek kullanıcı yükünü işler, bu nedenle talepleri karşılayabilecek bir test şekli gerektirir.
2. Manuel ve Otomatik testler arasındaki fark nedir?
Manuel ve otomatik testler arasındaki temel fark, tamamlanma yöntemidir.
Manuel test, testi tamamlamak için tamamen bir insana dayanır, test senaryosunu tamamlanıncaya kadar takip eder ve ardından herhangi bir bilgiyi not eder.
Otomatik testlerde, bir QA analisti tarafından ilk olarak yazıldıktan sonra test senaryolarının tamamlanmasından bir bilgisayar programı sorumludur.
Bazı otomatik test platformları, kullanıcılar için kendi raporlarını da oluşturarak bir kişinin deneyden elde edilen tüm verileri toplamak için harcaması gereken süreyi sınırlar. Bunun yerine, zamanlarını yazılım paketinin sahip olduğu sorunlar için bir düzeltme üretmeye harcayabilirler.
3. Sonuç: Manuel Teste Karşı Otomatik Test
Manuel ve otomatik testler arasında bazı temel farklılıklar vardır ve bu iki kavram düzgün çalışmak için tamamen farklı temellere dayanır.
Bununla birlikte, birçok geliştirme projesinde yakın işbirliği içinde çalışabilirler. Daha ağır görevlerin bazıları için otomatik testleri kullanarak ve daha fazla esnekliğe ihtiyaç duyanlar için manuel test tekniklerini uygulayarak test süreçlerinizi önemli ölçüde hızlandırabilirsiniz.
Testle ilgili en büyük yanılgılardan biri, ikili bir seçim yapmanız gerektiğidir, ancak bu, etkili bir kalite güvence ekibi için gerçeklerden daha uzak olamaz.
Manuel Testin 5 Efsanesini Çürütmek
İnsanların manuel testlerle ilgili inandıkları birkaç efsane vardır ve bunların her biri insanları ideal olmayan yöntemleri izlemeye yönlendirir ve sonuç almayı olması gerekenden daha karmaşık hale getirir.
Manuel testi çevreleyen beş büyük efsane şunlardır:
1. Test, ürün kalitesinden sorumlu tek departmandır
Ürün kalitesi sadece kalite güvence ekibinin değil, tüm şirketin görevidir.
Yazılım testleri mümkün olan her yerde hataları ortadan kaldırmak için vardır, bu da birçok insanın hata düzeltme ve bulmayı yalnızca QA ekibinin sorumluluğu olarak gördüğü anlamına gelir. Aksine, geliştiricilerin kendileri kodu yazmaktan sorumluyken, yönetim ekibi geliştirmeyi organize etmekten sorumludur.
Bir şirkette rolü olan herkesin, tüm sorunları bulmak için bir test ekibine güvenmek ve sonrasında ürünü mümkün olan en kısa sürede sevk etmek yerine, yeterince yüksek standartta bir ürün yaratma konusunda bir sorumluluğu vardır.
2. Manuel testler artık önemli değil
Yapay zekanın ve giderek yaygınlaşan robotik süreç otomasyonunun yükselişiyle birlikte, yazılım geliştirmede manuel testin artık önemli olmadığına inananlar var. Şirketler otomasyonun görece ucuzluğunu görüyor ve mümkün olan her yerde bu yolu izlemeyi tercih ediyor.
Manuel test, E2E, kara kutu ve GUI test yardımcı programı sayesinde bir şirket için en önemli araçlardan biri olmaya devam etmektedir. Manuel test uygulayan şirketler, otomasyonun gözden kaçıracağı yazılım sorunlarını bularak ürünlerini yalnızca otomasyon yoluyla elde edebilecekleri potansiyel kazanımların ötesinde geliştirirler.
3. Kod yazamayan insanlar için
Bazı insanların sahip olduğu temel varsayımlardan biri, kod yazamayan insanların bunun yerine test yapmayı seçtiğidir.
Ancak bu gerçeklerden çok uzaktır. Kod okuryazarlığı, gri ve beyaz kutu testlerinin kodu okumaya ve yazılım paketinde bulunan hatalara nasıl katkıda bulunabileceğini anlamaya dayandığı birçok test rolünde bir zorunluluktur.
Yalnızca kod yazamayan kişilerin test sürecine dahil olduğunu varsayarak, ekibinizde daha düşük standartlarda test personeli bulundurma olasılığınızı sınırlamış olursunuz. Eğer bir test uzmanıysanız, standartlarınızı geliştirmek için bir kodlama kursunu tamamlamayı düşünün.
4. Hatasız yazılımlar oluşturabilirsiniz
Bazı insanlar manuel test sektörüne, bir kalite güvence ekibinin bir yazılım parçasındaki her hatayı bulabileceği ve geliştirme ekibinin bu hataları çözmesine yardımcı olabileceği varsayımıyla girmektedir.
Teorik olarak bu, hiç hata içermeyen ve müşteriyi tamamen tatmin eden bir ürüne yol açacaktır. Bu elbette yazılım testi için ideal nihai hedeftir, ancak nadiren mümkündür.
Dünyanın en büyük şirketlerinin en ince ayarlanmış yazılım paketleri bile hatalarla birlikte gönderilir ve amaç hata sayısını mümkün olduğunca azaltmak olsa da, birkaç küçük sorunun son sürüme girmesinde gerçek bir sakınca yoktur. Manuel yayın sonrası test ve geliştirme bu nedenle önemlidir.
5. Test etmenin herhangi bir katma değeri yoktur
Her türlü yazılım testini çevreleyen en büyük efsanelerden biri, yazılım paketine herhangi bir değer katmadığıdır. Bununla birlikte, müşteriler kaliteye her zaman uygulamanın en önemli yönlerinden biri olarak değer verir; hatalı veya düşük kaliteli programlar, alternatifler ararken kullanıcılarını hemen kaybeder.
Bir şirket için cilalanmış bir ürün, düzgün çalışmayan bir üründen çok daha değerlidir ve etkili testler bu işin merkezinde yer alır. Üst düzey testler, şirketler doğru yatırım yapmayı seçtiklerinde önemli getiriler sağlar.
Kısacası, hibrit bir manuel + otomasyon test stratejisi, her zaman bu stratejilerden birinin tek başına kullanılmasından daha iyi bir test sonucu sağlayacaktır.
Manuel Teste Başlamak İçin Neye İhtiyacınız Var?
Manuel test sürecini başlatmak için ihtiyacınız olan birkaç şey vardır ve tüm bu özelliklere sahip olmanız testi yalnızca kolaylaştırmakla kalmaz, aynı zamanda ilk etapta mümkün kılar.
Manuel teste başlamak için ihtiyacınız olan şeylerden bazıları şunlardır:
1. Yazılım
Bir test uzmanının yazılım testini tamamlamak için ihtiyaç duyduğu ilk şey yazılımın kendisidir. Sonuçta, test edilecek hiçbir şey yoksa manuel test etkin bir şekilde imkansızdır.
Etkili bir yazılım testi, kullanıcının ihtiyaçları için ilgili tüm kaynak koduna sahip olduğundan ve ürünün mevcut halini daha adil bir şekilde temsil ettiğinden, yazılımın en son yinelemesini kullanmayı içerir.
Mümkünse, yazılımın mümkün olan en doğru görünümünü elde etmek için uygulamayı tamamen yeni derleyin.
2. Yazılım gereksinimleri
Bir test uzmanının yazılımın gereksinimlerine erişimi olması gerekir. Bu, paketin ihtiyaç duyduğu donanım veya işletim sistemini değil, geliştiricinin üzerinde çalıştığı yazılımın özetini ifade eder.
Test aşamasında daha ayrıntılı yazılım gereksinimlerine sahip olmak, QA personelinin başlangıçtan itibaren tüm önemli özellikleri araması, yazılımdaki herhangi bir sorunun nerede olduğunu not etmesi ve ayarlamalar önermesi anlamına gelir.
Bu olmadan, bir test uzmanı herhangi bir rehberlik olmadan çalışır ve sağladığı bilgilerin geliştirme ekibi için gerçekten yararlı olup olmadığını bilemez.
3. Uygun donanım
Yazılım testi, çalıştırdığı programın ihtiyaçlarını karşılayan bir donanım gerektirir.
Örneğin, bir test uzmanı gelişmiş donanım gerektiren yeni bir video oyununda hata veya sorun arıyorsa ve yalnızca düşük seviyeli bir bilgisayara sahipse, yazılımı düzgün bir şekilde test edemeyecektir.
Bu, küçük uygulamalar veya web araçları için daha az sorun teşkil eder. Testleri tamamlamaya başlamadan önce kullandığınız donanımın yazılımın ihtiyaçlarıyla eşleştiğinden emin olun ve yazılımın gereksinimleri konusunda geliştirme ekibine danıştıktan sonra donanım seçin.
Manuel Test Süreci
Manuel test sürecinden geçerken izlenecek birkaç adım vardır ve her biri programınızın doğru bir şekilde gözden geçirilmesinde rol oynar.
Bu adımlar şunları içerir:
1. Gereksinimleri analiz edin
Manuel test sürecinin ilk adımı, uygulamanın gereksinimlerini analiz etmektir. Bu, uygulama özetinde listelenen özel gereksinimleri, tasarım belgesinin bazı özelliklerini ve programın görmeyi beklediğiniz diğer bölümlerini (yasal gereksinimler gibi) içerir.
Bunları sürecin başında analiz etmek, yazılımı incelerken neyi test ettiğinizi bilmeniz anlamına gelir.
2. Bir test planı oluşturun
Neyin test edilmesi gerektiğini öğrendikten sonra bir test planı oluşturun. Bu, hangi özellikleri test ettiğinizi, bunları tam olarak nasıl test ettiğinizi ve bu testleri süreç içinde ne zaman tamamladığınızı bilmeyi içerir.
Bir test planı oluşturarak gerekli tüm testlerin önceden hazır olduğundan ve kazara hiçbir özelliği kaçırmadığınızdan emin olursunuz.
Bu, kaç manuel test uzmanına ne zaman ihtiyacınız olduğunu bildiğiniz için iş gücü yönetimine de yardımcı olur.
3. Test senaryoları yazın
Yazılım için bazı test senaryoları yazmaya başlayın. Bir test senaryosu, yazılımı test ederken tamamladığınız ve adil bir test olduğundan emin olmak için her seferinde bunları titizlikle takip ettiğiniz bir dizi olaydır.
Her durumda üzerinde çalıştığınız özel manuel testi düşünün ve mümkün olduğunca fazla ayrıntı ekleyin, çünkü bu, herhangi birinin orijinal plandan sapma olasılığını azaltır.
4. Vakalarınızı gözden geçirin
Tüm test senaryolarınızı yazdıktan sonra kapsamlı bir gözden geçirme sürecinden geçin. Bu, test senaryolarının yönetim kadrosunun bir üyesine, tercihen bir QA yöneticisine verilmesini içerir.
Redaksiyon sürecine üçüncü bir tarafı dahil ederek, mevcut olabilecek hataları ortadan kaldırarak test senaryolarının standardını yükseltirsiniz. Yönetici, sonuçta manuel testinizi daha verimli hale getirecek ve uygulamadaki herhangi bir sorunu bulmanıza yardımcı olacak iyileştirmeler önerebilir.
Testleri gerçekleştirmeden önce her bir test senaryosunun doğrulandığından emin olun.
5. Manuel testleri yürütün
Bir yönetici bir test senaryosunu onayladıktan sonra testleri yürütmeye başlayın. Her bir testi tamamladığınızdan emin olmak ve insanların testleri yavaş ve dikkatli bir şekilde tamamladığından emin olmak için sürecin en başında belirlediğiniz sırayı takip edin.
Testleri %100 doğru yapmak, bazı uygulamalarda hata yapmaktan ve geri dönüp sonuçların doğru olup olmadığını tekrar doğrulamak zorunda kalmaktan çok zaman kazandıracaktır.
Önemli bilgileri unutma olasılığını azaltmak için bilgileri giderken kaydedin.
6. Herhangi bir hatayı bildirin
Manuel testleri tamamladıktan ve herhangi bir hata bulduktan sonra, bir raporlama sürecini tamamlayın.
Bu, geliştirme ekibine tüm hataları, bunları nerede bulduğunuzu ve bunları yeniden oluşturmak için attığınız adımları listeleyen bir rapor yazmayı içerir. Ürettiğiniz tüm verileri testinize dahil edin.
Daha niteliksel testlerde, uygulamanın tasarımını, yaşadığınız sorunları ve uygulamayı daha kullanıcı dostu hale getirecek bazı potansiyel düzeltmeleri ayrıntılı olarak tartışın.
Manuel testlerin otomasyona karşı gerçekten üstün olduğu aşamanın bu aşama olduğunu unutmayın, çünkü manuel test uzmanları otomasyonun çoğu zaman sağlayamadığı niteliksel bilgileri sağlayabilir.
Manuel Testler için En İyi Uygulamalar
En iyi uygulamalar, tüm manuel test türlerinde ortak olan ve bir test sürecinin standardını iyileştirmeye yardımcı olan bazı şeyleri ifade eder. En iyi uygulamaları takip etmek, sonuçta kendinizi doğru ve güvenilir sonuçlara sahip yüksek kaliteli bir testle bulmanız anlamına gelir.
Manuel test sürecinden geçerken akılda tutulması gereken bazı en iyi uygulamalar şunlardır:
1. Netliğe odaklanın
Manuel test süreci boyunca netliğin vurgulanması bir zorunluluktur.
Mümkün olduğunca açık olmak, departmanlar ve profesyoneller arasındaki iletişimsizlik olasılığını azaltır ve insanların yazılımın doğru alanları üzerinde çalışmaya odaklanmasına yardımcı olur. Bu özellikle manuel testlerde önemlidir, çünkü talimatların yorumlanması için daha fazla alan vardır.
Bu, test uzmanının takip etmesi için net bir test senaryosu yazmayı, sonuçları basit ve anlaşılır bir şekilde not etmeyi ve kuruluştaki herkesin uygulamanın gereksinimlerini anlamasına yardımcı olmayı içerir.
2. Sürekli gözden geçirme kullanın
Test sürecindeki her şeyi olabildiğince sık gözden geçirin.
Etkili bir gözden geçirme süreci, personelin performansına dikkat etmeyi, test senaryolarını inceleyerek hala beklediğiniz gibi çalıştıklarını doğrulamayı ve ilerleme kaydedildiğinden emin olmak için yazılımın kendisini gözden geçirmeyi içerir.
Sürecin her bir yönünün kalitesini tek bir gözle takip etmek, standartların düşmemesini ve baştan sona yeterince yüksek düzeyde çıktı almanızı sağlar.
3. Sadece böcek avlamakla kalmayın
Bazı insanlar yazılım testinin ana amacının hataları bulmak olduğunu düşünür, ancak durum bundan çok uzaktır. Bu süreç aynı zamanda uygulamanın yüksek standartlarda performans göstermesini, öngörülebilir bir şekilde çalışmasını ve kullanıcı için rahat olmasını sağlamayı da içerir.
Sonuçta bu kullanılabilirlik, manuel testin temel odak noktasıdır, çünkü neredeyse “ayrıştırılamaz”.
Test durumunuzu takip ederken herhangi bir hata bulursanız, bunları raporunuza ekleyin, ancak testle ilgili olmayan hataları bulmak için yolunuzdan çıkmak, geliştiricilerin kafasını karıştırabilir ve süreci beklenen konumunun gerisine düşürebilir.
Manuel Testten Elde Edilen Çıktı Türleri
Manuel bir testten alabileceğiniz birkaç farklı çıktı türü vardır ve her biri bir uygulamanın performansına ilişkin benzersiz bir içgörü sunar.
Manuel testlerden elde edebileceğiniz çıktı türleri şunlardır:
1. Kusur günlüğü
Hata kaydı, bir yazılım parçasının bir testte karşılaştığı tüm sorunların yer aldığı bir liste veya belgedir. Hata günlüğü ne kadar uzunsa, yazılımda yama gerektiren o kadar çok sorun vardır.
Bunlar otomatik olabilir veya manuel bir test uzmanı tarafından manuel olarak yazılabilir; otomasyon platformları bir yazılım parçasının kalitesi hakkında fikir oluşturamadığından ve sadece metrikler ürettiğinden, manuel test uzmanları bu görevi programın daha niteliksel yönlerinde tamamlar.
2. Niteliksel veri
Bu, manuel test uzmanının genellikle kullanıcı kabul testi gibi bir dizi testi tamamladıktan sonra geliştirme ekibine sunduğu sözlü ve yazılı geri bildirimi ifade eder.
UAT, ortalama bir kullanıcının yazılımdan keyif almasını ve yazılımla beklendiği gibi etkileşim kurmasını sağlamaya odaklanır; bu da özellik testi gibi unsurlara kıyasla farklı bir odak anlamına gelir.
Nitel veriler ya geliştiriciyle yapılan bir görüşme ya da uzun formda yazılı bir rapor şeklinde gelir.
3. Hata mesajları
Hata mesajları, bir yazılım paketinde bir hata olup olmadığını ve varsa sorunun niteliğini belirten kısa metin dizeleridir.
Çoğu geliştirici, sorunu daraltmak için hata kodlarını kullanarak bir sorunun ne olduğunu ve neden ortaya çıktığını açıklayan kapsamlı bir sistem yazar. Yazılımdaki herhangi bir hata mesajını not eden bir geliştirici, ortaya çıkan sorunun nedenini hemen bilir ve çözüme yönelik atılacak potansiyel adımların farkındadır.
Manuel Test Örnekleri
Manuel test sürecinden nasıl geçileceği hakkında daha fazla bilgi edinirken göz önünde bulundurulması gereken birkaç manuel test örneği vardır. Bunların her biri, geliştirme döngüsünün belirli bir noktasında gerçekleşen ve geliştiricilere ürünlerini nasıl iyileştirecekleri konusunda daha fazla bilgi ve rehberlik sunan belirli bir test disiplinidir.
Manuel test formatlarına bazı örnekler şunlardır:
1. Birim testi
Birim testi, bir yazılım paketindeki her bir birimin beklediğiniz gibi çalıştığından emin olma sürecidir. Bir birim veya modül, sürecin sonunda daha büyük bir yazılım paketinde derlenmeden önce bağımsız olarak kodlanan tek bir işlevi ifade eder.
Bunun bir örneği, bir kişinin daha geniş bir pakete entegre etmeden önce verileri düzgün bir şekilde düzenlediğinden emin olmak için bir “SORT” işlevini test edebileceği bir veritabanıdır.
Birim testini tamamlamanın temel faydası, tüm sistemlerin kendi başlarına düzgün çalıştığını ve daha sonraki aşamalarda ortaya çıkan sorunların tüm işlevlerin birbiriyle entegre olma şeklinden kaynaklandığını anlamanızdır.
Bu testleri manuel olarak tamamlamak, karmaşık otomasyon test senaryosu kodlamasına harcanacak zamandan tasarruf sağladığı için aynı derecede önemlidir.
2. Uçtan uca test
Uçtan uca test, yazılımı ilk açtığınız noktadan içindeki tüm işlevlerin tamamlanmasına kadar tüm bir uygulamanın test edilmesi sürecidir.
Uçtan uca teste iyi bir örnek, ne kadar vergi kazandığınızı hesaplayan bir mobil uygulamadır; bir test kullanıcısı uygulamayı indirir ve nihai hesaplamayı almak için tüm işlevlerden geçer. Test uzmanı, karşılaştığı sorunları not eder ve bunları geliştiricilere iletir.
Geliştiriciler, bu tür testlerin öncelikle manuel test uzmanları tarafından yapılmasından fayda sağlar çünkü bu testler, yazılımın tüm birimlerinin birlikte nasıl çalıştığını görmek için bir fırsattır ve bu geç aşama testleri, uygulamanın hepsi bir araya getirildiğinde düzgün çalışmasını sağlar.
Uçtan uca test, kullanıcı kabul testinden farklıdır, çünkü uçtan uca test, kullanıcı kabul testi sürecinin dışa dönük doğasının aksine, öncelikle dahili bir süreçtir.
3. Kullanıcı kabul testi
Kullanıcı kabul testi, yazılım test sürecinin son aşamasıdır ve ürünün hedeflenen müşteri kitlesi için uygun olduğundan emin olmayı içerir. Bu, potansiyel müşterilere uygulamayı kullanabilmeleri ve geri bildirimde bulunabilmeleri için uygulamaya erişim sağlamayı da içerir.
Modern yazılım geliştirmede kullanıcı kabul testinin en yaygın örneklerinden biri, oyuncuların oyunu oynadıkları ve içinde var olan sorunları rapor ettikleri video oyunu alfa ve beta testleridir.
Kullanıcı kabul testini tamamlamanın temel faydası, ürünün oluşturulmasında aktif rol oynayan kişilerin bakış açısına güvenmek yerine ürününüz hakkında harici bir bakış açısı elde etmeniz ve testi etkileyen her türlü önyargı potansiyelini ortadan kaldırmanızdır. Bir otomasyon sistemi müşteri duyarlılığını doğru bir şekilde kopyalayamayacağı için manuel test bir gerekliliktir.
Manuel Test ile tespit edilen ve otomatik testin gözden kaçırdığı hata ve hata türleri
Manuel testler, otomatik testler gibi her türlü hatayı, hatayı ve sorunu bulur. Bununla birlikte, yazılımda otomasyonun gözden kaçıracağı, manuel testin keşfetmekte başarılı olduğu bazı sorunlar vardır.
Manuel testlerdeki ana hata ve bug türlerinden bazıları şunlardır:
1. Zayıf iş akışı
“İş akışı”, bir kullanıcının uygulamada belirli bir noktaya ulaşmak ve bir işlemi tamamlamak için izlediği yolu ifade eder. Bazı iş akışlarında teknik olarak yanlış bir şey olmasa da, yol meslekten olmayan biri için mantıklı olmayabileceğinden yine de sorunlu olabilirler.
Bu durumlarda manuel test uzmanı, geliştiriciyi tasarımla ilgili sorunlar hakkında bilgilendirir ve değişiklikler önererek kullanıcıların otomatik sistemlerin fark edemeyeceği şekilde bir uygulamaya daha rahat ve aşina olmalarına yardımcı olur.
2. Grafiksel sorunlar
Web uygulamaları, kullanıcının sahip olduğu telefon, tablet veya ekrana bağlı olarak sürekli değişen monitör çözünürlükleri ve boyutları ile çeşitli cihazlarda çalışır.
İyi optimize edilmemiş bir uygulamada bu, varlıkların daha az kullanılan cihazlarda gerilmesine ve daha kötü görünmesine yol açabilir ve otomasyon araçları sadece menüleri takip eder ve bunu fark etmez.
Manuel test uzmanları, bir dizi cihaz kullanarak, yamalandığında kullanıcıların yazılım paketiyle daha iyi bir deneyim yaşamasına neden olan grafiksel kusurları bulabilir.
3. Yanlış bağlantılar
Bazı web siteleri veya uygulamalar, bir dizi düğme ve gömülü bağlantı aracılığıyla sosyal medya web sitelerine bağlanır. Ancak bunlar, geliştirme sürecindeki bir yazım hatası veya hatanın sonucu olarak her zaman doğru yere bağlanmayabilir ve bu da otomatik bir sistemin mutlaka bulamayacağı bir şeydir.
Bağlantıların yanlış yere gitmesi kafa karışıklığına neden olabilir ve elde tutmaya önemli ölçüde zarar verebilir. Manuel test uzmanları bir programdaki tüm bağlantıları gözden geçirir ve bunların doğru yere gittiğinden emin olarak son kullanıcıların bir sorun nedeniyle yanlış yönlendirilmek yerine hedefledikleri yere ulaşmalarına yardımcı olur.
Yaygın Manuel Test Metrikleri
Metrikler, bir testin bitiminden sonra bir şeyi gösteren basit ve ölçülebilir sayısal değerlerdir. Bunların hepsi nicelikseldir, bu da geliştiricinin bakış açısından değerlendirilmelerini kolaylaştırır.
Test uzmanlarının kullandığı daha yaygın manuel test metriklerinden bazıları şunlardır:
1. Kusurlar
Kusurlar metriği nispeten basittir ve yazılım paketinde mevcut olan hata veya bug sayısını ifade eder. Kusur, yazılım işlevselliğinden grafiklerin çalışma şekline kadar yazılımın beklendiği gibi performans göstermediği her durumdur. Kusurları bir metrik olarak analiz etmek nispeten basittir ve daha fazla kusur şirket için daha büyük bir sorundur.
Yinelemeden yinelemeye kusur sayısının artıp artmadığını izleyerek, güncellemeler almaya devam ettikçe yazılımın kalitesinin doğru yönde ilerleyip ilerlemediğini daha iyi anlayabilirsiniz.
2. Test saati başına hata
Test saati başına hata, hata metriğini alır ve hata sayısını test uzmanlarının yazılım üzerinde geçirdiği saat sayısına bölerek biraz daha ayrıntı ekler.
Örneğin, çalıştırması iki dakika süren beş kusurlu basit bir web aracı, temel metrikle bir saat boyunca kullandığınız on kusurlu bir araçtan daha iyi görünecektir.
Manuel test uzmanları bu hesaplamayı tamamlayarak hata yoğunluğu hakkında daha iyi bir fikir sahibi olur, bir kullanıcının bir hatayla ne sıklıkla karşılaşabileceğini ve bunun uygulamada geçirdikleri süreyi ciddi şekilde etkileyip etkilemediğini anlar.
Kusurları bir uygulamanın boyutuna göre dengelemek, sorunları bağlamsallaştırmak için her zaman faydalıdır.
3. Geçilen test senaryosu yüzdesi
Bazı test senaryoları basit bir başarılı/başarısız esasına göre çalışır ve bu metrik başarılı olan test senaryolarının yüzdesini verir. Geçilen test senaryosu yüzdesi ne kadar yüksekse, uygulama o kadar iyi performans gösteriyor demektir.
Geçilen test senaryosu yüzdesini uygulamanın tamamını incelemek yerine özellik bazında kullanmak mümkün olduğunda. Bu, neyin çalışıp neyin çalışmadığı hakkında daha ayrıntılı bilgi sağlayarak geliştiricilerin sorunun tam olarak nerede olduğunu görmek için daha fazla araştırma yapmak yerine gerekli olan yerlerde değişiklik yapmalarına yardımcı olur. Bir sorunun nedenini ne kadar erken bulursanız o kadar iyi olur.
Manuel Testlerin Uygulanmasında 7 Hata ve Tuzak
Yazılım test endüstrisinde yaygın olarak yapılan ve her biri hataların bulunamamasına ve testlerin beklenenden daha uzun sürmesine ve daha yüksek maliyete yol açabilen birkaç hata vardır.
İşinizde manuel test uygularken dikkat etmeniz ve kaçınmanız gereken başlıca hatalar ve tuzaklardan bazıları şunlardır:
1. Hatayı kendiniz düzeltmek
Bir geliştirme sürecinin bazı aşamalarında, geliştirici hem kodu test etmekten hem de sorunu gidermekten sorumlu olan kişidir. Bu durum, sorunun nedenini tam olarak anlamasalar da yazılım sorunlarını kendilerinin çözmeye çalışmasına yol açabilir.
Mümkün olan her yerde, test eden kişi ile çözümü kodlayan kişi arasında net bir ayrım olduğundan emin olmaya çalışın. Bu ayrımı yaparak, yazılımın geri kalanını hesaba katmak yerine bulduğunuz belirli bir hatayı düzeltmeye çok fazla odaklanma olasılığını azaltırsınız.
Bir konuda daha geniş bir uzmanlık yayılımı elde etmek mümkünse her zaman işi dağıtın.
2. Testlerde acele etmek
Bazı yazılımların piyasaya sürülmesi için çok sıkı son tarihler vardır, bu da test uzmanlarının hedef tarihe ulaşmak için testleri daha hızlı bir şekilde tamamlamaya odaklanmasına neden olabilir. Bu ciddi bir hatadır, çünkü önemli hataların ortaya çıkma riski vardır. Manuel testler bu sorunu daha da kötüleştirebilir, insanlar üzerlerinde baskı hisseder ve işleri aceleye getirirler.
Test senaryolarını tamamlarken mümkün olduğunca fazla zaman ayırmaya çalışın, her adımı dikkatlice gözden geçirin ve verileri daha ayrıntılı bir şekilde not edin. Piyasaya sürmeyi biraz geciktirmeniz gerekse bile, eksiksiz bir ürün göndermek, zayıf standartlar nedeniyle kullanıcıların hoşuna gitmeyen bir ürün göndermekten daha iyidir.
3. Zayıf iletişim
Herhangi bir yazılım geliştirme projesinde ekip içi iletişim çok önemlidir; insanlar iş arkadaşlarından mümkün olduğunca fazla bilgi edinir ve bu bilgileri ürünü geliştirmek için kullanır. Bu, tek bir departman içinde olduğu kadar departmanlar arasında da sürekli bir iletişim için geçerlidir.
QA ekibi geliştiricilerle ne kadar etkili iletişim kurarsa, güncellemeleri oluşturma konusunda o kadar iyi rehberlik edebilir ve en üst düzeyde bir ürünün piyasaya sürülmesinden herkes birlikte yararlanır.
Manuel test, test uzmanının deneyimi tam olarak anlaması, daha fazla netlik ve ayrıntı sağlaması nedeniyle daha iyi iletişim kurulmasına olanak tanır.
4. Hazırlıksız test
Hazırlık mükemmelliği doğurur ve bu durum yazılım testi alanında da geçerlidir. Manuel test söz konusu olduğunda bu, özeti öğrenmenin yanı sıra yazılımı anlamak için zaman ayırmak ve tüm bu hedeflere uygun şekilde meydan okuyan test senaryoları oluşturmak anlamına gelir.
Zaman ayırmanız, test senaryolarınızın bir geliştirici olarak ihtiyaçlarınıza uygun olması ve sistemdeki en önemli hataların tümünü bulma olasılığınızın çok daha yüksek olması anlamına gelir. Bu aynı zamanda test uzmanlarının test senaryolarını daha net bir şekilde okumasına ve bunları daha büyük bir hassasiyetle yürütmesine yardımcı olur.
5. İçgüdülerinizi görmezden gelmek
Bir şirket manuel olarak test yapmaya başladığında, bunu bir insan test uzmanının uyarlanabilirliğini ve içgüdülerini istemeleri de dahil olmak üzere birkaç nedenden dolayı yaparlar. Bir yazılım parçasını test ederken, aktif olarak bir test senaryosunun parçası olmamasına rağmen bir şeyin garip göründüğünü fark edebilirsiniz, bu da sizi herhangi bir değişiklik yapmamaya veya daha fazla araştırmaya sevk eder. Bu bir hata.
Her zaman merakınızı şımartın ve içgüdülerinizin size söylediklerini dinleyin, çünkü bu, otomatik bir test senaryosunun bulamayacağı sorunları bulmanıza yardımcı olur. Manuel test uzmanları zekaları ve uzmanlıkları için seçilir, bu nedenle bu özelliklere göre hareket etmek bir testin potansiyelinden en iyi şekilde yararlanmaktır.
6. Hatalardan korkmak
Tamamladığınız iş ne olursa olsun herkes hata yapar. Ancak, bir hata yapabileceğiniz gerçeğinden korkarak bir sürece girmek yerine bunu kabul etmek en iyisidir. Bu sizi daha stresli hale getirir ve test performansınızda sorunlara yol açma olasılığı daha da artar. Otomasyonda bu sorun yoktur, manuel test uzmanları baskıya daha duyarlıdır.
Görevlerinize doğal bir şekilde yaklaşın ve bir hata yaparsanız, bunu mümkün olan en kısa sürede düzeltmeye çalışın. Yazılım testi, sorunları keşfettiğiniz ve düzelttiğiniz aşamadır ve ara sıra ortaya çıkan test sorunları, düzelttiğiniz sürece son kullanıcı için yazılımı mahvetmeyecektir.
7. Mola vermemek
Manuel testler, her bir testte ayrıntılara yüksek düzeyde dikkat edilmesini gerektirir ve bu da bir test uzmanı için yorucu olabilir. Buna rağmen, bazı test uzmanları ve şirketler, yorgunluk veya konsantrasyon kaybı için herhangi bir ek mola vermeden test uzmanlarını gün boyunca çalıştırmaya odaklanmaktadır.
Bu önemli bir hatadır. Test personeline gün boyunca molalar verin; bu, sorunların ortaya çıkma olasılığını azaltır ve testin mümkün olduğunca doğru yapılmasını sağlar. Eğer siz de bir test uzmanıysanız, kendinizin ve çevrenizdekilerin ruh sağlığıyla aktif bir şekilde ilgilenmek için yönetim kadrosuyla birlikte çalışmayı deneyin.
En İyi Manuel Test Araçları
Manuel testi tamamladığınızda, işin her bölümünü tek başınıza tamamlamak zorunda değilsiniz. Bazı durumlarda, bir araç kullanmak testlerinizi yönetmek ve süreci mümkün olduğunca sorunsuz hale getirmek için mükemmel olabilir. Standartlarınızı geliştirmenin yollarını düşünen bir test uzmanıysanız, araçlara bakmak ideal bir başlangıç olabilir.
5 En İyi Ücretsiz Manuel Test Aracı
Yazılım testinde yeni bir araç kullanmaya başlarken, yatırımınızın karşılığını iyi bir şekilde aldığınızdan emin olmak istersiniz. Bu, yazılıma harcadığınız zaman ve lisansı almak için harcadığınız para miktarını ifade eder.
Ücretsiz manuel test araçlarıyla, paranızın karşılığını almak çok daha kolaydır ve işe yaramazsa alıcı pişmanlığı yaşamazsınız.
Kalite güvence ekipleri için mevcut olan en iyi ücretsiz manuel test araçlarından bazıları şunlardır:
1. JIRA
JIRA, yazılım testleri için geliştiricilerin destek gerektiren tüm hatalar, sorunlar veya düzeltmeler için bilet oluşturmasına olanak tanıyan bir dokümantasyon aracıdır. Bu platform önceliklendirme araçlarıyla birlikte gelir, böylece bir geliştirme ekibi programlarını geliştirirken ilk olarak en önemli sorunları sıralayabilir.
2. LoadRunner
Bir dizi geliştirme aracıyla uyumlu olan LoadRunner, çeşitli ayarlarda performans test ine yardımcı olur ve karmaşık ayrıntılarla performans testi verileri oluşturur. Araç ayrıca verimliliği artırmak isteyen bir geliştirici için performans sorunlarının bazı ana nedenlerini kategorize etmeye yardımcı olur.
3. SonarQube
Manuel test çalışmaları yoluyla çok çeşitli programlama dillerini destekler, manuel test uzmanlarının kendi başlarına tamamlamaları gereken raporlama miktarını azaltmak için ölçümleri zaman içinde izler. Son derece uyarlanabilir ve bir dizi büyük üçüncü taraf uygulamasıyla etkili bir şekilde entegre olur.
4. Trac
Python’da geliştirilen Trac, testler arasında yapılan değişiklikleri görebilmeniz için size görünüm geçmişinizi, kodunuzu ve tüm değişiklikleri sağlayan bir proje yönetim aracıdır. Trac aracılığıyla hata ayıklama da bir bilet yönetim sistemi kullanır ve bir kullanıcı için bir sorun bulma ve düzeltme sürecini basitleştirir.
5. NUnit
JUnit’i temel alan NUnit, veri odaklı testleri destekleyen ve çeşitli platformlarla etkili bir şekilde entegre olan tamamen açık kaynaklı bir araçtır. Manuel testleri tamamladıktan sonra bile nicel verilere erişebilirsiniz, bu da herhangi bir sorunu düzeltmek isteyen geliştiriciler için daha fazla içgörü sağlar.
5 En İyi Ücretsiz Otomasyon Test Aracı
Manuel testin pek çok faydası olsa da, test süreçlerinizeotomasyon uygulamak bazen ideal bir yoldur.
Bu, yalnızca manuel teste odaklanmanın bazı dezavantajlarını ortadan kaldırmanıza yardımcı olurken, yazılım hakkında iyi bir genel bakış elde etmenizi sağlar. Otomasyon, başlamak için bazı araçlar gerektirir ve birçok geliştirici, çalışmalarına başlarken ve platformu kavrarken ücretsiz araçları kullanmayı tercih eder.
Mevcut en iyi ücretsiz otomasyon test araçlarından bazıları şunlardır:
1. ZAPTEST ÜCRETSIZ SÜRÜM
ZAPTEST Free Edition, test uzmanlarının otomasyonu işlerine entegre etmelerine yardımcı olmak için, platformlar arası olmaya ve kullanıcıların otomasyonu manuel testleri düzgün bir şekilde destekleyecek şekilde uygulamalarına odaklanarak tasarlanmıştır. ZAPTEST’in Ücretsiz Sürümü aracılığıyla yazılımın tüm yönleri otomatikleştirilebildiğinden, her türlü görev otomasyonu en önemli özelliktir.
2. Appium
Açık kaynaklı bir test otomasyon çerçevesi olan bu çerçeve, özellikle web mağazalarında çalışan uygulamalar için mobil cihazları otomatikleştirmeye odaklanır. Appium, iOS, Windows, Mobil, Web ve Android dahil olmak üzere bir dizi API ve işletim sistemi ile çalışır.
3. Katalon Platformu
Kodsuz bir çözüm olan Katalon, kodlama deneyimi olmayan test uzmanlarının daha iyi otomatik test çalışmaları yapmalarına yardımcı olur. Bu platformun bir dizi uzantı içeren bir mağazası vardır, ancak bu, test yazılımından en iyi şekilde yararlanmak için ihtiyaçlarınıza göre uyarlamak için çok fazla zaman ve potansiyel olarak para harcamanız gerektiği anlamına gelir.
4. Robotium
Kullanıcı kabulü ve gri kutu testini mümkün kılarken özellikle Android testini hedefleyen açık kaynaklı bir araçtır. Bu uygulama yüksek standartlarda çalışsa da, platformlar arası uygulamaların diğer tüm platformlarda test edilmesi gerekeceğinden, kullanıcılar için bazı riskler söz konusudur.
5. Loadster
Loadster, geniş kullanıcı tabanına sahip uygulamalarla çalışan şirketlere yardımcı olmak için tasarlanmış bir araçtır. Bu aracı kullanmak, geliştiricilerin trafikteki daha büyük zirvelere hazırlanmalarına ve şirketin sunucuları üzerinde önemli bir baskı olsa bile optimum performansa sahip olmalarına yardımcı olur. Loadster, manuel testlere yardımcı olmanın yanı sıra, bir test uzmanının yük dinlendirme gibi bazı görevlerini otomatikleştirebilir.
Sonuç
Sonuç olarak, manuel testler her kuruluş için bir değerdir. Test uzmanları, başka türlü görülemeyecek sorunları keşfedebilir ve bir uygulama hakkında otomasyonun yapamayacağı ayrıntılı geri bildirimler sağlayabilir.
Manuel testlerin bazı dezavantajları olsa da, akıllı şirketler giderek daha fazla manuel ve otomatik testlerden oluşan hibrit bir sistem kullanıyor ve her ikisinin de avantajlarından yararlanırken her birinin zayıf yönlerini hesaba katmaya yardımcı oluyor.
Manuel testler daha iyi yazılım geliştirmenin bel kemiğidir ve doğru kullanılması çıktılarınızda büyük bir fark yaratabilir.
SSS & Kaynaklar
Manuel test karmaşık bir konu olabilir, bu nedenle çalışma şekli hakkında daha fazla sorunuz olması anlaşılabilir bir durumdur. Zaman içinde daha iyi bir manuel test uzmanı olmayı öğrenirken yararlanabileceğiniz bazı kaynaklarla birlikte manuel test hakkında sıkça sorulan bazı sorulara bakın.
1. Manuel Test Otomasyonu üzerine en iyi kurslar
– “Test Otomasyonunun Temelleri” – Udemy
– “Test Otomasyonu Eğitim Kursları” – NobleProg
– “Manuel Test Eğitimi – Birleşik Krallık” – The Knowledge Academy
– “Manuel ve Otomasyon Testleri” – IT Talent Hub
2. Manuel Test ile ilgili en iyi 5 mülakat sorusu nelerdir?
– “Manuel test konusunda deneyiminiz var mı?” – Bir adayın test ortamlarında çalışma deneyiminin olup olmadığını belirler.
– “Manuel test ile test otomasyonu arasındaki fark nedir?” – Bir adayın test süreçleri hakkında temel teknik bilgiye sahip olup olmadığını belirler.
– “Bir yazılım testi ortamında zorlukların üstesinden nasıl geldiniz?” – Bir adayın manuel test alanında sahip olduğu problem çözme becerilerini değerlendirir.
– “Manuel testleri desteklemek için ideal araç nedir?” – Adayın kullandığı iş akışları ve bunun şirkete uygun olup olmadığı hakkında daha iyi bir fikir oluşturur.
– “Bir ekip içinde rahat çalışabiliyor musunuz?” – Mülakatı yapan kişinin, başvuru sahibinin daha büyük bir grupta çalışıp çalışamayacağını bilmesini sağlayın.
3. Manuel Test Üzerine En İyi Youtube Eğitimleri
– “Manuel Test (Tam Kurs)” – SDET- QA Otomasyon Teknisyeni
– “YAZILIM TESTİ TUTORIAL – Yazılım Testinde Ustalaşın ve Testte İşi Çatlatın” – Software Testing Mentor
– “Manuel Test Nedir? | Yeni Başlayanlar İçin Manuel Test Eğitimi | Edureka” – edureka!
– “Manuel Test (Fonksiyonel) Kavramları” – Naveen AutomationLabs
– “Manuel Test Eğitimleri” – Yazılım Test Akademisi
4. Manuel Testlerin Bakımı Nasıl Yapılır?
Manuel testleri sürdürmek için yapabileceğiniz birkaç şey vardır, bunlardan ilki test uzmanlarına göz kulak olmaktır. Refahı test süreçlerinin merkezine koyarak, herkesin dikkatini vermek ve en üst düzeyde performans göstermek için uygun durumda olduğundan emin olursunuz.
Buna ek olarak, iyi destek yapılarına sahip olmaya odaklanın. Bu, testlerin tutarlı olmasını ve mümkün olan her yerde doğru çıktılar vermesini sağlayan yöneticilerin gözetimi anlamına gelir.
Sıkı bir mekanik veya otomatik bakım söz konusu değildir, ancak insanlarla ilgilenmek, testlerinizi sürdürmenin bir şeklidir.