Get your 6-month No-Cost Opt-Out offer for Unlimited Software Automation?

Fonksiyonel olmayan test, bir yazılım uygulamasının fonksiyonel olmayan yönlerini test etmek için gerçekleştirilen yazılım testini ifade eder.

Çok sayıda farklı fonksiyonel olmayan test türü vardır ve bazı yazılım testi türleri aynı anda hem fonksiyonel test hem de fonksiyonel olmayan test olarak kabul edilebilir.

Fonksiyonel olmayan testler, performans ve kullanılabilirlik gibi temel kullanıcı kriterlerini değerlendirdiği ve yazılımın temel işlevselliği dışında beklendiği gibi çalışıp çalışmadığını doğruladığı için gereklidir.

Bu makalede, fonksiyonel olmayan testin tanımı ve özelliklerinin yanı sıra fonksiyonel olmayan test türleri, fonksiyonel olmayan test yaklaşımları ve kendi fonksiyonel olmayan test süreçlerinizi optimize etmenize ve geliştirmenize yardımcı olabilecek test araçları incelenmektedir.

 

Table of Contents

Fonksiyonel olmayan test nedir?

kontrol listesi uat, web uygulama test araçları, otomasyon ve daha fazlası

Fonksiyonel olmayan test, yazılım yapısının fonksiyonel olmayan yönlerinin test edildiği her türlü yazılım testidir.

İşlevsel olmayan testlere örnek olarak kapasite, performans, kullanılabilirlik, kurtarma ve taşınabilirliği değerlendirmek için tasarlanmış testler verilebilir.

Bu işlevsel olmayan kriterlerin her birinin kalitesini ve durumunu doğrulamak, bir yazılım parçasının işlevlerini doğrulamak kadar önemlidir, ancak bu parametreler standart işlevsel testlerde test edilmez.

Esasen, fonksiyonel olmayan test, yazılım fonksiyonlarının ‘çalışıp çalışmadığını’ test etmek yerine ‘nasıl’ çalıştığını test etmek anlamına gelir.

 

1. Fonksiyonel olmayan testlere ne zaman ihtiyaç duyarsınız?

 

Fonksiyonel olmayan testler, birim testi ve entegrasyon testi yapıldıktan sonra yazılım testinin sistem testi aşamasında gerçekleştirilir.

Sistem testleri sırasında, test uzmanları fonksiyonel testlerden başlayarak hem fonksiyonel hem de fonksiyonel olmayan testler gerçekleştireceklerdir.

Test uzmanları yazılımın beklendiği gibi çalıştığını tespit ettikten sonra, işlevsel olmayan parametreleri de karşılayıp karşılamadığını değerlendirmek için işlevsel olmayan testler gerçekleştirirler.

Genellikle fonksiyonel testlerin fonksiyonel olmayan testlerden önce yapılması gerekir çünkü hiç çalışmayan fonksiyonların güvenilirliğini veya performansını test etmek imkansızdır. Fonksiyonel olmayan test, kullanıcı kabul testi ve nihai ürün sürümünden önce yazılım testinin son aşamalarından biridir.

 

2. İşlevsel olmayan testlere ihtiyacınız olmadığında

 

Daha önce test edilmemiş ve yeterli bulunmamışlarsa, yazılımın işlevsel olmayan yönlerini test etmek her zaman önemlidir.

Yazılım üzerinde daha önce fonksiyonel olmayan testler gerçekleştirmiş olsanız bile, örneğin yazılıma yeni özellikler eklenmişse veya kodda performansı ve güvenilirliği etkileyebilecek değişiklikler yapılmışsa, fonksiyonel olmayan parametreleri tekrar test etmeniz gerekebilir.

 

Fonksiyonel olmayan testlerin amaçları

yazılım test otomasyonundaki bazı karışıklıkları gidermek

Fonksiyonel olmayan testlerin amacı, ürünün kullanıcı beklentilerini karşılayıp karşılamadığını kontrol etmek ve piyasaya sürülmeden önce ürünü optimize etmektir.

Ayrıca geliştiricilerin ve test uzmanlarının yazılımı daha iyi anlamalarına ve bu bilgiyi gelecekteki optimizasyonlarda kullanmalarına yardımcı olabilir.

 

1. Kalite kontrol

 

Fonksiyonel olmayan testler, ürünün kullanılabilirliğini, güvenilirliğini, sürdürülebilirliğini, taşınabilirliğini ve verimliliğini etkileyen faktörleri test etmeyi amaçlar.

Bu unsurların test edilmesi, piyasaya sürülen ürünün uygun şekilde yüksek kalitede olmasını ve performans, yükleme süreleri ve kullanıcı kapasitesi açısından kullanıcı beklentilerini karşılamasını sağlar.

 

2. Risk yönetimi

 

Fonksiyonel olmayan testler, ekibin tatmin edici bir ürün çıkarma şansını en üst düzeye çıkararak bir ürünün piyasaya sürülmesiyle ilgili risk ve maliyeti de azaltır.

Yazılım yapısının işlevsel olmayan parametrelerini kontrol ederek, ürünü piyasaya sürme maliyetlerini azaltmak mümkündür, çünkü daha sonra daha fazla geliştirme ve yazılım değişikliği ihtiyacı azalır.

 

3. Optimizasyon

 

Fonksiyonel olmayan testler, test uzmanlarının ve geliştiricilerin yazılım derlemesini optimize etmelerine ve kurulum, ayarlama, yürütme ve kullanım sırasında performansı optimize etmelerine yardımcı olur.

İşlevsel olmayan testleri, yazılım oluşturma sürecini yönetme ve izleme şeklinizi optimize etmek için de kullanabilirsiniz.

 

4. Veri toplama

 

Fonksiyonel olmayan testler, test uzmanlarının test ekipleri tarafından dahili araştırma ve geliştirme için kullanılabilecek ölçümler ve metrikler toplamasına ve üretmesine olanak tanır.

İşlevsel olmayan testlerden elde ettiğiniz verileri, ürününüzün nasıl çalıştığını ve kullanıcılar için nasıl daha etkili bir şekilde optimize edebileceğinizi anlamak için kullanabilirsiniz.

 

5. Bilgi geliştirme

 

Fonksiyonel olmayan testler, test ekibinin ürün davranışı ve kullandığı teknolojiler hakkındaki bilgisini geliştirir ve artırır.

Bu sadece test ekiplerinin üzerinde çalıştıkları yazılımı daha iyi anlamalarına yardımcı olmakla kalmaz, aynı zamanda test uzmanlarının gelecekteki yapıları daha iyi anlamalarına yardımcı olacak yararlı bilgiler de sağlayabilir.

 

Fonksiyonel olmayan testlere kimler katılır?

yazılım testine kimler katılıyor

Fonksiyonel olmayan testler genellikle QA ortamındaki test uzmanları tarafından gerçekleştirilir, ancak bazen geliştiriciler geliştirme sırasında fonksiyonel olmayan testler gerçekleştirebilir.

Sistem testi neredeyse her zaman test uzmanları tarafından gerçekleştirilir ve bu, fonksiyonel olmayan testlerin çoğunun gerçekleştirildiği test aşamasıdır.

Fonksiyonel olmayan testler başarısız olursa, test uzmanları tekrar test etmeden önce performans hatalarını düzeltmeleri için yazılımı geliştiricilere geri gönderir.

 

Fonksiyonel olmayan testlerin faydaları

kullanıcı kabul testi (UAT)

Fonksiyonel olmayan testler yapmanın birçok faydası vardır ve fonksiyonel olmayan testler sistem testlerinde önemli bir adımdır.

Fonksiyonel olmayan testler olmadan, test ekipleri yazılımın müşterinin gereksinimlerini gerçekten karşıladığını veya yazılım geliştirme planında belirtilen gereksinimleri karşıladığını doğrulayamaz.

 

1. Yazılım performansını iyileştirin

 

Fonksiyonel olmayan testler, test uzmanlarının ve geliştiricilerin yazılım uygulamalarının genel performansını iyileştirmelerine yardımcı olabilir. Fonksiyonel olmayan testler, örneğin yükleme hızı veya işlem kapasitesi açısından yazılım performansının eksik olduğu alanları belirler ve yazılım ekiplerini bu kusurları düzeltmek için değişiklikler yapmaya yönlendirir.

Bu, yazılım ekiplerinin yazılımı yalnızca hazır olduğunda ve performansı yeterince iyi olduğunda halka sunmasını sağlar.

 

2. Yazılımı güvende tutun

 

Fonksiyonel olmayan testler, bir yazılım yapısının güvenli olmasını ve dış tehditlere ve saldırılara karşı korunmasını sağlamak için kritik öneme sahip olan güvenlik testlerini içerir.

Güvenlik testi, test uzmanlarının ve geliştiricilerin yazılımın gizli verileri yeterince koruyup korumadığını ve çağdaş siber saldırılara karşı yeterli güvenliğe sahip olup olmadığını kontrol etmelerini sağlar.

 

3. Yazılımın kullanıcı dostu olma özelliğini arttırmak

 

Fonksiyonel olmayan testler, özellikle kullanıcıların yazılımınızı nasıl kullanacaklarını ve çalıştıracaklarını öğrenmelerinin ne kadar kolay olduğunu değerlendiren kullanılabilirlik testleri yaparak yazılımınızı daha kullanıcı dostu hale getirmenin en iyi yoludur.

Kullanıcı dostu olmak çok önemlidir çünkü kullanıcıların yazılımınızdan ne kadar memnun olduklarını belirler ve kullanıcıların yazılımınızın sunduğu her şeyden tam olarak yararlanabilmelerini sağlar.

 

4. Yazılımın kullanıcı ihtiyaçlarını karşıladığından emin olun

 

Yazılımın kullanıcıların ihtiyaçlarını karşılamasını sağlamak, tüm yazılım geliştirme ve test ekiplerinin en önemli önceliklerinden biri olmalıdır. Kullanıcılar, yazılımın işlevsel olmasını beklemenin yanı sıra, yazılımın iyi performans göstermesini, sorunsuz çalışmasını ve gizli verileri korumasını bekler.

Fonksiyonel olmayan testler, yazılımınızın bu gereksinimleri karşıladığından emin olmanın tek yoludur.

 

Fonksiyonel olmayan testlerin zorlukları

Fonksiyonel olmayan testler yapmanın bazı dezavantajları vardır. Fonksiyonel olmayan testler, yazılım testinin sistem testi aşamasında çok önemli olsa da, fonksiyonel olmayan test süreci, yeterli kaynak ve araca sahip olmayan yazılım ekipleri için zorluk teşkil edebilir.

 

1. Tekrarlama

 

Yazılım testlerinde fonksiyonel olmayan testler, yazılım geliştiriciler tarafından her güncellendiğinde veya kod her değiştirildiğinde gerçekleştirilmelidir. Bu, fonksiyonel olmayan testlerin çok tekrarlı olabileceği anlamına gelir, bu da sadece zaman almakla kalmaz, aynı zamanda test uzmanlarını da yorar.

Çok tekrarlayan görevleri yerine getiren yorgun test uzmanlarının dikkatlerinin dağılması ve hata yapma olasılıkları da daha yüksektir.

 

2. Maliyet

 

