BilgisayarlarYazılım

Test yazılımı yöntemleri ve bunları karşılaştırmak. Test "kara kutu" test yöntemi ve "beyaz kutu" yöntemi

Test yazılımı (SW) ele alınması gereken kod boşluklar, eksiklikler ve hatalar tespit. Ayrıca analiz yardımıyla yazılımın işlevselliğini ve doğruluğunu değerlendirmek süreci olarak tanımlanabilir. entegrasyon ve yazılım uygulamaları test temel yöntem ve kalite özellikleri, tasarım ve kodlama, güvenilirlik değerlendirmesi, doğrulama ve onaylama test olduğundan emin olun.

yöntemleri

Yazılım test amacı - dikkatli bir şekilde kontrol edilen şartlar altında sistematik hatalarının giderilmesi yoluyla yazılım sisteminin kalitesinin onay kendi tamlığını ve doğruluğunu, hem de gizli hataları tespit belirlenmesi.

doğrulama yöntemleri (test) programları statik ve dinamik ayrılabilir.

Eski gayrı, izleme ve teknik inceleme, denetim, adım analizi, denetim adım, hem de statik veri akışı analizi ve yönetimi de dahildir.

Dinamik teknikler şunlardır:

  1. Beyaz kutu testi. Bu programın iç mantık ve yapısının detaylı bir çalışmadır. Bu kaynak kod bilgisine gereklidir.
  2. Kara kutu test. Bu teknik uygulama iç işleyişi hakkında herhangi bir bilgi gerektirmez. Biz sisteminin sadece temel yönlerini değil ilişkin veya iç mantıksal yapısının birkaç ilişkili düşünün.
  3. Gri kutusu yöntemi. İki önceki yaklaşımları birleştirir. Uygulamanın iç işleyişi sınırlı bilgisi olan hata ayıklama sisteminin temel özelliğinin bilinmesine ile birleştirilmiştir.

şeffaf test

beyaz kutu yöntemi kullanarak test komut usul tasarım yapısını kontrol eder. Bu teknik yazılımın işleyişinin bir kısmını analiz ederek böyle kötü yönetim kod sistemi olarak uygulaması hatalarını, ortaya çıkarmak için izin verir. Bu test metodları entegrasyonu, modül ve sistem düzeyinde uygulanabilir. tester kaynak koduna erişebilir ve uygunsuz davranan hangi birim bulmak için kullanabilirsiniz gerekir.

beyaz-box tarafından programlarını Test aşağıdaki avantajları vardır:

  • Gereksiz satırları kaldırarak gizli kodundaki bir hata algılamasını sağlar;
  • yan etkilerin kullanılması;
  • Maksimum kapsama bir test komut dosyası yazarak elde edilir.

dezavantajları:

  • teknikte uzman bir hata ayıklayıcı gerektiren pahalı bir prosestir;
  • Tüm olası gizli hataların ayrıntılı çek çok karmaşık olduğu için birçok yollar keşfedilmemiş kalır;
  • kodun bazı farkedilmeden geçilecek.

Beyaz kutu testi bazen saydam veya açık kaynak koduna dayalı olarak kutu, yapısal, mantıksal test, ve mantık mimarisi test ile ifade edilir.

Başlıca çeşitleri:

1) akış kontrolü test - Daha az karmaşık daha basit yollar lehine yapısal strateji program kontrol akışı modeli kullanılarak ve;

2) kolda da bir araya getirilen çözelti içeren her bir kontrol operatörü olan) (doğru veya yanlış her seçeneği ayıklama incelemek üzere tasarlanmıştır;

3) icra yollarının bir baz dizi izole edilmesi için mantıksal karmaşıklık ölçüsü usul proje kurmak için test sağlar ana yolu, test;

; Reklamla ilgili bilgileri sayısı ve program değişkenleri ek açıklamalar ile araştırma, akış kontrol stratejisi - 4) veri akışının kontrol edilmesi

5) test çevrimi - tamamen siklik proseslerin doğru çalışması üzerinde duruldu.

davranışsal ayıklama

