KG testi ve test cihazları – LessConf


Özellikle https://seclgroup.com/ adresindeki KG test uzmanı veya test mühendisi (QA-engineer), test senaryoları oluşturan, arızaları tahmin eden ve ürünlerde hata bulan bir uzmandır. Şirkette bu pozisyon neden var? Gerçek şu ki, herhangi bir BT ürününün geliştirmenin her aşamasında kontrol edilmesi gerekir: bu, iş kaynaklarından tasarruf sağlar çünkü kusurlar ne kadar erken bulunursa, onları düzeltmek o kadar kolay ve ucuz olur.
Bir test uzmanının iyi ve zevkle çalışması için dikkatli ve titiz olması önemlidir, iyi yapısal düşünme de yararlıdır. Kullanıcıların çıkarları, şirket yönetiminin hedefleri ve geliştirme ekibinin yetenekleri arasında bir denge sağlamak için iş süreçlerini anlamak ve ürünü iyice tanımak da yararlıdır.
Bir test uzmanının görev ve sorumlulukları
Testi yapan kişi, uygulamanın belgelerden beklendiği gibi çalışıp çalışmadığını kontrol eder. Aksi takdirde hatayı düzeltir ve düzeltilmesi için geliştirme departmanına sunar.
Tipik olarak, bir test cihazı bir testi birkaç aşamada yürütür:
- Belgeleri inceler ve içindeki tartışmalı noktaları netleştirir. Sonuç olarak, ürünün hangi işlevselliğinin test edilmesi gerektiğini anlar.
- Testler geliştirir. Bu aşamada, test cihazı test için bir test paketi hazırlar. Üründe değişiklikler yapılıyorsa ve bunlar düzenli olarak yapılıyorsa, test modelinin de ayarlanması gerekir.
- Ürün kontrolü. Bu aşamada test cihazı, geliştirilen testleri gözden geçirir ve sonucu düzeltir: testlerin başarılı olduğu işlevsellik yerlerinde, ürünün doğru çalıştığını onaylar ve testlerin geçmediği yerlerde hataları düzeltir.
Olası tüm hata türlerini belirlemek için bir KG mühendisi farklı test türleri gerçekleştirir.
test türleri
Bir test uzmanının görevi, bir yazılım ürünüyle çalışırken tüm olası ve hatta imkansız kullanıcı davranışı senaryolarını kontrol etmektir. Bunu yapmak için yazılım, görev tanımının geliştirilmesinden başlayarak tüm aşamalarda test edilir. Neyi, ne zaman ve nerede kontrol etmeniz gerektiğine bağlı olarak testler şunlar olabilir:
- Statik – işin en başında, program başlamadan önce gerçekleştirilir. Uzman projeyi, özellikleri ve yazılı kodu kontrol eder.
- Dinamik – Statikten sonra çalışır. Testi yapan kişi programı çalıştırır ve nasıl çalıştığını kontrol eder, yanıt süresini belirler ve yazılımın bellek ve işlemciye ne kadar yük yüklediğini öğrenir.
- İşlevsel – Ürünün amaçlandığı gibi çalıştığını ve gerçek sonucun beklendiği gibi olduğunu doğrular. Bu aşamada test cihazı, sistemin virüslere, bilgisayar korsanı saldırılarına ve gizli veri sızıntısına karşı direncini kontrol etmek için sistemin güvenliğini test eder. Başka bir uzman, yazılım ürününün diğer bileşenler ve sistemlerle nasıl etkileşime girdiğini ve bunlarla ek değişiklikler olmadan ne kadar kolay entegre olduğunu öğrenir.
- İşlevsel değil – Ürünün farklı koşullar altında nasıl performans gösterdiğini belirler. Test cihazı, programın performansını ve kullanılabilirliğini bulur, farklı yükler altında nasıl çalıştığını kontrol eder ve farklı platformlara uyum sağlar.
Programlar manuel veya otomatik olarak test edilebilir. İlk durumda, ürün uzmanlar tarafından kontrol edilir – bunlara “manipülatör” de denir. Testi yapan kişi belgeleri inceler ve test senaryolarını yürütür: normal bir kullanıcı tarafından yapılmış gibi manuel olarak ve uygulamanın çalışmasını kontrol eder. Hatalar varsa düzeltir. Ardından geliştiriciler hataları düzeltir ve QA mühendisi aynı senaryoya göre test senaryolarını yeniden çalıştırır. Birkaç yeniliği hızlı bir şekilde değerlendirmeniz gerekirse, manuel test yapılır.
Pek çok tipik senaryo ve test durumu olduğunda, test süreci otomatikleştirilir: Kullanıcı eylemlerini taklit eden programlar yazılır. Test mühendislerinin yaptığı budur. Uzman, görevi inceler ve belirli adımların nasıl otomatikleştirileceğine karar verir. Ardından kodu yazıp düzeltir ve testi çalışmaya başlar. Genellikle, işlevsel olmayan testler, süreci hızlandırmak ve manuel testlerde olası hataların sayısını azaltmak için otomatikleştirilir.
Test Uzmanı Becerileri
Profesyonel:
- Test teorisi. Uzman, testin sınıflandırılmasını anlamalı, temel yöntemleri ve araçları bilmeli ve test senaryoları oluşturabilmelidir.
- Veritabanları ve SQL. Çoğu web uygulaması bilgi depolamak için veritabanlarını kullanır. SQL sorgulama dili bilgisi, test uzmanının uygulama ile veritabanı etkileşimi süreçlerini anlamasına ve performansını değerlendirmesine yardımcı olacaktır.
- Linux. Bu işletim sistemi, bir test cihazının uğraşması gereken sunucuların, veritabanlarının ve web hizmetlerinin birçoğunu çalıştırır.
- Hata izleme araçları. Hata izleme ve iyileştirme genellikle birkaç kişi tarafından yapılır ve Jira veya Bugzilla gibi hata izleme sistemleri, çabalarını koordine etmeye ve kusurları düzeltmeye yardımcı olur.
- Programlama dilleri. Otomatik test için kod okumak ve yazmak için dil bilgisi gereklidir.
Esnek Beceriler:
- Dikkat. Kaçırılan bir hata nedeniyle şirket para ve itibar kaybedebilir. Bir KG uzmanı çok dikkatli ve titiz olmalı ve kendine sürekli şu soruyu sormalıdır: “Eğer … olursa ne olacak?”
- Sabır. İyi testçiler, hatasız program olmadığına inanırlar, ancak herkesin onları bulma sabrı yoktur.
- Düşüncelerinizi formüle etme yeteneği. Bir test uzmanı bir hata bulursa, ne zaman oluştuğunu açıkça açıklamalıdır. Ardından, geliştiriciler hatayı hızlı bir şekilde düzeltebilecek.
- sosyallik. Bir test uzmanı her zaman geliştiriciler, analistler, tasarımcılar ve müşteriden teknik destek içeren bir ekipte çalışır, bu nedenle farklı insanlarla iletişim kurabilmek ve ortak bir dil bulabilmek önemlidir.
- Stres toleransı. Gözden kaçan her bug için paniğe kapılmamak için gereklidir çünkü üründeki tüm bugları ilk seferde bulmak imkansızdır.
Çözüm
KG görevleri, test etmeyle güçlü bir şekilde ilişkilidir ve birçok KG uzmanına test uzmanı denir. Belki de QA, örneğin bir uygulamada çoğu zaman gerçekten elleriyle test eder, tüm vakaları doğrudan bir kullanıcı olarak yürütür (eğer istemci tarafını test etmekten bahsediyorsak) ve metin belgelerini derler. Ancak yine de, KG işlevleri daha geniştir: burada genel olarak kalite güvencesinden bahsediyoruz.