Fonksiyonel olmayan testler çok tekrarlı olduğundan, özellikle manuel fonksiyonel olmayan testlere güvenen test ekipleri için oldukça maliyetli olabilir.

Yazılım ekipleri sık sık yapılan fonksiyonel olmayan testler için zaman ve bütçe ayırmalıdır ve yazılım geliştiricilerin bu ek testler için ekstra ödeme yapması gerekecektir.

 

Fonksiyonel olmayan testlerde neyi test ediyoruz?

 

Fonksiyonel olmayan testler, her biri sistemin kalitesini ve kullanılabilirliğini etkileyen birçok farklı fonksiyonel olmayan parametreyi test etmek için kullanılabilir. Bu parametrelerin her biri, test planında belirlenen kriterlere göre sistem testi sırasında test edilir.

 

1. Güvenlik

 

Güvenlik testi, bir sistemin dış tehditlere ve saldırılara karşı ne kadar iyi korunduğunu ölçen işlevsel olmayan bir test türüdür. Bunlar arasında kasıtlı güvenlik ihlallerinin yanı sıra veri sızıntıları ve diğer yaygın ihlaller de yer almaktadır.

Güvenlik testi, fonksiyonel olmayan testlerde önemli bir adımdır çünkü son kullanıcılara ve müşterilere verilerinin güvende olduğuna dair güvence sağlar.

 

2. Güvenilirlik

 

Test uzmanları, yazılımın güvenilirliğini değerlendirmek ve yazılımın belirtilen işlevlerini hatasız bir şekilde sürekli olarak yerine getirebilmesini sağlamak için işlevsel olmayan testleri kullanır.

İşlevsel testler yazılımın temel işlevlerini yerine getirmesini sağlarken, yalnızca işlevsel olmayan testler bu sonuçların güvenilirliğini ve tekrarlanabilirliğini test eder.

 

3. Hayatta Kalabilirlik

 

Beka kabiliyeti, bir yazılım sisteminin çalışmaması durumunda nasıl tepki vereceğini açıklar ve beka kabiliyeti testi, hatalar ve arızalar meydana gelirse sistemin kendini kurtarabilmesini sağlar.

Beka testi, örneğin ani bir arıza durumunda veri kaybını en aza indirmek için yazılımın verileri kaydedip kaydedemeyeceğini kontrol edebilir.

 

4. Kullanılabilirlik

 

Yazılımın kullanılabilirliği, kullanıcının çalışması sırasında sisteme ne derece güvenebileceğini ifade eder. Buna stabilite de denir ve stabilite testi ile test edilir.

Kararlılık testi, sistemin tutarlı bir şekilde beklenen standartlarda performans gösterip göstermediğini kontrol ettiği için güvenilirlik testine benzerlik gösterir.

 

5. Kullanılabilirlik

 

Kullanılabilirlik testi, yazılım testindeki bir diğer önemli fonksiyonel olmayan test türüdür. Bu test türü, kullanıcının ekranda verilen talimatları ve diğer temel kılavuzları takip ederek yazılım sistemini ne kadar iyi öğrenebildiğini, çalıştırabildiğini ve kullanabildiğini değerlendirir.

Kullanılabilirlik testi önemlidir çünkü yazılım yüksek düzeyde kullanılabilir değilse, çoğu kullanıcı yazılımı terk edecek veya başka bir şey kullanmayı tercih edecektir.

 

6. Ölçeklenebilirlik

 

Ölçeklenebilirlik testi, bir yazılım uygulamasının artan talebi karşılamak için işlem kapasitesini ne ölçüde genişletebileceğini test eder.

Örneğin, yazılım tek bir ağ üzerinde aynı anda birden fazla kullanıcı tarafından kullanılmak üzere tasarlanmışsa, on kullanıcı aynı anda oturum açtığında nasıl çalışır? Daha yüksek kullanıcı sayıları performansı veya yükleme sürelerini önemli ölçüde etkiliyor mu?

 

7. Birlikte Çalışabilirlik

 

Birlikte çalışabilirlik testi, bir yazılım sisteminin diğer yazılım sistemleriyle ne kadar iyi arayüz oluşturduğunu kontrol eden fonksiyonel olmayan bir test türüdür.

Bu, özellikle yazılım birbiriyle entegre olan bir ürün paketinin parçası olarak tasarlandığında önemlidir.

 

8. Verimlilik

 

Yazılım testinde verimlilik, bir yazılım sisteminin kapasite, miktar ve yanıt süresini ne ölçüde karşılayabildiğini ifade eder.

Örneğin, test uzmanları aynı anda kaç kullanıcının sisteme giriş yapabildiğini, veritabanından veri almanın ne kadar sürdüğünü veya yazılımın temel görevleri ne kadar hızlı yerine getirebildiğini değerlendirebilir.

 

9. Esneklik

 

Esneklik, bir yazılım sisteminin farklı donanım ve çevre birimleriyle çalışabilme derecesini ölçer.

Örneğin, yazılımın ne kadar RAM gerektirdiği veya belirli bir CPU miktarına ihtiyaç duyup duymadığı. Yazılım uygulaması için gereksinimler ne kadar düşük olursa, yazılım o kadar esnek olur.

 

10. Taşınabilirlik

 

Taşınabilirlik testi, yazılımın mevcut donanım veya yazılım ortamından ne kadar esnek bir şekilde aktarılabileceğini ve bunu yapmanın ne kadar kolay olduğunu test etmek için kullanılır.

Taşınabilirlik önemlidir çünkü son kullanıcıların yazılımı ne kadar kolay yönetebileceğini ve farklı sistemler arasında ne kadar kolay taşıyabileceğini etkiler.

 

11. Yeniden kullanılabilirlik

 

Yeniden kullanılabilirlik testi, yazılım sisteminin parçalarının başka bir uygulama içinde yeniden kullanılmak üzere dönüştürülüp dönüştürülemeyeceğini test eden bir tür fonksiyonel olmayan testtir.

Yeniden kullanılabilirlik testi genellikle müşterileri ve son kullanıcıları etkilemese de, geliştiricilerin gelecekte yeniden kullanılabilecek bileşenleri ne kadar etkili bir şekilde oluşturduklarının iyi bir yansımasıdır.

 

Fonksiyonel olmayan testlerin özellikleri

Fonksiyonel olmayan testlerin ne olduğunu anlamak, fonksiyonel olmayan testlerin özelliklerini anlamayı gerektirir. Bu özellikler yazılım testinde fonksiyonel olmayan testi tanımlar.

 

1. Ölçülebilir

 

İşlevsel olmayan testler her zaman niceliksel ve ölçülebilirdir; bu da test uzmanlarının “güzel” veya “iyi” gibi öznel ifadeler kullanmadığı, bunun yerine işlevsel olmayan testlerin çıktılarını tanımlamak için sayılar ve gerçekler kullandığı anlamına gelir.

Örneğin, yükleme sürelerini ‘hızlı’ veya ‘yavaş’ olarak tanımlamak yerine, işlevsel olmayan testler kaç kez yapıldığını gösteren belirli rakamlarla sonuçlanmalıdır.

 

2. Spesifik

 

Fonksiyonel olmayan testler gerçekleştirilirken, testlerin amacı yazılımın tasarım özelliklerine özgü olmalıdır.

Örneğin, yazılım projesi planında aynı anda oturum açabilmesi gereken kullanıcı sayısından bahsediliyorsa, fonksiyonel olmayan testler yapılırken buna öncelik verilmelidir.

 

3. Bilinmiyor

 

Fonksiyonel olmayan testler, proje planlarında belirtilen özellikleri ölçmek için özel olarak tasarlanabilirken, çoğu durumda bu özellikler önceden belirtilmeyecektir.

Bu durumda, test uzmanları yazılımı her bir parametreye göre değerlendirmek ve daha sonra bunları beklentilerle karşılaştırmak için basitçe işlevsel olmayan testler gerçekleştirmelidir.

 

Fonksiyonel olmayan testlerin yaşam döngüsü

Fonksiyonel olmayan test, yazılım testi yaşam döngüsünde belirli bir aşamaya değil, genellikle yazılım testinin sistem testi aşamasında gerçekleşen bir test türüne atıfta bulunduğundan, fonksiyonel olmayan testin yaşam döngüsü projeler arasında büyük farklılıklar gösterebilir.

Genel olarak, proje gereksinimlerinin analiz edilmesiyle başlayan ve testin yürütülmesi ve döngünün tamamlanmasıyla sona eren diğer yazılım testi türlerine benzer bir yaşam döngüsünü takip eder.

 

1. Yazılım gereksinim analizi

 

Fonksiyonel olmayan testler için yaşam döngüsünün ilk aşaması yazılım gereksinimlerinin analizidir. Yazılım ekipleri uygulamaları oluştururken ve test ederken belirli kriterler doğrultusunda çalışırlar ve bu kriterler ne tür testlerin yapılması gerektiğini belirlemelidir.

 

2. Test planlaması

 

Yaşam döngüsünün bir sonraki aşaması test planlamasıdır. Test planlama aşamasında, QA lideri neyin test edileceğini, testi kimin yapacağını ve hangi test yaklaşımlarının, yöntemlerinin ve araçlarının kullanılacağını detaylandıran ayrıntılı bir test planı hazırlayacaktır.

Test planı, test uzmanlarının test senaryoları oluşturmak ve yürütmek için ihtiyaç duydukları tüm gerekli ayrıntıları içermelidir.

 

3. Test senaryosu oluşturma

 

Test senaryosu oluşturma, fonksiyonel olmayan testlerin bir sonraki aşamasıdır. Bu aşama, test uzmanlarının sistemin işlevsel olmayan gereksinimlerini test etmek için daha sonraki bir aşamada yürütecekleri işlevsel olmayan test senaryolarının geliştirilmesini içerir.

Test senaryoları neyin test edileceğini, nasıl test edileceğini ve testten beklenen sonucun ne olduğunu açıklar.

 

4. Test ortamı kurulumu

 

Fonksiyonel olmayan test yaşam döngüsündeki bir sonraki aşama, test başlamadan önce test ortamının oluşturulmasıdır.

Test ortamı, tüm testlerin yapıldığı yerdir ve fonksiyonel olmayan testleri yürütmek için kullanacağınız kaynaklara ve araçlara ev sahipliği yapar.

Test ekibi, test uygulamasından önce test ortamını hazırlar.

 

5. Test yürütme

 

Test yürütme, fonksiyonel olmayan test yaşam döngüsünün bir sonraki aşamasıdır. Güvenlik, yükleme süreleri, kapasite ve taşınabilirlik gibi yazılım uygulamalarının farklı yönlerini test etmek için daha önce oluşturulan test senaryolarının yürütülmesini içerir.

Test ekibi her bir vakayı ayrı ayrı yürütür ve her bir testin sonucunu beklenen sonuçla karşılaştırarak kontrol eder.

 

6. Döngü tekrarı

 

Fonksiyonel olmayan test yaşam döngüsünün son aşaması, döngünün tamamlanması ve tekrarlanmasıdır. Tüm test senaryoları yürütüldükten sonra, test uzmanları hangi testlerin geçtiğini ve hangi testlerin başarısız olduğunu kontrol eder.