Kara kutu test bir "kara kutu" olarak yazılım davranır - Programın asıl çalışması hakkında bilgi sayılır ve sistemin sadece temel yönlerini kontrol edilmez. Bu durumda, test kaynak koduna erişimi olmayan sistem mimarisini bilmesi gerekir.

Bu yaklaşımın avantajları:

  • Büyük kod segmenti için verim;
  • algı test kolaylığı;
  • Kullanıcı perspektif açık bir şekilde geliştirici bakış açıları (programlayıcı ve test birbirinden bağımsızdır) ayrılır;
  • Testin daha hızlı yaratılması.

Test yazılımı kara kutu yöntemi şu dezavantajları vardır:

  • Gerçekten sınırlı kapsamaya, test durumlarda, belirli bir sayıda gerçekleştirilen;
  • test komut dosyalarını geliştirmek zordur net bir şartname eksikliği;
  • Düşük verimlilik.

Bu teknoloji için diğer adlar - davranışsal, şeffaf olmayan, fonksiyonel test ve kapalı bir kutunun ayıklama yöntemi.

Bu kategori şu yazılım test teknikleri içerebilir:

1) Giriş yazılım modülü veriler ayrı bölüme ayrılmış olarak test verileri setini azaltabilir bölümü, denk;

2) sınır değeri analizi sınırları veya aşırı sınır değerlerinin doğrulanması odaklanır - minimum, maksimum ve hatanın tipik değerleri;

3) tüylenme - hataları veya otomatik ya da yarı otomatik modda veri bozuk poluiskazhennyh girerek arama uygulamak için kullanılan;

4) nedensellik sayımları - grafikler oluşturulması ve eylem ve nedenleri arasındaki ilişkiyi belirlemek dayalı tekniği: TD mantıksal ve mantıksal ve kimlik, olumsuzluk, - dört ana karakterler neden ve etki arasındaki ilişkiyi ifade edilmesi;

5) ortogonal diziler doğrulanması ayrıntılı araştırma imkanı aşan nispeten küçük bir giriş alanına sahip sorunların uygulanır;

6) tüm çiftleri test - test değerlerinin bir dizi giriş parametreleri her bir çifti tüm olası ikili kombinasyonlar içerdiği bir teknik;

7) ayıklama durum geçiş - makinesinin durumunu kontrol etmek, hem de gezinmek için yararlı bir teknik GUI kullanıcı.

Kara kutu test: Örnekler

kara kutu tekniği yazılım arayüzü veya sistemin özellikleri, dokümantasyon ve açıklamalar dayanmaktadır. Buna ek olarak, yazılımın beklenen davranışı temsil eden (resmi veya gayri) modellerini kullanabilir.

Tipik olarak, bu yöntem, bir kullanıcı arayüzü ayıklama için kullanılan ve bir veri toplama ve sonuçlar sokulmasıyla uygulama ile etkileşimi gerektirir - raporlar veya Çıktılarınızla, ekrandan.

tester, bu nedenle, anahtarlar, düğmeler veya diğer arayüzleri üzerinde etki yaparak girerek yazılımı ile etkileşime girer. Aşağıdaki örnekte gösterildiği gibi veri girişi seçimi, uygulama veya eylemlerin sırası sırası kombinasyonları büyük bir toplam sayıda yol açabilir.

Kaç testleri, 4 pencere bayrak ve tek seferlik alanı için tüm olası değerleri kontrol etmek için yapmak gerekir süreyi saniye olarak ayarlayın? İlk bakışta hesaplama de basittir: iki olası durumları ile 4 alanları - 24 = 16, 99, 00 olası konum sayısı ile çarpılmalıdır, yani 1600 muhtemel testlerin.

Ancak bu hesaplama yanlıştır: iki alfanümerik pozisyonlarda oluşur ve Böylece vb alfanümerik karakterler, özel karakterler, boşluklar içerebilir yani biz iki sayılık da bir boşluk içerebileceğini belirleyebilir, eğer .... sistem, bir 16-bit, bilgisayar, yaptıkları takdirde 68.719.476 736'da bir toplam verir bayrakları 16 kombinasyonları ile çarpılacak Elde edilen 4294967296 test durumda her konum için 216 = 65536 bir edecek olan saniyede 1 testi, toplam devam de olzhitelnost test 2 177,5 yıldır. 32 veya 64 bit sistemler için, süresi daha.

