Yazılım Testi - QA, QC ve Test
Test, Kalite Güvencesi ve Kalite Kontrolü
Kalite Güvencesi, Kalite Kontrol ve Test arasındaki farkları tespit etmeye gelince çoğu insanın kafası karışır. Birbirleriyle ilişkili olmalarına ve bir dereceye kadar aynı faaliyetler olarak düşünülebilirler, ancak onları ayıran ayırt edici noktalar vardır. Aşağıdaki tablo, QA, QC ve Testing'i ayıran noktaları listeler.
Kalite güvencesi | Kalite kontrol | Test yapmak |
---|---|---|
QA, geliştirilen yazılımın ve amaçlanan gereksinimlerin doğrulanması bağlamında süreçlerin, prosedürlerin ve standartların uygulanmasını sağlayan faaliyetleri içerir. | Belgelenen (veya bazı durumlarda olmayan) gereksinimlere göre geliştirilmiş bir yazılımın doğrulanmasını sağlayan faaliyetleri içerir. | Bir yazılımdaki hataların / hataların / kusurların tanımlanmasını sağlayan faaliyetleri içerir. |
Sistemde gerçek testler yapmak yerine süreçlere ve prosedürlere odaklanır. | Prosedürlerin ve işlemlerin uygulanması yoluyla hatayı / kusuru tespit etmek amacıyla yazılımı çalıştırarak gerçek testlere odaklanır. | Gerçek testlere odaklanır. |
Süreç odaklı faaliyetler. | Ürün odaklı faaliyetler. | Ürün odaklı faaliyetler. |
Önleyici faaliyetler. | Düzeltici bir süreçtir. | Önleyici bir süreçtir. |
Yazılım Test Yaşam Döngüsünün (STLC) bir alt kümesidir. | QC, Kalite Güvencesinin alt kümesi olarak düşünülebilir. | Test, Kalite Kontrolün alt kümesidir. |
Denetim ve Muayene
Audit- Bir organizasyon veya ekip içinde gerçek test sürecinin nasıl yürütüldüğünü belirlemek için sistematik bir süreçtir. Genel olarak, bir yazılımın test edilmesi sırasında yer alan süreçlerin bağımsız bir incelemesidir. IEEE'ye göre, kuruluşların uyguladığı ve takip ettiği belgelenmiş süreçlerin bir incelemesidir. Denetim türleri arasında Yasal Uygunluk Denetimi, İç Denetim ve Sistem Denetimi yer alır.
Inspection- Herhangi bir yapının herhangi bir hata veya boşluğu tanımlayarak resmi veya gayri resmi teknik incelemelerini içeren resmi bir tekniktir. IEEE94'e göre inceleme, yazılım gereksinimlerinin, tasarımlarının veya kodlarının, hataları, geliştirme standartları ihlallerini ve diğer sorunları tespit etmek için yazar dışında bir kişi veya grup tarafından ayrıntılı olarak incelendiği resmi bir değerlendirme tekniğidir.
Resmi teftiş toplantıları şu süreçleri içerebilir: Planlama, Genel Bakış Hazırlığı, Teftiş Toplantısı, Yeniden Çalışma ve Takip.
Test ve Hata Ayıklama
Testing- Bir yazılımdaki hatayı / hatayı / kusuru düzeltmeden tanımlamayı içerir. Normalde, kalite güvence geçmişine sahip profesyoneller, hataların tespit edilmesinde yer alır. Test, test aşamasında gerçekleştirilir.
Debugging- Sorunların / hataların tanımlanmasını, izole edilmesini ve düzeltilmesini içerir. Yazılımı kodlayan geliştiriciler, kodda bir hatayla karşılaştıklarında hata ayıklama gerçekleştirirler. Hata ayıklama, Beyaz Kutu Testinin veya Birim Testinin bir parçasıdır. Hata ayıklama, Geliştirme aşamasında Birim Testi yapılırken veya bildirilen hataları giderirken aşamalar halinde gerçekleştirilebilir.