Başarısız olan testler genellikle geliştiriciler tarafından düzeltilmesi gereken bir hata olduğunu gösterir. Geliştiriciler kodu yamaladıktan veya düzenledikten sonra, yazılım test döngüsü hiçbir kusur bulunmayana kadar tekrarlanır.

 

Bazı karışıklıkları gideriyorum:

Fonksiyonel testlere karşı fonksiyonel olmayan testler

UAT testinin regresyon testi ve diğer testlerle karşılaştırılması

Fonksiyonel test ve fonksiyonel olmayan test, bir yazılım uygulamasının proje özetinde belirtilen kullanıcı gereksinimlerini karşılayıp karşılamadığını değerlendirmek için birlikte kullanılan iki farklı ancak eşit derecede önemli yazılım testi türüdür.

Her ikisi de yazılım ekiplerinin yazılım yapılarındaki hataları tespit etmesini sağlayan gerekli test türleri olsa da, işlevsel ve işlevsel olmayan testler birbirinden tamamen farklıdır.

 

1. Fonksiyonel ve fonksiyonel olmayan testler arasındaki fark nedir?

 

Fonksiyonel ve fonksiyonel olmayan testler arasındaki fark, neyi test ettikleridir. İşlevsel test, uygulamanın işlevlerini test eder ve beklendiği gibi çalışıp çalışmadığını kontrol eder. Fonksiyonel olmayan testler, uygulamanın kullanıcı memnuniyetini ve uygulama kalitesini etkileyen diğer yönlerini test eder.

Fonksiyonel ve fonksiyonel olmayan testler yazılım testinin farklı aşamalarında gerçekleşir, ancak her iki test türü de genellikle sistem testi aşamasında gerçekleştirilir.

Hem fonksiyonel hem de fonksiyonel olmayan testler, bir uygulamanın ne kadar iyi çalıştığını ve işini yeterince yerine getirip getirmediğini anlamamıza yardımcı olabilir.

Örneğin, kullanıcıların yapılacaklar listelerini ve alışveriş listelerini kaydetmelerine olanak tanıyan bir mobil uygulamayı test ediyorsanız, işlevsel testler yeni bir liste oluşturma, bir listeyi kaydetme ve mevcut listelerde düzenlemeler yapma gibi işlevleri test edebilir.

Fonksiyonel olmayan testler, uygulamanın farklı mobil cihazlarda ne kadar iyi çalıştığını, listelerin ne kadar hızlı yüklendiğini ve arka planda başka uygulamalar çalışırken uygulama performansının ne kadar etkilendiğini değerlendirebilir.

 

2. Sonuç: fonksiyonel testlere karşı fonksiyonel olmayan testler

 

Hem işlevsel hem de işlevsel olmayan testler, test uzmanlarının ve QA ekiplerinin bir uygulamanın mevcut gereksinimlerini karşılayıp karşılamadığını değerlendirmelerine yardımcı olabilecek önemli yazılım testi türleridir.

Fonksiyonel testler yazılımın işlevlerini test ederken, fonksiyonel olmayan testler performansı, verimliliği ve güvenliği etkileyebilecek diğer hususları test eder.

Birim testi, entegrasyon testi ve API testi, işlevsel testin tüm biçimleridir. Yazılım testinin bu aşamalarının her birinde, test uzmanları işlevlerin ve özelliklerin tek tek veya birlikte ne kadar iyi çalıştığını değerlendirir ve işlevlerin beklendiği gibi çalışmasını engelleyen hataları ve kusurları belirler.

Güvenlik testi, kullanılabilirlik testi, taşınabilirlik testi ve yük testi, test uzmanlarının bir uygulamanın işlevlerini ne kadar iyi yerine getirdiğini ve kullanıcıların ihtiyaçlarını ne kadar desteklediğini değerlendirmesine olanak tanıyan işlevsel olmayan test türleridir.

 

Fonksiyonel olmayan test türleri

Fonksiyonel olmayan testler: nedir, farklı türleri, yaklaşımları ve araçları

Her biri bir yazılım uygulamasının performansının veya verimliliğinin farklı bir işlevsel olmayan yönünü test eden çok sayıda farklı işlevsel olmayan test türü vardır.

Bu test türlerinin her biri farklı parametreleri test eder ve bazı testler aynı parametreleri farklı şekillerde test edebilir.

 

1. Performans testleri

 

Performans testleri, farklı yazılım bileşenlerinin ne kadar iyi çalıştığını kontrol eden fonksiyonel olmayan bir test türüdür. Performans testleri, işlevsel testlerin yaptığı gibi işlevselliklerini test etmek yerine yanıt sürelerini, darboğazları ve arıza noktalarını test edebilir. Performans testleri, test uzmanlarının yazılımın yüksek kalitede, hızlı, istikrarlı ve güvenilir olmasını sağlamasına yardımcı olur.

 

2. Stres testleri

 

Stres testi, yazılımın anormal miktarda stres altında kaldığında ne kadar iyi performans gösterdiğini test eden bir tür işlevsel olmayan testtir. Bu, bir kişi aynı anda birçok farklı özelliği kullanmaya çalıştığında veya aynı anda birçok başka uygulamayı çalıştırırken yazılımın nasıl performans gösterdiğini test etmek anlamına gelebilir.

Stres testi, yazılımın düzgün çalışmayı bıraktığı sınırı ve sistem stres altındayken neler olduğunu belirlemeye çalışır. Test uzmanlarının sistemin kendini kurtarıp kurtaramadığını ve kullanıcıları uygun hata mesajlarıyla bilgilendirip bilgilendirmediğini anlamalarını sağlar.

 

3. Yük testleri

 

Yük testi, yazılımın hem normal koşullar altında hem de daha ağır yüklerle uğraşırken ne kadar iyi davrandığını değerlendiren bir test türüdür. Performans olumsuz etkilenmeden yazılımın aynı anda ne kadarını kaldırabileceğini belirlemek için kullanılır.

Yük testi, çok sayıda kullanıcı aynı anda kullandığında veya kullanıcılar aynı anda çok sayıda veri indirmeye çalıştığında uygulamaların nasıl çalıştığını test etmek için kullanılabilir.

Yazılımınızın ölçeklenebilir olup olmadığını kontrol etmek istiyorsanız yük testi önemlidir.

 

4. Güvenlik testleri

 

Güvenlik testleri yazılım uygulamalarını değerlendirir ve yazılımın güvenliğindeki açıkları arar. Bunlar arasında veri kaybına veya gizli verileri açığa çıkaran ihlallere neden olabilecek potansiyel güvenlik riskleri de yer almaktadır.

Güvenlik testi önemlidir çünkü ürünün bilgisayar korsanlığı, veri ihlalleri ve diğer harici güvenlik tehditlerine karşı yeterince korunmasını sağlar.

Test uzmanlarının gerçekleştirebileceği güvenlik testlerinin bazı örnekleri arasında güvenlik denetimleri, etik hackleme, sızma testleri, güvenlik taramaları ve duruş değerlendirmeleri yer alır.

 

5. Yükseltme ve kurulum testleri

 

Yükseltme ve kurulum testi, yazılımın farklı makinelerde ne kadar iyi çalıştığını doğrulayan işlevsel olmayan bir yazılım testi türüdür.

Bu tür bir testin amacı, yeni kullanıcıların yazılımı makinelerine kolayca yükleyebilmelerini ve mevcut kullanıcıların yeni yükseltmeler yayınlandığında yazılımı yükseltebilmelerini sağlamaktır.

Yükseltme ve kurulum testleri önemlidir çünkü son kullanıcılar, ürününüzle uyumlu bir makineyle çalıştıkları sürece ürününüzü kolayca kurabilmelidir.

 

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

6. Hacim testleri

 

Hacim testi, veritabanına tek seferde büyük hacimlerde veri eklendiğinde ne olduğunu doğrulamak için var olan bir test türüdür. Bu, uygulamanın büyük hacimli verileri işleyip işleyemeyeceğini ve işleyemediği takdirde sisteme ne olacağını belirler.

Hacim testi, taşma testi olarak da bilinir ve sisteme önemli miktarda veri eklendiğinde ortaya çıkan veri kaybını ve hata mesajlarını değerlendirmek için kullanabilirsiniz.

Hacim testi, yazılımın kullanıcıların kendisinden beklediği veri hacimlerini kaldırabilmesini sağlamanın tek yoludur.

 

7. Kurtarma testleri

 

Kurtarma testleri, bir çökmeden sonra sistemin kendini ne kadar iyi kurtardığını test etmek için yazılım sistemini başarısız olmaya zorlamayı içerir.

Kurtarma testi, test uzmanlarının kullanım sırasında donanımın fişinin çekilmesi, veri aktarımı sırasında yazılımın ağ bağlantısının kesilmesi veya sistemi beklenmedik bir şekilde yeniden başlatmanız durumunda yazılımın verileri nasıl kurtardığını ve kayıpları nasıl önlediğini anlamalarına yardımcı olabilir.

Bu tür testler önemlidir çünkü uygun kurtarma protokolleri olmayan sistemler bu tür kazalar meydana geldiğinde ciddi veri kayıplarına uğrayabilir.

 

Fonksiyonel olmayan testlere başlamak için ihtiyacınız olanlar

Yük testi nedir?

Fonksiyonel olmayan testlere başlamadan önce, test ortamını hazırladığınızdan ve ihtiyacınız olan araçları ve verileri bir araya getirdiğinizden emin olmanız gerekir.

 

1. Test planı

 

Fonksiyonel olmayan testlere başlamadan önce, uygun kişiler tarafından imzalanmış bitmiş bir test planınız olduğundan emin olun.

Test planınız, neyi nasıl test edeceğinize ilişkin tüm ilgili ayrıntıları içermelidir. Ne zaman manuel test kullanacağınızı ve ne zaman otomatik test kullanacağınızı açıklamalı ve test sürecine dahil olan herkesin rollerini ve sorumluluklarını ana hatlarıyla belirtmelidir.

 

2. Test senaryoları

 

Fonksiyonel olmayan testleri gerçekleştirmeden önce test senaryoları oluşturmanız gerekir. Her test senaryosu, test edeceğiniz belirli bir şeyi ana hatlarıyla belirtir, nasıl test edeceğinizi açıklar ve testin beklenen sonucunu tanımlar.

Örneğin, yük testi yapıyorsanız, örnek bir test senaryosu, on kullanıcı aynı anda aynı modülü kullandığında yazılımın nasıl davrandığını test etmek olabilir.

 

3. Fonksiyonel doğrulama

 

İşlevsel olmayan yazılım bileşenleri üzerinde işlevsel olmayan testler gerçekleştiremezsiniz.

Örneğin, yazılımın aynı anda kaç kullanıcının oturum açmasını sağlayabileceğini test etmek istiyorsanız, öncelikle tek tek kullanıcıların yazılıma gerçekten giriş yapabildiğini doğrulamanız önemlidir.

Fonksiyonel olmayan testlere başlamadan önce, tüm fonksiyonel testlerinizin geçtiğinden ve yazılımınızın beklediğiniz gibi çalıştığından emin olun.