Bu nedenle, kabul edilebilir bir seviyede bu süreyi azaltmak için bir ihtiyaç vardır. Bu nedenle, teknik test kapsamını azaltmadan test vakalarının sayısını azaltmak için uygulanmalıdır.

Denklik bölümleme

Eşdeğerlik bölümleme etc .. Bu bölme bir eşdeğer tüm verileri aynı şekilde ve tedavi edilecek prensibine dayanır giriş veya çıkış değerleri, karakter, sayısal olup, yazılım içinde mevcut olan herhangi bir değişken için basit bir yöntem uygulanabilir aynı talimatlar.

Test sırasında, her bir eşdeğerlik bölümünün bir temsilcisi seçilir. Bu sistematik komut ve fonksiyon kapsamının kaybı olmadan mümkün test vakalarının sayısını azaltmak için izin verir.

Bu bölme bir başka sonucu, farklı değişkenler ve test durumlarda ilgili azalma ile kombinasyon patlama azaltmaktır.

örneğin, içerisinde (1 / X) için 1/2 üç veri dizileri, üç eşdeğer bölümü kullanarak:

1. Tüm pozitif sayılar aynı şekilde muamele edilecek ve doğru sonuçları vermelidir.

2. Bütün negatif sayılar aynı sonucu aynı şekilde ele alınır. Negatif bir sayının kök hayali, çünkü bu, yanlış.

3. Sıfır olarak ele alınır ve "Sıfıra bölme" hatası elde edilir. Bu, tek bir değere sahip bir kesittir.

Böylece, tek bir değere düşürülür biri üç belirgin bölüme bakınız. tek güvenilir sonuçlar verir "doğru" bölümü, ve yanlış sonuçlar ile iki "yanlış" yoktur.

sınır değer analizi

eşdeğer bölünmesi sınırları üzerinde işlenmesi beklenenden farklı yapılabilir. sınır değerlerinin araştırılması - bu alanlarda yazılımın davranışını analiz iyi bilinen bir yöntem. Bu teknik hatalar tespit etmek mümkün kılar:

  • ilişkisel operatörlerin uygun olmayan kullanım (<,>, =, ≠, ≥, ≤);
  • tek bir hata;
  • döngüleri ve iterasyon sorunlar,
  • Yanlış tür ya da bilgileri depolamak için kullanılan değişkenlerin büyüklüğü;
  • veri türleri ve değişkenler ile ilişkili yapay sınırlamalar.

saydam test

gri kutu yöntemi test kapsamı, siyah beyaz tekniklerin bir kombinasyonu yoluyla sisteminin tüm zor seviyeleri odaklanabilir artırır.

Bu tekniği kullanarak, test değerlerinin geliştirilmesi için test iç veri yapıları ve algoritmalar bilgi sahibi olmalıdır. aşağıdaki gibi, gri kutu test yöntemlerine örnekler:

  • mimari model;
  • Modelleme Dili (UML) Unified;
  • durum modeli (sonlu durum makinesi).

test durumları geliştirmek için gri kutu yönteminde beyaz mühendislik kodları modülleri inceledi ve gerçek test siyah teknoloji programlarının arayüzleri üzerinde gerçekleştirilir.

Bu test metotları aşağıdaki avantajları vardır:

  • avantajlar teknisyen, beyaz ve siyah kutular kombinasyonu;
  • Test arayüzü ve fonksiyonel özellikleri, ve kaynak kodu dayanmaktadır;
  • ayıklayıcı harika test durumları yapabilir;
  • onay kullanıcı değil, programın tasarımcı bakış açısından imal edilir;
  • özel test geliştirme oluşturmak;
  • nesnellik.

dezavantajları:

  • kaynak koduna erişim yoktur çünkü test kapsamı sınırlıdır;
  • dağıtılmış uygulamalar hatalarına karmaşıklığı;
  • birçok yolu keşfedilmemiş kalır;
  • yazılım geliştiricisi testini başlattı, o zaman daha fazla araştırma aşırı olabilir.

gri kutu teknikleri için bir başka isim - yarı saydam bir ayıklama.

Bu kategori, test gibi yöntemleri içerir:

1) ortogonal dizi - tüm olası kombinasyonları, bir alt kümesinin kullanılması;

2) program verilerinin durumunu kullanılarak matris ayıklama;

Hafızaya yeni değişiklikler gerçekleştirilen 3) gerici denetim;

İyi bir uygulamanın tasarım ve mimariyi analizleri 4) şablonu testi.

Yazılım test tekniklerinin karşılaştırılması

Dinamik yöntemlerinin kullanımı geliştirilmesini, uygulanmasını ve yürütülen gereken testlerin sayısının bir kombinasyon patlamasına yol açar. Her teknik dikkate kendi sınırlamaları alarak, pragmatik kullanılmalıdır.

yok tek gerçek yöntem, sadece belirli bağlamda daha uygun olanları vardır. Yapı mühendisliği bize yararsız veya zararlı kod bulmalarını sağlar, ancak bunlar karmaşıktır ve büyük programlara uygulanamaz. özelliklerine dayalı yöntemler - Eksik kodu tespit edebiliyoruz sadece onlar, ancak dışarıdan tanımlayamaz. Bazı teknikler diğerlerine göre daha belirli bir test seviyesi, hata tipi ya da bağlam için daha uygundur.

Aşağıda üç dinamik test teknikleri arasındaki temel farklar şunlardır - yazılım ayıklama üç şekli arasında bir karşılaştırma tablosu verilmiştir.

görünüş

kara kutu yöntemi

Gri kutusu yöntemi

Beyaz kutu yöntemi

Programın bileşenleri ile ilgili bilgi kullanılabilirliği

sadece temel yönlerini irdeler

Programın iç yapısı hakkında Kısmi bilgi

Kaynak kodu tam erişim

Programın parçalanma derecesi

düşük

merkezi

yüksek

Kim hata ayıklama üretir?

Kullanıcılar, test ve geliştiriciler End

Kullanıcılar, geliştiriciler ve debuggers End

Geliştiriciler ve test

baz

Test dış acil durumlarda dayanmaktadır.

Diyagramlar veritabanı, veri akış şemaları, algoritma ve mimarinin iç bilginin devlet

İç cihaz tamamen farkındadır

kapsama derecesi

Daha az kapsamlı ve zaman en az gerektirir

merkezi

Potansiyel en kapsamlı. Zaman alan

Veriler ve iç sınırları

Sadece deneme yanılma yoluyla ayıklama

Onlar biliniyorsa, veri alanları ve iç sınırları kontrol edilebilir

En iyi test veri alanları ve iç sınırları

Uygunluk test algoritması

hayır

hayır

evet

otomasyon

yazılım test Otomatik yöntemler çok bakılmaksızın teknik çevre ve bağlamı, muayene sürecini kolaylaştırmak olduğunu. Bunlar iki durumda kullanılır:

1) Bu tür test daha önemli noktalar konsantrasyonu için bir zaman serbest bırakmak amacıyla, birkaç bin satır dosya karşılaştırma, sıkıcı tekrarlayan ya da titiz görevleri otomatikleştirmek için;

2) izleme veya kolayca saniyenin yüzde biri ölçülebilir performans doğrulama veya analiz tepki süresi gibi insanlar tarafından yapılamaz görevleri gerçekleştirmek için.