Bu genellikle duman testi, akıllılık testi, birim testi, entegrasyon ve işlevsel sistem testlerinin zaten gerçekleştirilmiş olduğu anlamına gelir.

 

4. Test araçları

 

Fonksiyonel olmayan testlere başlamadan önce, testlerinizi gerçekleştirmek için kullanmak istediğiniz test araçlarını bir araya getirin.

İster otomasyon araçlarını kısmen bazı testlerinizi otomatikleştirin veya test raporlarını daha sonra kullanmak üzere yönetmenize ve saklamanıza yardımcı olacak dokümantasyon araçlarını kullanmak istiyorsanız, kullanmak istediğiniz araçların mevcut ve kullanıma hazır olduğundan ve test ekibindeki herkesin her bir aracı doğru şekilde nasıl kullanacağını bildiğinden emin olun.

 

5. Test ortamı

 

Fonksiyonel olmayan testlere başlamadan önce test ortamını kurun. Özellikle fonksiyonel olmayan sistem testi ve fonksiyonel sistem testi için aynı ortamı kullanabiliyorsanız, zaten uygun bir test ortamına sahip olabilirsiniz.

İdeal test ortamı, ihtiyacınız olan her unsuru doğru cihazlarda test etmenize olanak tanır.

Örneğin, akıllı telefon cihazlarında ses işleme özelliğini test ediyorsanız, bunu masaüstü bilgisayarda mobil ortamı taklit etmeye çalışmaktansa gerçek bir akıllı telefon cihazında test etmek daha iyidir.

 

Fonksiyonel olmayan test süreci

Birim testi nedir

Bir yazılım yapısının işlevsel olmayan yönlerinin test edilmesi, test ortamının hazırlanmasını, test senaryolarının oluşturulmasını, test verilerinin toplanmasını ve işlevsel olmayan testlerin yürütülmesini içeren çok adımlı bir süreçtir.

Fonksiyonel olmayan testlere yeni başlayanlar için test sürecini takip etmeyi kolaylaştırmak amacıyla küçük parçalara ayırmak mümkündür.

 

1. Fonksiyonel olmayan test hazırlık kontrolleri

 

Fonksiyonel olmayan testlere başlamadan önce, testin bu aşamasına hazır olduğunuzu doğrulamanız önemlidir.

Bu, yazılımın testin son aşamasını geçtiğinden emin olmak için çıkış kriterlerini değerlendirmek ve fonksiyonel olmayan testler yapılmadan önce yazılımın gerekli tüm fonksiyonel testleri geçtiğinden emin olmak anlamına gelebilir.

Bazı ekipler, fonksiyonel olmayan testler için, fonksiyonel olmayan testler başlamadan önce karşılanmış olması gereken tüm koşulları içeren giriş kriterleri oluşturabilir.

 

2. Bir test planı oluşturun

 

Sistem testinin bir parçası olarak fonksiyonel olmayan testler gerçekleştiriyorsanız ve sistem test planınızı takip ediyorsanız bu adımı daha önce gerçekleştirmiş olabilirsiniz. Bir test planı, gerçekleştirmeniz gereken tüm testleri ve bunları nasıl gerçekleştirmeyi planladığınızı ana hatlarıyla belirtir.

Net bir test planı olmadan, gerçekleştirdiğiniz testlerin kapsamını ve amaçlarını gözden kaçırmak kolaydır.

 

3. Test senaryoları oluşturun

 

Fonksiyonel olmayan testin bir sonraki aşaması, yazılımın her bir fonksiyonel olmayan parametresini test etmek için tasarlanmış test senaryoları oluşturmaktır.

Her test senaryosunun bir test senaryosu kimliği, bir test senaryosu adı, bir açıklaması ve testin beklenen sonucunun yanı sıra önceden belirlenen başarılı veya başarısız kriterlerinin ayrıntıları olmalıdır. Bu, test uzmanlarının her bir testi nasıl gerçekleştireceklerini ve hangi sonuçları arayacaklarını anlamalarına yardımcı olur.

 

4. Test verilerini toplayın

 

Her bir test senaryosunu çalıştırmadan önce, her bir test senaryosu için kullanacağınız test verilerini toplamanız gerekir.

Bu genellikle test edeceğiniz işlevleri ve alanları oluşturan farklı modüllerden ve bileşenlerden kod ve veri toplamak anlamına gelir. Test kapsamını en üst düzeye çıkarıyorsanız, üzerinde çalışabileceğiniz çok sayıda test verisine sahip olmanız gerekir.

 

5. Test ortamını hazırlayın

 

Fonksiyonel olmayan testin bir sonraki aşaması test ortamının hazırlanmasıdır. Test ortamı, birçok farklı türde yazılım testi yapmak için kullanacağınız bir test sunucusudur.

Yazılımınızı test etmek için aynı koşulları oluşturmanıza ve yazılımınızı yapılandırma testi, güvenlik testi ve diğer işlevsel olmayan test türleri için farklı yapılandırmalarla ayarlamanıza olanak tanır.

 

6. Fonksiyonel olmayan testleri uygulayın

 

Test ortamı hazır olduğunda, sıra fonksiyonel olmayan testleri gerçekleştirmeye gelir. Testleri tür sırasına göre yürütmeye karar verebilirsiniz, örneğin güvenlik testlerine ve diğer işlevsel olmayan test türlerine geçmeden önce performans testleriyle başlayabilirsiniz.

Her bir testi gerçekleştirirken, sonuçları test raporunuza not edin. Testleri otomatikleştiriyorsanız, otomasyon aracınızın da sonuçları açık ve net bir şekilde raporlamak için standart bir yolu olacaktır.

 

7. Test sonuçlarını raporlayın

 

Her bir test senaryosunu yürüttükten sonra, fonksiyonel olmayan testlerinizin sonuçlarını tek bir raporda derleyin.

Bu rapor, her bir testin sonuçları hakkında net olmalı ve her bir testin başarılı veya başarısız olduğu konusunda açık olmalıdır.

Aktarmanız gereken tüm bilgilerin dahil edildiğinden emin olmak için test raporunuz için standart bir yapı izleyin.

 

8. Kusurları düzeltin

 

Test sonuçları geldikten sonra, testler başarısız olduysa veya düzeltilmesi gereken işlevsel olmayan hatalar tespit ettiyseniz yazılımı geliştiricilere geri verin.

Örneğin, yazılım aynı anda uygun sayıda kullanıcıyı idare edemiyorsa veya aynı anda birden fazla program çalışırken performans çok yavaşlıyorsa, kullanıcıların üründen memnun kalmasını sağlamak için bu sorunların muhtemelen kod içinde düzeltilmesi gerekecektir.

 

9. Test döngüsünü tekrarlayın

 

Geliştiriciler ilk fonksiyonel olmayan test aşamasında bulunan kusurları onardıktan sonra test döngüsü yeniden başlayabilir.

Geliştiriciler yaptıkları değişiklikleri akıl sağlığı testine tabi tutacak ve yeni yapıyı QA test uzmanlarına iletecek, onlar da duman testi, birim testi, entegrasyon testi ve son olarak sistem testinden başlayarak tüm test paketini gerçekleştireceklerdir.

Test döngüsü, herhangi bir noktada hata veya kusur oluşmayana kadar tekrarlanır, ardından yapı testin son aşamasına girebilir: kullanıcı kabul testi.

 

Fonksiyonel olmayan testler için test senaryoları

gri kutu testi makalesi - araçlar, yaklaşımlar, beyaz kutu ve kara kutu testine karşı karşılaştırma, gri kutu ücretsiz ve kurumsal araçlar.

Test senaryoları tüm yazılım testlerinin önemli bir parçasıdır ve hem fonksiyonel hem de fonksiyonel olmayan testleri gerçekleştirirken neyi test edeceğinizi ve nasıl test edeceğinizi tanımlamak için test senaryolarını kullanırsınız.

Her test senaryosu bir mini test olarak görülebilir ve her test senaryosunun kendi tanımlanmış çıktıları ve sonuçları olacaktır.

 

1. Fonksiyonel olmayan testler için test senaryoları nelerdir?

 

Bir test senaryosu, yazılım planında tanımlanan koşulları karşılayıp karşılamadığını test etmek için bir yazılım yapısı üzerinde gerçekleştirilen bir dizi eylemdir. Her test senaryosu, test uzmanlarına neyi nasıl test edeceklerini etkili bir şekilde söyler ve yazılım uygulamasının belirli bir işlevini veya işlevsel olmayan özelliğini test etmek için tasarlanmıştır.

Fonksiyonel olmayan test senaryoları, birisi sistem içindeki güvenli verilere erişmeye çalıştığında ne olduğunu test etmeyi veya yazılımın başlangıçta ne kadar hızlı yüklendiğini test etmeyi içerebilir.

 

2. Fonksiyonel olmayan test senaryoları nasıl tasarlanır?

 

Fonksiyonel olmayan testler için test senaryoları tasarlarken, fonksiyonel olmayan testlerinizin hedeflerini aklınızda tutarken standart test senaryosu uygulamalarını takip etmeniz önemlidir.

Test uzmanlarınızın her bir testi gerçekleştirmek için ne yapması gerektiğini açıkça belirten fonksiyonel olmayan testler için test senaryoları yazmak üzere aşağıdaki adımları izleyin.

 

1. Kapsamak istediğiniz alanı tanımlayın

 

Her bir test senaryosu için, bu test senaryosunun yazılımınızın hangi alanını kapsayacağını düşünün.

Örneğin, kurulum ve yükseltme testleri için test senaryoları yazıyorsanız, uygulamanın farklı cihazlara yüklenmesinin ne kadar kolay olduğunu ve yeni bir yama kullanarak yazılımı yükseltmenin ne kadar sürdüğünü değerlendiren test senaryoları ekleyebilirsiniz.

 

2. Benzersiz bir test senaryosu kimliği oluşturun

 

Her test senaryosunun benzersiz bir test senaryosu kimliği olmalıdır. Bu, test senaryosu açıklamasını ve sonuçlarını daha sonra bulmayı kolaylaştırır ve iki test senaryosunun benzer adlara veya açıklamalara sahip olması durumunda hangi test senaryosuna atıfta bulunduğunuzla ilgili herhangi bir karışıklığı giderir.

 

3. Her bir testi adlandırın ve açıklayın

 

Test senaryosu kimliği testi tanımlarken, yazdığınız her test senaryosu için bir ad ve açıklama da sağlamak isteyeceksiniz.

Test ettiğiniz şeyi özetleyen basit bir isim olmalı, açıklama ise bunu biraz daha ayrıntılı olarak açıklayan tek bir cümle olmalıdır.

Açıklama, test uzmanlarının neyi ve nasıl test edeceklerini ve testte karşılanması gereken belirli koşulları bilmelerini sağlayacak kadar açık olmalıdır.

 

4. Beklenen sonucu belirtin

 

Her bir test senaryosu için, yazılımın beklendiği gibi çalışması durumunda ortaya çıkması gereken sonucu ana hatlarıyla belirtin.

Performans testi ve yük testi gibi işlevsel olmayan testlerde bu, birçok durumda yazılımın yavaşlamadan, gecikmeden veya çökmeden normal şekilde çalışmaya devam etmesi anlamına gelebilir.