Deney araçları farklı şekillerde sınıflandırılabilir. Bir sonraki bölünme destekledikleri görevler dayanmaktadır:

  • proje yönetimi desteği, sürümleri, yapılandırmaları, risk analizi, deney izleme, hataları, kusurları ve raporlama araçları içerir Test yönetimi;
  • tamlığı ve belirsizlik, önceliği ve her testin izlenebilirliği için onları kontrol, depolama şartları ve özellikleri içeren şartlar yönetimi;
  • eleştiri ve akış izleme ve görevleri, kayıt ve yorumlar, kusur tespiti depolanması ve yazma kod standartlara uyumun sağlanması kusurları tespit etmek için iletişim kaynak belge ve kod statik analiz izleme kontrol listeleri ve kurallara, planlanan düzeltmeler yönetim bağlantıları da dahil olmak üzere statik analiz, yapıları ve bağımlılıkları analiz, kod ve mimari metrik parametrelerinin hesaplanması. Buna ek olarak, derleyici, analizörleri, jeneratörler ve çapraz referanslar ilişkilerini kullanmak;
  • modelleme iş davranışı için araçlar içerir ve modelleri test modelleme;
  • Test geliştirme oluşturmak veya yönetim, koşullar ve risklerin istatistiksel analiz kuralları temelinde dosya ve veri tabanları, mesajlaşma, veri doğrulama değiştirmek yönetmek, koşullar ve kullanıcı arayüzü modelleri ve kod bazında beklenen verilerin oluşturulmasını sağlar;
  • Başarılı ve başarısız testler belirlemenize yardımcı karşılaştırıcılarının kullanarak bir grafik kullanıcı arayüzü, API, komut satırı veri girerek kritik bir bakış;
  • Eğer kararlı çıkış alt kümesi, terminal emülatörlerine, cep telefonları ve ağ donanımları, dilleri, işletim sistemleri ve kontrol için çevreye göre Vol. h. Simülasyon donanımları eksik donanım veya yazılım, yerine sağlar destek ayıklama ortamı donanımı eksik parçalar sürücüsünü değiştirerek, hayali yakalama ve işletim modifiye vb modülleri, aynı zamanda araçları işlemci simülasyon sınırlı olmamak üzere, RAM, ROM, veya ağ talep .;
  • .. veri dosyaları, veritabanları, sırasında ve test dahil dinamik tamamlandıktan ve toplu karşılaştırma, Otomatik "Oracles" den sonra beklenen sonuçları kontrol karşılaştırılması;
  • Ölçüm, analiz ve sistem kaynakları rapor doğrulanması için büyüme gerçekçi bir senaryoda simüle yük üreten yük uygulamalarında, veri tabanları, ağlar veya sunucuları altında bellek sızıntıları lokalizasyonu ve yanlış olarak kontrol davranışı tahmin sistemi için ölçüm kaplanması;
  • güvenlik;
  • Performans testi, yükleme ve dinamik analizi;
  • Vol. H diğer araçlar. Yazım ve sözdizimi, kontrol etmek ağ güvenliği, tüm web sitesi sayfalarında ve diğer kullanılabilirliğini.

perspektif

yazılım sektöründe değişen trendler ile, hata ayıklama süreci de değiştirilebilir. Böyle bir hizmet-orientirovannae mimari (SOA), kablosuz teknolojiler mobil hizmetler, vb. E. gibi yazılım test yeni yöntemler vardır test yazılımının yeni yollar açtı mı. Önümüzdeki birkaç yıl içinde sektöründe beklenen değişikliklerin bazıları aşağıda sıralanmıştır:

  • test geliştiriciler kodunuzu kontrol etmek mümkün olacak hafif bir model sunacaktır;
  • çelişkiler birçok ortadan kalkar, görüntüleme dahil ve erken bir aşamada modelleme programlarını test yöntemlerinin geliştirilmesi;
  • Birden müdahalelerde testin bulunması hata algılama süresini kısaltır;
  • Statik analiz ve tespiti daha yaygın olarak kullanılmaya anlamına gelir;
  • bu tarifnamenin kapsamı mineral matrislerin kullanımı, model ve kod kapsama alanı proje geliştirilmesini belirleyecektir;
  • kombinatoryal araçları test hata ayıklama için öncelikli alanları belirlemek için izin;
  • test yazılım geliştirme süreci boyunca daha sezgisel ve değerli hizmetleri sağlayacak;
  • debugger'lar ve programlama dilleri ile çeşitli etkileşim yazılı araç ve yazılım test yöntemleri oluşturabilir;
  • Hata ayıklama uzmanlar daha profesyonel eğitim verilecektir.

sistemler ile etkileşim yolu ve risklerin azaltılması ve iş değişiklikleri faydalarını artırırken sağladıkları bilgileri değiştirmek için, yeni bir iş odaklı yazılım test yöntemleri ile değiştirilecektir.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 tr.atomiyme.com. Theme powered by WordPress.