Diğer durumlarda, kullanıcıya sorunu bildirmek ve bir çözüm önermek için belirli hata mesajlarının oluştuğu anlamına gelebilir.

 

5. Test teknikleri önermek

 

Her bir test senaryosu için, test uzmanının test sırasında kullanması gerektiğini düşündüğünüz test tekniklerini ve fonksiyonel olmayan test araçlarını önerin.

Fonksiyonel olmayan testlerde, test uzmanları farklı test türleri için çok farklı yaklaşımlar kullanabilir.

Örneğin, yük testi ve stres testi, aşırı yoğun trafiği manuel olarak simüle etmek pratik olmadığı için otomasyon gerektirebilirken, diğer test türlerinin herhangi bir özel araç veya teknoloji olmadan gerçekleştirilmesi daha kolay olabilir.

 

6. Her test senaryosunun akran değerlendirmesine tabi tutulması

 

Her bir test vakasını imzalamadan önce, her bir vakanın birlikte çalıştığınız biri tarafından akran değerlendirmesine tabi tutulmasını sağlayın. Bu kişi başka bir test uzmanı veya QA lideri olabilir.

Test senaryolarının akran değerlendirmesinden geçirilmesi, üçüncü taraf bir test uzmanı tarafından takip edilebilecek kadar açık olmalarını ve uygunsuz testlere yol açabilecek herhangi bir belirsizlik veya hata içermemelerini sağlar.

 

3. Fonksiyonel olmayan test senaryolarına örnekler

 

Fonksiyonel olmayan testler için test senaryoları yazıyorsanız, bunlar aşağıdaki fonksiyonel olmayan test örneklerine benzeyebilir.

 

Ölçeklenebilirlik testi örneği

Test durumu kimliği: 6671
Test senaryosu adı: Çoklu kullanıcı giriş testi
Açıklama: Otomasyon araçlarını kullanarak 20’den fazla kullanıcının aynı anda yazılıma giriş yapmasını taklit edin.
Beklenen sonuçlar: Yazılım her kullanıcı için normal şekilde çalışmalı ve her kullanıcının 5 saniyenin altında başarıyla oturum açmasına izin vermelidir.

 

Uyumluluk testi örneği

Test durumu kimliği: 5214
Test durumu adı: Opera tarayıcısında uygulamanın yüklenmesi
Açıklama: Uygulamayı Opera web tarayıcısına yükleyin.
Beklenen sonuçlar: Uygulama, Opera web tarayıcısında standart ekran çözünürlüğü ve düzeniyle normal şekilde yüklenir.

 

Manuel veya otomatik fonksiyonel olmayan testler?

yazılım testleri için bilgisayarla görme

Farklı fonksiyonel olmayan test teknikleri arasında seçim yaparken, manuel veya otomatik fonksiyonel olmayan testler yapmak isteyip istemediğinize karar vermeniz gerekir.

Manuel testler insan test uzmanları tarafından gerçekleştirilir, bu da genellikle daha fazla zaman aldıkları anlamına gelir, ancak aynı zamanda keşif testi için fırsatlar sunarlar.

Otomatik işlevsel olmayan testler daha hızlı ve bazı açılardan daha güvenilirdir, ancak aynı zamanda daha fazla kaynak veya araç gerektirir. Otomasyon ve hiperotomasyon, özellikle fonksiyonel olmayan testler söz konusu olduğunda, testlerde giderek daha popüler hale gelmektedir.

 

Manuel fonksiyonel olmayan testler: Faydalar, zorluklar ve süreçler

 

Manuel fonksiyonel olmayan testler, her bir fonksiyonel olmayan unsuru bağımsız olarak test edecek olan test uzmanları tarafından gerçekleştirilir.

Manuel fonksiyonel olmayan testleri yürütürken, test uzmanları yazılım hakkında bilgi toplamalı, test planına uyan bireysel test senaryoları oluşturmalı ve bu test senaryolarını manuel olarak yürütmelidir.

Bu önemli ölçüde zaman alır, ancak aynı zamanda QA test uzmanlarının neyin nasıl test edileceğini belirleme özgürlüğüne sahip olduğu anlamına gelir.

 

1. Manuel testin faydalarından bazıları şunlardır:

 

Manuel testler, belirli teknolojiler veya teknik bilgi gerektirmediği için otomatik testlerden daha ucuz olabilir.

Manuel testler, test uzmanlarının yazılımın nasıl çalıştığı ve tatmin edici bir şekilde çalışıp çalışmadığı konusunda insan görüşü ve öznelliği sunmasına olanak tanır.

Manuel test, otomatikleştirmenin imkansız olduğu senaryolarda sistem testi yapmak için kullanılabilir.

Manuel test, test uzmanlarının grafik arayüz gibi sistemin görsel yönlerini ve kullanılabilirliği etkileyebilecek diğer faktörleri değerlendirmesine olanak tanır.

Manuel testler, test uzmanlarına sistemin bütününe ve farklı modül ve bileşenlerin birlikte nasıl çalıştığına dair daha geniş bir bakış açısı sunar

 

Bununla birlikte, manuel testin dezavantajları da vardır.

 

2. Manuel testin zorluklarından bazıları şunlardır:

 

Yük testi ve performans testi gibi bazı fonksiyonel olmayan test türlerinin manuel olarak gerçekleştirilmesi pratik değildir

Manuel testler, otomatik fonksiyonel olmayan testlerden çok daha fazla zaman alır

Manuel test uzmanları, özellikle çok tekrarlayan test görevlerini yerine getirirken dikkatleri dağılabilir, odaklarını kaybedebilir ve hata yapabilirler

 

Otomatik fonksiyonel olmayan testler: Faydalar, zorluklar ve süreçler

Otomatik fonksiyonel olmayan testler, otomatik komut dosyaları ve test araçları tarafından gerçekleştirilir. Otomatik test yöntemlerini kullanırken, test uzmanları otomatik testler başlatıldıktan sonra diğer işlerle uğraşırken arka planda testleri yürütebilirler.

 

1. Fonksiyonel olmayan testleri otomatikleştirmenin faydalarından bazıları şunlardır:

 

1. Uzun ve zaman alan görevler için harcadığınız zamanı azaltarak zamandan ve kaynaklardan tasarruf edin

2. Otomasyon, daha geniş bir bileşen ve özellik yelpazesini kapsayarak test kapsamını artırmayı mümkün kılar

3. Otomatik testlerin gerçekleştirilmesi daha az zaman aldığı için sık sık yapılması daha uygundur

4. Otomatik test, manuel olarak gerçekleştirilmesi çok zor olan yük testi, hacim testi ve stres testi gibi zaman alıcı test görevleri için idealdir

5. Otomatik test gerçekleştirirken hata oluşma ihtimali daha düşüktür

 

Bununla birlikte, otomatik testin bazı dezavantajları da vardır, bu da her türlü işlevsel olmayan test için her zaman doğru yaklaşım olmadığı anlamına gelir.

 

2. Otomatik fonksiyonel olmayan testlerin bazı zorlukları şunlardır:

 

1. Otomatik testlerin kurulumu manuel testlere göre daha pahalıdır

2. Test otomasyonunun kurulması zaman ve teknik kaynak gerektirebilir

3. Test otomasyonu keşif testi için alan bırakmıyor

4. Testlerin otomatikleştirilmesi, test senaryolarının oluşturulması için hala zaman gerektirir

 

Sonuç: Manuel veya otomatik

fonksiyonel olmayan test?

Bir Test Mükemmeliyet Merkezi kurmanın faydaları. Performans testi fonksiyonel testten farklı mıdır?

Çoğu yazılım testi türünde, manuel ve otomatik testlerin birleştirilmesi genellikle en iyi sonuçları verir. Bu, test ekiplerinin otomatik testlerin verimliliğinden, güvenilirliğinden ve doğruluğundan faydalanmasına ve aynı zamanda test uzmanlarının yazılımı daha öznel bir bakış açısıyla değerlendirmesine olanak tanıyan keşif testleri gerçekleştirmesine olanak tanır.

Fonksiyonel olmayan testlerde, hem manuel hem de otomatik testler çoğu test ekibi için neredeyse gereklidir.

Manuel testler en iyi şekilde kullanılabilirlik testi gibi işlevsel olmayan test görevlerini gerçekleştirmek için kullanılırken, otomatik testler genellikle stres testi veya hacim testi gibi manuel olarak gerçekleştirilmesi çok zaman alıcı ve zor olan testleri gerçekleştirmek için kullanılır.

Fonksiyonel olmayan testler, test otomasyon tekniklerinin kullanılabileceği en belirgin alanlardan biridir, çünkü öznel sonuçlar istemeyen nicel, ölçülebilir bir test türüdür.

Diğer test türlerinde olduğu gibi, fonksiyonel olmayan testler de genellikle manuel testler ve otomatik testlerin bir karışımı kullanılarak gerçekleştirilir.

Bununla birlikte, otomatik testler birçok işlevsel olmayan test türü için pratik olarak gereklidir ve işlevsel olmayan testlerin parametreleri ve ölçütleri, otomasyonun bu tür testler için işlevsel testlerden daha uygun olduğu anlamına gelir.

Fonksiyonel olmayan testler için en iyi uygulamalar

Yazılım testi nedir?

Fonksiyonel olmayan testleri ilk kez gerçekleştirdiğinizde, en iyi test uygulamalarını takip etmek test sürecinizi standartlaştırmanıza ve testlerinizin etkinliğini optimize etmenize yardımcı olabilir.

En iyi uygulamalar, test süreçlerini iyileştirmek ve endüstri standartlarına uyum sağlamak isteyen yazılım test ekipleri için kılavuz görevi görür.

 

1. Otomasyon araçlarını kullanın

 

Fonksiyonel olmayan testlerde, diğer test türlerine kıyasla, özellikle hacim testi, stres testi ve yük testi gibi belirli test türlerini otomatikleştirmek için otomasyon araçlarını kullanmak önemlidir.

Bu tür testler genellikle yazılımın kullanıcıların, verilerin ve trafiğin yoğun baskısı altında ne kadar iyi çalıştığını doğrular; bu da manuel olarak taklit edilmesi çok zor koşullar olabilir.

Bu tür işlevsel olmayan testlerin otomatikleştirilmesi yalnızca daha verimli olmakla kalmayacak, aynı zamanda daha doğru olacak ve test uzmanlarının daha yüksek yükleri ve stresleri kolayca çoğaltmasına olanak tanıyacaktır.

 

2. Tüm belgeleri akran değerlendirmesi

 

Meslektaşlarınızdan oluşturduğunuz test senaryolarını incelemelerini istemenin yanı sıra, test ekibinizdeki meslektaşlarınızdan hata raporlarını, test raporlarını, test planlarını ve test sürecinde oluşturulan diğer resmi dokümantasyon biçimlerini incelemelerini isteyin.

Bu, test ve geliştirme sürecinde ciddi gecikmelere neden olabilecek küçük hata riskini azaltır.

 

3. Ölçülebilir gereksinimleri tanımlayın

 

Fonksiyonel olmayan testler başlamadan önce yazılımınızın gereksinimlerini tanımlarken, her bir gereksinimin objektif ve ölçülebilir olduğundan emin olun.

Bu, test uzmanlarının test sırasında yazılımın bu gereksinimleri karşılayıp karşılamadığını tespit etmesini kolaylaştırır ve yoruma yer bırakmaz.

‘Hızlı’ veya ‘verimli’ olarak ne sayılır? Ne aradığınızı tanımlamak için sayıları ve nicel değerleri kullanın.

 

4. Test metriklerini dikkatlice değerlendirin

 

Yazılımınızın performansını ölçmek için hangi metrikleri kullanacağınıza karar vermeden önce, yazılımın kullanıcılarının ne isteyeceğini ve hangi metriklerin yazılım planı ve gereksinimleriyle gerçekten uyumlu olduğunu düşünün.

Çoğu yazılım hızlı ve güvenilir olmalıdır, ancak kullanıcılarınız başka hangi ölçütleri arıyor olabilir? Test sürecinde göz önünde bulundurmanız gereken yazılıma özgü metrikler var mı?

 

Fonksiyonel olmayan bir testten elde edilen çıktı türleri

örneğin bankacılık gibi sektörlerde otomasyon testi nasıl çalışır?

Fonksiyonel olmayan testler gerçekleştirirken, yaptığınız testlerden farklı türde çıktılar alırsınız.

Bunlar genellikle daha net olan fonksiyonel test çıktılarından oldukça farklıdır, çünkü fonksiyonel testler sadece bir fonksiyonun olması gerektiği gibi çalışıp çalışmadığını test eder.

İşlevsel testlerde olduğu gibi, test uzmanları her test senaryosu için net beklentiler belirlemeli ve bu sayede her testin başarılı veya başarısız olduğunu belirlemeyi kolaylaştırmalıdır.

 

1. Mutlak sayılar

 

Performans testi, stres testi ve diğer işlevsel olmayan test türlerini gerçekleştirirken, en sık baktığınız çıktılar hızlar ve diğer mutlak sayılardır.

Performans testi, sistemin belirli görevleri ne kadar hızlı yerine getirebileceğini doğrular ve bu saniye veya milisaniye cinsinden ölçülür.

Yük testi yapıyorsanız, yazılımın çökmeden veya gecikmeden tek seferde ne kadar veri işleyebileceğini değerlendirebilirsiniz.

 

2. Hata mesajlaşma

 

Fonksiyonel olmayan testler ayrıca güvenlik hataları, doğrulama hataları ve yapılandırma hataları gibi hatalar oluştuğunda sistemin nasıl çalıştığını doğrular.

Sistemlerin hata oluştuğunda doğru ve net hata mesajları göstermesi önemlidir, böylece kullanıcılar sorunu düzeltmek için adım atabilir ve yazılımı kullanmaya devam edebilir.

Hata mesajları, sistem kullanıcıların yazılımın yerleşik güvenlik özelliklerini ihlal etmesini engellediğinde güvenlik testi sırasında da ortaya çıkmalıdır.

 

3. Çarpışmalar

 

Çökme, sistem arızasının bir işaretidir ve genellikle sistemin test ettiğiniz düzeyde performans gösteremediğini gösterir ve testin geçtiği anlamına gelebilir.

Bazı durumlarda, sistem çökebilir ve yine de üzerinde çalıştığınız test senaryosunu geçebilir; örneğin, sistem çökmeden önce gerekli stres veya trafik miktarına dayanırsa.

İşlevsel olmayan testler gerçekleştirirken, test uzmanları özellikle stres testi ve diğer performans testleri için sistemin sınırlarını zorlarken sistemin düzenli olarak çökmesini beklemelidir.

 

Fonksiyonel olmayan testlere örnekler

Uçtan uca test - E2E Testi nedir, Araçlar, Türler ve daha fazlası

Fonksiyonel olmayan test örnekleri, fonksiyonel olmayan test senaryoları için yukarıdaki örneklere benzer.

Fonksiyonel olmayan testlerin ne olduğunu ve bir yazılım uygulamasında neleri test ettiğini daha iyi anlamak için fonksiyonel olmayan test örneklerine bakabilirsiniz.

 

1. Performans testi örneği

 

Kullanıcıları çevrimiçi bir veritabanına bağlayan bir mobil uygulama üzerinde çalışıyorsanız, çok sayıda kullanıcının aynı anda bu veritabanındaki verilere erişebilmesi ve bunları indirebilmesi önemlidir.

Bu aynı zamanda, özellikle gelecekte uygulamadaki kullanıcı sayısını artırmak istiyorsanız, ölçeklenebilirlik testinin önemli bir parçasıdır.

Daha sonra, örneğin 1000 kullanıcı aynı anda aynı veritabanına erişmeye çalıştığında sistemin nasıl tepki verdiğini test edecek ve uygulamanın bu koşul altında ne kadar hızlı yüklenmesi gerektiğine ilişkin gereksinimleri belirleyeceksiniz.

 

2. Uyumluluk testi

 

Yeni bir belge yönetimi uygulamasını test ediyorsanız, amaçlanan tüm cihazlarda çalışıp çalışmadığını test etmeniz gerekir.

Bu, uygulamayı Windows, Mac ve yazılımın uyumlu olmasını istediğiniz diğer işletim sistemlerinin ( Linux gibi) en son sürümlerinin tümüne yükleyip yükleyemeyeceğinizi test etmek anlamına gelir.

 

3. Güvenlik testi

 

Güvenlik testi yaparken, sistemin bu durumlarda beklediğiniz gibi davrandığını doğrulamak için insanların gizli verilere erişmeye veya yazılımın güvenlik önlemlerini ihlal etmeye çalışabileceği bazı yolları test edeceksiniz.

Örneğin, bir kullanıcı olarak oturum açabilir ve sistemin bu dosyalara erişmenize izin vermediğinden emin olmak için güvenlik yetkiniz olmayan dosyalara erişmeye çalışabilirsiniz.

 

Tespit edilen hata ve bug türleri

fonksiyonel olmayan testler aracılığıyla

zaptest-runtime-error.png

Fonksiyonel olmayan testler, fonksiyonel testlerde tespit edilenler kadar kolay bulunamayan birçok hata ve kusuru ortaya çıkarabilir. Bunun nedeni, işlevsel olmayan testlerin genellikle test uzmanlarının sistemin sayısız farklı ortamda ne kadar iyi performans gösterdiğini değerlendirmek için farklı yapılandırmaları, kurulumları ve koşul kombinasyonlarını doğrulamasını gerektirmesidir.

 

1. Performans kusurları

 

Performans kusurları, sistem çalıştığında ortaya çıkar, ancak beklediğiniz kadar hızlı veya verimli çalışmaz.

Örneğin, belirli koşullar altında sistemin yeterince hızlı yüklenmediğini veya aynı anda çok fazla kullanıcı oturum açtığında çöktüğünü fark edebilirsiniz.

Performans kusurları insanların yazılımınızı kullanmasını tamamen engellemez, ancak yazılımınızı daha az kullanılabilir ve kullanıcı gereksinimlerini karşılama olasılığını daha düşük hale getirebilir.

 

2. Güvenlik kusurları

 

Güvenlik kusurları, yazılım sisteminizin ve içinde depolanan verilerin güvenliğini etkileyen kusurlardır.

Örneğin, kullanıcılar erişmemeleri gereken gizli verilere erişebiliyorsa veya uygulamanın belirli bölümleri doğru şekilde parola korumalı değilse ya da şifreleme başarısız olursa güvenlik kusurları ortaya çıkabilir.

Bunlar, bir yazılım yayıncısının itibarı üzerinde ciddi bir etkiye sahip olabilecek güvenlik ihlalleriyle sonuçlanabilir.

 

3. İşlevsel kusurlar

 

Fonksiyonel olmayan testler bir yazılım uygulamasının fonksiyonlarını test etmek için tasarlanmamış olsa da, bazı durumlarda fonksiyonel olmayan testler yazılımdaki fonksiyonel hataları tespit edebilir.

Örneğin, güvenilirlik testinin amacı uygulamanın çalışıp çalışmadığını test etmek değil, uygulamanın tekrarlanan denemelerde güvenilir bir şekilde çalışıp çalışmadığını test etmektir.

Bu, bir eylem tekrarlandığında bazı özelliklerin güvenilir bir şekilde düzgün çalışmadığını ortaya çıkarabilir ve bunlar işlevsel hatalar olarak sınıflandırılabilir.

 

Yaygın fonksiyonel olmayan test metrikleri

Bir test mükemmeliyet merkezi (TCoE) kurmanın avantajları

Fonksiyonel olmayan test metrikleri, sistemin performansının ve verimliliğinin ölçüldüğü metrikleri tanımlar.

Farklı işlevsel olmayan test türleri farklı ölçütlere dayanır ve projenin nihai hedeflerine bağlı olarak çeşitli ölçütler kullanmayı seçebilirsiniz.

 

1. Zaman

 

Zaman ölçümleri, belirli görevleri gerçekleştirmenin ne kadar sürdüğünü veya kullanıcıların işlevlerin yüklenmesi için ne kadar beklemesi gerektiğini ölçer.

Zaman ölçümlerinin bazı örnekleri, bir uygulamanın belirli bir zaman dilimi içinde yapabileceği işlem veya indirme sayısı, farklı işlevlerin yanıt süreleri ve uygulamanın belirli bir işlemi tamamlaması için geçen süredir.

Farklı test türleri sonuçları saniye cinsinden veya saniyede kaç işlem yapıldığının bir sunumu olarak ölçecektir.

 

2. Uzay

 

Alan, fonksiyonel olmayan testlerde bir diğer önemli ölçüttür. Alan ölçümleri, sistemin ne kadar CPU alanı gerektirdiğini veya yazılım tamamen kurulduktan sonra sabit diskte ne kadar yer kapladığını test edebilir.

Alan ölçümlerinin bazı örnekleri arasında ön bellek, ana bellek ve yardımcı bellek bulunur.

Sorunsuz çalışması için büyük miktarda alan gerektiren yazılımlar daha az sayıda müşteri için uygun olabilir.

 

3. Kullanılabilirlik

 

İşlevsel olmayan testlerdeki bazı ölçütler sistemin kullanılabilirliğini dikkate alır; örneğin, kullanıcıların sistemi doğru şekilde kullanmaları için eğitilmelerinin ne kadar sürdüğü, kullanıcıların temel işlevleri yerine getirmek için kaç seçenek arasında gezinmeleri gerektiği veya belirli görevleri yerine getirmek için kaç fare tıklaması gerektiği gibi.

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

İşlevsel olmayan testler bu ölçümlerin her birini niceliksel olarak ölçebilir ve düşük sayılar genellikle daha yüksek kullanılabilirlik seviyeleri anlamına gelir.

 

4. Güvenilirlik

 

Fonksiyonel olmayan testlerdeki bir diğer önemli ölçüt de güvenilirliktir. Güvenilirlik, sistemin tekrar tekrar aynı şekilde davranması veya uzun bir süre boyunca olması gerektiği gibi çalışması olasılığını yansıtır.

Güvenilirliği ölçmek için kullanılan bazı metrik örnekleri arasında ortalama arıza süresi, arıza oranı, kullanılabilirlik ve arıza süresi olasılığı yer alır.

Bu metriklerin her biri, test uzmanlarının sistemin arıza veya çökme yaşamadan uzun süre çalışabileceğini doğrulamasına yardımcı olur.

 

5. Sağlamlık

 

Sağlamlık, sistemin arızaları ne kadar iyi idare ettiğinin ve arıza durumunda sistemin kendini ne kadar iyi kurtarabildiğinin ölçüsüdür.

Sağlamlığı ölçen bazı metrik örnekleri arasında bir arızadan sonra sistemin kendini kurtarması için geçen süre, felaketle sonuçlanan arızaların yüzdesi ve sistem arızalandıktan sonra veri dosyalarının bozulma olasılığı yer alır.

Bunlar önemli ölçütlerdir çünkü kullanıcılar sistemlerin bazen tüm verileri kaybetmeden veya dosyaları bozmadan arızalanabileceğini beklemektedir.

 

6. Taşınabilirlik

 

Taşınabilirlik ölçümleri, yazılımın farklı sistemlere ne kadar kolay aktarılabileceğini veya bir ağ içinde yeni bir konuma ne kadar kolay taşınabileceğini ölçer.

Taşınabilirliği ölçen bazı metrik örnekleri arasında taşınabilir olmayan kod yüzdesi ve yazılımın çalışabileceği sistem sayısı yer alır.

İdeal olarak, çok sayıda farklı sistemde çalışabilen yazılımlar daha taşınabilirdir ve bu nedenle sık sık aktarım veya yer değiştirme gerektirebilecek ortamlarda kullanım için daha uygundur.

 

Fonksiyonel olmayan testleri gerçekleştirme stratejileri

Birim testi nedir?

Fonksiyonel olmayan testlere başladığınızda, testin bu aşamasına bir strateji ile yaklaşmanız önemlidir. QA liderleri ve yazılım test yöneticileri, fonksiyonel olmayan testler başlamadan önce testin risklerini, sahip oldukları kaynakları ve testin amacını göz önünde bulundurmalıdır.

Bir strateji geliştirmek, fonksiyonel olmayan testlerinizi en başından itibaren optimize etmenize yardımcı olabilir.

 

1. Rol ve sorumlulukların dağıtılması

 

Fonksiyonel olmayan testlere başlamadan önce, test ekibinin kilit üyelerine rol ve sorumluluklar verin. Bu, fonksiyonel olmayan testlerin iş yükünü yönetmeyi ve deneyimli test uzmanlarının yürüttüğünüz testlerin kalitesini ve etkinliğini korumaktan sorumlu olmasını sağlamayı kolaylaştırır.

Bu rolleri üstlenmek üzere seçtiğiniz kişilerin, özellikle de bu görevler teknik beceri gerektiriyorsa, kendilerinden beklediğiniz görevleri yerine getirmek için ihtiyaç duydukları bilgi ve deneyime sahip olduklarından emin olun.

 

2. İlgili test araçlarını toplayın

 

Fonksiyonel olmayan testleri gerçekleştirmek için kullanmak istediğiniz tüm teknolojileri ve araçları bir araya getirin. Tüm ekibinizin bunları etkili bir şekilde nasıl kullanacağını bildiğinden emin olun ve gerektiğinde beceri eksikliklerini gidermek için eğitimler düzenleyin.

Fonksiyonel olmayan testler başlamadan önce herkesin hangi test araçlarını kullanacağını ve nasıl kullanacağını bildiğinden emin olmak, yetersiz bilgi nedeniyle testlere ara vermek veya testleri yeniden yapmak zorunda kalma riskini azaltır.

 

3. Testlere öncelik verin

 

Fonksiyonel olmayan testlere başlamadan önce, sistemin test etmeniz gereken tüm yönlerinin bir listesini yapın ve bunları aciliyet ve öneme göre önceliklendirin.

Fonksiyonel olmayan testleri, test ettiğiniz sistemin her bir yönüyle ilgili risk düzeyine göre önceliklendirebilirsiniz.

Örneğin, modern yazılımlarda yeterli güvenliğin son derece önemli olduğu düşünüldüğünden temel güvenlik testleri gerçekleştirilebilir. Yüksek riskli kusurları ne kadar erken tespit ederseniz, bu kusurların sistemin diğer yönleri üzerindeki potansiyel etkisi de o kadar düşük olur.

 

En iyi 7 fonksiyonel olmayan test aracı

en iyi ücretsiz ve kurumsal yazılım testi + RPA otomasyon araçları

Fonksiyonel olmayan test araçları test sürecini kolaylaştırabilir, testleri otomatikleştirmeyi daha kolay ve uygun maliyetli hale getirebilir ve QA liderlerinin test ve dokümantasyon sürecini yönetmesine yardımcı olabilir.

İnternette çok sayıda ücretsiz fonksiyonel olmayan test aracının yanı sıra yükseltmek için aylık ücret ödeyebileceğiniz bazı araçlar da mevcuttur.

 

1. ZAPTEST ÜCRETSİZ sürüm

 

ZAPTEST, kullanıcıların hem fonksiyonel hem de fonksiyonel olmayan yazılım testlerini hızlı ve kolay bir şekilde gerçekleştirmelerini sağlayan popüler bir yazılım test aracıdır. Yazılım testlerini otomatikleştirmek için ZAPTEST’i kullanabilir ve fonksiyonel olmayan testlerde çeşitli işlevleri ve koşulları taklit etmek için RPA teknolojisinden yararlanabilirsiniz.

ZAPTEST FREE sürümü, aynı işlevlerin çoğunu daha küçük ölçekte sunan kurumsal sürümün sadeleştirilmiş bir sürümüdür. ZAPTEST forumu üzerinden destek alabilir ve sınırsız sanal kullanıcı ile performans testleri gerçekleştirebilirsiniz.

 

2. Appium

 

Appium, hem iOS hem de Android cihazlar dahil olmak üzere çeşitli farklı platformlarda mobil uygulamaları test etmek için en uygun olan ücretsiz bir yazılım test aracıdır. Appium, kullanıcılara Appium’un sunduğu otomasyon yeteneklerinden yararlanırken kendi test çerçevelerini ve stratejilerini geliştirmeleri için çok fazla esneklik sunar.

 

3. Loadium

 

Loadium, otomasyon araçları kullanılarak gerçekleştirilmesi çok daha kolay olan iki işlevsel olmayan test türü olan performans testi ve yük testini gerçekleştirmek için en iyi şekilde kullanılan işlevsel olmayan bir test aracıdır.

Loadium, kullanıcıların büyük ölçekli yük testleri yapmasına olanak tanır ve testlerinizi yazılım hedeflerinize göre uyarlayabilmeniz için özel çözümler sunar.

Loadium’u ücretsiz deneyebilir veya uygulamanın tam sürümünü indirmek için ödeme yapabilirsiniz.

 

4. Obkio

 

Obkio, QA liderlerinin ve test yöneticilerinin sorunları ne kadar ciddi olduklarına göre önceliklendirmelerine ve kategorize etmelerine yardımcı olan bir yazılım test aracıdır. Obkio, sorunları kullanıcılardan önce tespit edebiliyor, kullanıcılara akıllı bildirimler sunuyor ve sorunun nerede olduğunu tespit etmeye yardımcı olabiliyor.

Obkio sadece fonksiyonel olmayan testler için değil, test yaşam döngüsünün tüm aşamalarında kullanılabilecek son derece kullanışlı bir ücretsiz test aracıdır.

 

5. SonarQube

 

SonarQube, hataları ve güvenlik açıklarını tespit etmek için kodu otomatik olarak analiz edebilen açık kaynaklı bir güvenlik testi aracıdır. Java ile yazılmış olan SonarQube’u yirmiden fazla farklı programlama dilindeki kodu analiz etmek için kullanabilirsiniz ve sistemin temiz arayüzü gelecekte güvenlik açıklarına neden olabilecek sorunları tespit etmeyi kolaylaştırır.

 

6. Tsung

 

Tsung, yük ve stres testlerini otomatikleştirmek istiyor ancak Loadium’un ücretsiz sürümünü kullanamıyorsanız ideal olan bir başka işlevsel olmayan test aracıdır.

Tsung, kullanıcıların HTTP ve SOAP dahil olmak üzere birden fazla protokol ve sunucuda yüksek hacimli yük testi yapmasına olanak tanıyan açık kaynaklı bir araçtır.

Tsung tamamen ücretsizdir ve test uzmanlarının üzerinde çalıştıkları yazılımın çeşitli zorlu koşullar altında yüksek performans seviyeleri sunduğundan emin olmalarına yardımcı olabilir.

 

7. Sikuli

 

Sikuli, test sürecini otomatikleştirmek için robotik süreç otomasyonunu kullanan bir başka uygulamadır. Uygulama, ekranda görülebilen her şeyi otomatikleştirebilir. Sikuli’yi web tabanlı olmayan uygulamaları test etmek ve hataları hızlı bir şekilde yeniden üretmek için kullanabilirsiniz.

 

Fonksiyonel olmayan test kontrol listesi, ipuçları ve püf noktaları

Yazılım testi kontrol listesi

Fonksiyonel olmayan testlere başlamadan önce, hazırlanmış bir ortamda kapsamlı fonksiyonel olmayan testler gerçekleştirmek için ihtiyacınız olan her şeye sahip olduğunuzdan emin olun.

Fonksiyonel olmayan testlere başlamadan önce ipuçları ve püf noktaları için aşağıdaki kontrol listesini takip edin.

 

1. Bir programa göre çalışın

 

İster test planınıza dahil edin ister bunun için ayrı bir belge oluşturun, yazılım testlerinizi bir test programı etrafında yapılandırın.

Beklediğinizden daha fazla hata ve kusur bulursanız, bazen programdan sapabilirsiniz, ancak başlangıçta bir programa sahip olmak, özellikle zaman alan manuel testleri gerçekleştirirken test uzmanlarına rehberlik etmeye ve onları verimli çalışmaya motive etmeye yardımcı olabilir.

 

2. Test ekibinizi belirleyin

 

Sorumlulukları delege etmek ve test ekibinizin üyelerine resmi roller ve unvanlar atamak, test sürecinin sorunsuz ilerlemesini sağlamaya yardımcı olabilir.

Test başlamadan önce ekibinizdeki rolleri ve sorumlulukları açıkça belirtin ve herkesin kendi görevlerinden sorumlu tutulması için farklı test uzmanlarına fonksiyonel olmayan testlerin farklı yönlerinin sorumluluğunu verin.

 

3. Test etmeden önce araç ve teknolojileri seçin

 

Belirli araç ve teknolojilerle çalışmaya ancak işlevsel olmayan testlere başladıktan sonra karar verirseniz, bu durum test sürecini geciktirebilir ve test uzmanları arasında kafa karışıklığına neden olabilir.

Bunun yerine, araştırmanızı önceden yapın ve test başlamadan önce kullanmak istediğiniz herhangi bir araç olup olmadığına karar verin. Bu, bu araçları test planına dahil etmeyi ve test başlamadan önce test uzmanlarınızı bunları kullanmaları için eğitmeyi kolaylaştırır.

 

4. Testler ve dokümantasyon için her zaman resmi onay alın

 

Test, bir kalite güvence sürecidir ve gerçekleştirdiğiniz testlerin değerini en üst düzeye çıkarmanın en iyi yolu, planladığınız ve yürüttüğünüz testler üzerinde de temel QA gerçekleştirmektir.

Test uzmanlarının bir sonraki aşamaya geçmeden önce QA liderlerinden ve yöneticilerinden test planlarını ve test raporlarını gözden geçirmelerini ve imzalamalarını istemelerini gerektiren basit protokoller oluşturun.

Bu, test hatalarının erken yakalanması ve düzeltilmesi şansını büyük ölçüde artırır.

 

Fonksiyonel olmayan testleri uygularken kaçınılması gereken 7 hata ve tuzak

UAT testinin regresyon testi ve diğer testlerle karşılaştırılması

İşlevsel olmayan testlerde yeniyseniz, test uzmanlarının ve QA profesyonellerinin sıklıkla düştüğü bazı yaygın hataları yapmak kolay olabilir.

Fonksiyonel olmayan test, bir yazılım yapısını tüm açılardan ve perspektiflerden değerlendirmeyi içeren karmaşık bir iştir.

Aşağıda, test uzmanlarının işlevsel olmayan testleri gerçekleştirirken düştüğü en yaygın tuzaklardan bazılarının bir listesi yer almaktadır.

 

1. Planlama yapmamak

 

Fonksiyonel olmayan testlerde yeniyseniz, önceden kapsamlı bir test planı oluşturmadan doğrudan test aşamasına geçebileceğinizi düşünebilirsiniz.

Bazı test ekipleri, test uzmanlarının işlevsel olmayan testler sırasında gerçekleştirmesi gereken eylemleri yeterince özetlemeyen eksik test belgeleri veya test planının yüzeysel özetlerini bir araya getirebilir.

 

2. Yanlış test yönetimi

 

Test sürecinin herhangi bir aşamasında testler yanlış yönetilirse sorunlar ortaya çıkabilir. Yetersiz yönetim, test uzmanlarının testleri eksiksiz bir şekilde gerçekleştirmek için uygun kaynaklara sahip olmadığı veya test uzmanlarına yapının her yönünü test etmeleri için yeterli zaman verilmediği anlamına gelebilir.

Test yöneticileri yaptıkları hatalardan ders çıkarabilmeli ve ileriye dönük daha etkili test planları geliştirebilmelidir.

 

3. Zayıf iletişim

 

Zayıf iletişim, test sürecinde, özellikle de fonksiyonel olmayan testlerde pek çok soruna neden olabilir.

Bu, test ekibi içinde zayıf iletişim veya test uzmanları, geliştiriciler ve paydaşlar arasında zayıf iletişim anlamına gelebilir.

Bu durum genellikle test uzmanları test belgelerini yeterince muhafaza etmediğinde veya test sürecinde diğer departmanlarla düzenli olarak iletişim kurmadığında ortaya çıkar.

 

4. Geliştiricileri görmezden gelmek

 

Test uzmanları ve geliştiriciler genellikle birbirlerinden oldukça ayrı çalışırlar, ancak geliştiricilerle yakın çalışan test ekipleri, yazılımın nasıl çalıştığı ve farklı modüllerin birbirleriyle nasıl etkileşime girdiği konusunda ek bilgilerden yararlanabilir.

Geliştiricileri test sürecine dahil etmek veya önemli zamanlarda geliştiricilerden geri bildirim istemek, test ekiplerinin daha verimli ve kapsamlı test planları oluşturmasına yardımcı olabilir.

 

5. Testin amacı

 

Birçok test uzmanı hala testin amacının yazılımın çalışıp çalışmadığını kontrol etmek ya da paydaşlara ve yatırımcılara yazılımın çalıştığını göstermek olduğuna inanmaktadır.

Bunun yerine, test uzmanları teste, testin amacının hataları aramak olduğu yaklaşımıyla yaklaşmalıdır.

Hata bulamayan test uzmanları, ancak hataların bulunabileceği her yere baktıklarından emin olduklarında test ettikleri yazılımda hata olmadığından emin olabilirler.

 

6. Manuel ve otomasyon hataları

 

Yürüttüğünüz her test türü için manuel testin mi yoksa otomatik testin mi daha iyi olduğunu düşünmek için zaman harcamak önemlidir.

Otomatik test yöntemleri neredeyse tüm fonksiyonel olmayan test türleri için son derece uygundur ve fonksiyonel testlere alışkın test ekipleri, fonksiyonel olmayan özellikleri manuel olarak da kolayca test edebileceklerini düşünerek hata yapabilirler.

 

7. Yanlış test araçlarının kullanılması

 

Fonksiyonel olmayan testlere başlamadan önce yanlış test araçlarını ve teknolojilerini seçmek kolaydır, özellikle de test ekipleri manuel testler yapmaya alışkınsa ve test araçlarını kullanmaya alışık değilse.

Kullanmak istediğiniz fonksiyonel olmayan test yöntemlerini önceden araştırın ve projenizin özel gereksinimlerini karşılayan yazılım araçlarını ve otomasyon araçlarını seçin.

 

Sonuç

Fonksiyonel olmayan testler, test uzmanlarının bir sistemin ne kadar iyi performans gösterdiğini ve yükleme süreleri, kapasite ve güvenlik koruması gibi fonksiyonel olmayan gereksinimleri ne ölçüde karşıladığını doğrulamasını sağlayan test sürecinde önemli bir adımdır.

Fonksiyonel olmayan testleri gerçekleştirmenin birçok farklı yolu vardır, ancak çağdaş otomasyon araçları, sonuçlarınızın kalitesinden ödün vermeden test kapsamını ve doğruluğunu en üst düzeye çıkarmayı kolaylaştırır.

 

SSS ve kaynaklar

Fonksiyonel olmayan testler hakkında daha fazla bilgi edinmek istiyorsanız, internette çok sayıda SSS ve kaynak bulunmaktadır.

Aşağıdaki favori çevrimiçi fonksiyonel olmayan test kaynaklarımıza göz atın veya fonksiyonel olmayan test hakkında en sık sorulan bazı soruların yanıtlarını okuyun.

 

1. Fonksiyonel olmayan testlerle ilgili en iyi kurslar

 

İşlevsel olmayan test yöntemleri ve yaklaşımları hakkındaki bilgilerinizi genişletmenize yardımcı olabilecek çok sayıda çevrimiçi kurs mevcuttur.

Bu kursların bazıları ücretsizdir, bazıları ise ücret karşılığında bir sertifika veya yeterlilik sunabilir. Akredite bir kursa katılmak istiyorsanız, işvereninize size sponsor olup olmayacaklarını ve eğitim masraflarını karşılayıp karşılamayacaklarını sorabilirsiniz.

 

Fonksiyonel olmayan testlerle ilgili en iyi kurslardan bazıları şunlardır:

 

  • TSG: Fonksiyonel Olmayan Eğitim 2 Günlük Kurs

 

  • Udemy: Eksiksiz 2023 Yazılım Testi Eğitim Kampı

 

  • Edx: Yazılım Testi Profesyonel Sertifikası

 

  • Eğitici: Performans Testi Otomasyonu 101

 

2. Fonksiyonel olmayan testlerle ilgili en iyi 5 mülakat sorusu nelerdir?

 

Yazılım testinde çalışmak için bir iş görüşmesine hazırlanıyorsanız, görüşmeciniz yazılım testinin bu önemli aşamasının nasıl çalıştığını anladığınızdan emin olmak için size fonksiyonel olmayan test hakkında sorular sorabilir. Yaygın mülakat sorularına önceden etkili yanıtlar hazırlayarak mülakatınıza hazırlanın.

Fonksiyonel olmayan testlerde kullandığınız yaklaşımlar ve yöntemler fonksiyonel testlerde kullandığınız yaklaşımlardan nasıl farklı olabilir?

Fonksiyonel olmayan testlerin fonksiyonel testlerden farkı nedir?

Hangi farklı fonksiyonel olmayan test türleri vardır?

Fonksiyonel testleri ve test senaryolarını nasıl önceliklendiriyorsunuz?

İşlevsel testler genellikle yazılım testinin hangi aşamasında gerçekleştirilir?

 

3. Fonksiyonel olmayan testler hakkında en iyi YouTube eğitimleri

 

Video izleyerek öğrenmeyi tercih ediyorsanız, fonksiyonel olmayan testlerle ilgili YouTube eğitimlerini bu tür yazılım testleri hakkında daha fazla bilgi edinmenin yararlı bir yolu olarak görebilirsiniz.

Aşağıda, bugün mevcut olan yazılım testi ile ilgili en iyi YouTube eğitimlerinden bazıları bulunmaktadır.

Fonksiyonel Olmayan Yazılım Testi Nedir? Bir Yazılım Testi Eğitimi
Yazılım Testi Yardımı: Fonksiyonel Olmayan Testler
Yazılım Testinde Fonksiyonel Olmayan Testler
W3Schools’u ziyaret edin
Fonksiyonel ve Fonksiyonel Olmayan Testler

 

4. Fonksiyonel olmayan testler nasıl sürdürülür?

 

Uygun test bakımı, yazılım testlerinin test sonuçlarının kalitesinden ödün vermeden tekrarlanabilmesini sağlar.

Fonksiyonel olmayan testleri sürdürerek, geliştirme sürecinin her aşamasında testlerin yeterli olmasını ve testlerinizin sürekli değişen koda uygun olarak her zaman güncellenmesini sağlayabilirsiniz.

 

Aşağıdaki ipuçlarımızı takip ederek fonksiyonel olmayan testleri sürdürebilirsiniz.

 

Test senaryoları oluştururken ve dokümantasyon yazarken test ekibi ile açık bir şekilde iletişim kurmak

Her zaman en iyi test tasarım uygulamalarını takip edin

Test sürecinin çeşitli aşamalarında test protokollerini yeniden değerlendirmek

Testinizdeki değişiklikleri ilerledikçe güncelleyin

Mevcut testlerde değişiklik yaparken gelecekteki projeleri göz önünde bulundurun

 

5. Fonksiyonel olmayan testler kara kutu mu yoksa beyaz kutu testi midir?

 

Fonksiyonel olmayan testler bir tür kara kutu testidir, yani test uzmanları sistemin iç işleyişiyle değil, yalnızca dış çıktılarıyla ilgilenir.

Bu, sistemin dahili olarak çalışma şeklini test eden beyaz kutu testi ile tezat oluşturur. Beyaz kutu testine örnek olarak birim testi ve entegrasyon testi verilebilir.

Fonksiyonel ve fonksiyonel olmayan gereksinim testleri kara kutu testlerine örnektir. Bu, test uzmanlarının kara kutu testi yapmak için ileri teknik becerilere veya bilgisayar programlama bilgisine ihtiyaç duymadıkları ve test ettikleri sistemlerin nasıl uygulanacağını öğrenmeleri gerekmediği anlamına gelir.

Download post as PDF

Alex Zap Chernyak

Alex Zap Chernyak

Founder and CEO of ZAPTEST, with 20 years of experience in Software Automation for Testing + RPA processes, and application development. Read Alex Zap Chernyak's full executive profile on Forbes.

Get PDF-file of this post