Anahtar kelimeye dayalı test - Keyword-driven testing

Anahtar kelimeye dayalı test, Ayrıca şöyle bilinir eylem kelimesine dayalı test (karıştırılmamalıdır eyleme dayalı test), bir yazılım testi her ikisi için de uygun metodoloji Manuel ve otomatik test. Bu yöntem, dokümantasyonu ayırır test durumları - kullanılacak veriler ve işlevsellik dahil - test senaryolarının yürütülme şeklinin reçetesinden. Sonuç olarak, test oluşturma sürecini iki farklı aşamaya ayırır: bir tasarım ve geliştirme aşaması ve bir yürütme aşaması. Tasarım alt bölümü, İhtiyaç analizi ve değerlendirme ve veri analizi, tanımı ve popülasyonu.

Genel Bakış

Bu metodoloji, test edilecek bir işlevi sembolize etmek için anahtar sözcükler (veya eylem sözcükleri) kullanır. Müşteri Girin. Anahtar kelime Müşteri Girin veritabanına yeni bir müşteri girmek için uygulanması gereken eylemler dizisi olarak tanımlanır. Anahtar kelime belgeleri şunları içerecektir:

  • test edilen sistemin başlangıç ​​durumu (SUT)
  • başlanacak pencere veya menü
  • doğru veri giriş penceresine ulaşmak için tuşlar veya fare tıklamaları
  • bulunacak alanların adları ve hangi bağımsız değişkenlerin girileceği
  • ek diyalogların açılması durumunda gerçekleştirilecek eylemler (onaylar gibi)
  • göndermek için tıklama düğmesi
  • Eylemlerin tamamlanmasından sonra SUT'nin durumunun ne olması gerektiğine dair bir iddia

Anahtar kelimeye dayalı test söz dizimi, bir tablo formatı kullanarak test senaryolarını (veriler ve eylem sözcükleri) listeler (aşağıdaki örneğe bakın). İlk sütun (sütun A), test edilen işlevsellik olan Enter Client anahtar kelimesini içerir. Sonra kalan sütunlar, B-E, anahtar kelimeyi yürütmek için gereken verileri içerir: Ad, Adres, Posta Kodu ve Şehir.

BirBCDE
.İsimAdresPosta koduKent
Müşteri GirinJane Smith6 High StreetSE25 6EPLondra

Başka bir müşteri girmek için, test eden kişi tabloda anahtar kelime olarak Enter Client ve sonraki sütunlarda yeni müşterinin verilerini içeren başka bir satır oluşturur. Dahil edilen tüm eylemleri yeniden listelemeye gerek yoktur.

İçinde test durumlarınızı şu şekilde tasarlayabilirsiniz:

  • Testi gerçekleştirmek için uygulama ve sistemle etkileşime geçmek için gereken üst düzey adımları belirtir.
  • Özelliklerin nasıl doğrulanacağını ve onaylanacağını belirtir.
  • Test için ön koşulları belirleme.
  • Test için kabul kriterlerinin belirlenmesi.

Yazılım geliştirmenin yinelemeli doğası göz önüne alındığında, test tasarımı genellikle bir testin manuel olarak uygulanmasından daha soyuttur (daha az spesifik), ancak kolayca bir teste dönüşebilir.

Avantajlar

Anahtar kelimeye dayalı test, Test Edilen Sistem / Yazılımdaki (SUT) değişikliklerin neden olduğu bakıma duyarlılığı azaltır. Ekran düzenleri değişirse veya sistem başka bir işletim sistemine taşınırsa, test senaryolarında neredeyse hiç değişiklik yapılması gerekmez: değişiklikler anahtar kelime belgelerinde yapılacaktır, anahtar kelime kaç kez kullanılırsa kullanılsın her anahtar kelime için bir belge test senaryoları ve derin bir test tasarımı sürecini ifade eder.

Ayrıca, anahtar kelimenin çalıştırılma yönteminin çok ayrıntılı açıklaması nedeniyle (anahtar kelime belgelerinde) test hemen hemen herkes tarafından yapılabilir. Bu nedenle, anahtar kelimeye dayalı test her ikisi için de kullanılabilir manuel test ve otomatik test.[1]

Ayrıca, bu yaklaşım, test çalışmasıyla ilgili ve test çalışması tarafından üretilen tüm araçları, varlıkları ve verileri birleştiren açık ve genişletilebilir bir çerçevedir. Bu tek çerçeve altında, test çabasındaki tüm katılımcılar, ulaşmak istedikleri kalite hedeflerini tanımlayabilir ve iyileştirebilir. Takımın bu hedefleri karşılamak için uygulayacağı planı tanımladığı yerdir. Ve en önemlisi, sistemin durumunu herhangi bir zamanda belirlemek için tüm ekibe tek bir yer sağlar.

Test, yazılım geliştirme sürecindeki geri bildirim mekanizmasıdır. Bir geliştirme çabasının belirli bir yinelemesinde rotada kalmak için nerede düzeltmeler yapılması gerektiğini size söyler. Ayrıca, geliştirilmekte olan sistemin mevcut kalitesi hakkında da bilgi verir. Test uygulama etkinliği, test senaryosunu uygulayan yeniden kullanılabilir test komut dosyalarının tasarımını ve geliştirilmesini içerir. Uygulamadan sonra, test senaryosu ile ilişkilendirilebilir.

Uygulama her test projesinde farklıdır. Bir projede, her ikisini de oluşturmaya karar verebilirsiniz otomatik test komut dosyaları ve manuel test komut dosyaları.[2] Bunun yerine testler tasarlamak yinelemeli bir süreçtir. Test tasarımını kullanım durumu özelliklerine, gereksinimlerine, prototiplerine vb. Dayandırarak herhangi bir sistem uygulamasından önce testler tasarlamaya başlayabilirsiniz. Sistem daha net bir şekilde belirlendikçe ve çalışabileceğiniz sistem yapılarına sahip olduğunuzda, tasarımın ayrıntılarını detaylandırabilirsiniz. Test tasarlama etkinliği, "Testi nasıl gerçekleştireceğim?" Sorusuna yanıt verir. Eksiksiz bir test tasarımı, okuyucuları sistemle hangi eylemlerin yapılması gerektiği ve sistem düzgün çalışıyorsa hangi davranışları ve özellikleri gözlemlemeyi beklemeleri gerektiği konusunda bilgilendirir.

Test tasarımı, test uygulamanızı nasıl oluşturacağınızı belirlemede yapılması gereken tasarım çalışmasından farklıdır.

Metodoloji

Anahtar kelimeye dayalı test metodolojisi, test sürecinin yürütülmesini birkaç aşamaya ayırır:

  1. Model temeli / prototipleme: gereksinimlerin analizi ve değerlendirilmesi.
  2. Test modeli tanımı: Sonuç gereksinimleri değerlendirmesinde, kendi yazılım modeline yaklaşın.
  3. Test verisi tanımı: tanımlanmış kendi modeli, başlangıç ​​anahtar kelimesi ve ana / tamamlayıcı veri tanımı temelinde.
  4. Test hazırlığı: giriş testi temeli vb.
  5. Test tasarımı: test esası analizi, test senaryosu / prosedür tasarımı, test verileri tasarımı.
  6. Manuel test yürütme: yürütme kılavuzu olarak anahtar kelime belgelerini kullanarak test senaryolarının manuel olarak yürütülmesi.
  7. Test yürütme otomasyonu: anahtar kelime belgelerine göre eylemler gerçekleştiren otomatik komut dosyasının oluşturulması.
  8. Otomatik test yürütme.

Tanım

Bir Anahtar Kelime veya Eylem Kelimesi, test satırlarının nasıl yürütülmesi gerektiğini açıklayan bir test nesnesindeki eylemlerin tanımlanmış bir kombinasyonudur. Bir eylem kelimesi argümanlar içerir ve bir test analisti tarafından tanımlanır.

Test, herhangi bir geliştirme sürecinde önemli bir adımdır ve bir nesneye (sistem / SW testi - SUT) bir dizi test veya kontrol uygulamalıdır. Testin sadece hataların varlığını gösterebileceğini, eksikliklerini gösterebileceğini her zaman hatırlamak. RT sistem testinde, SUT'nin doğru çıktıları üretip üretmediğini kontrol etmek yeterli değildir. Ayrıca, bu çıktının üretilmesi için geçen sürenin beklendiği gibi olduğunu doğrulamalıdır. Ayrıca, bu çıktıların zamanlaması da girişlerin zamanlamasına bağlı olabilir. Buna karşılık, gelecekteki uygulanabilir girdilerin zamanlaması çıktılardan belirlenir.[2]

Test yürütme otomasyonu

Uygulama aşaması, araca veya çerçeveye göre farklılık gösterir. Genellikle, otomasyon mühendisleri "kontrol et" ve "gir" gibi anahtar kelimeler sağlayan bir çerçeve uygular.[1] Test uzmanları veya test tasarımcıları (nasıl programlanacağını bilmeleri gerekmeyen) test durumları mühendisler tarafından uygulanan planlama aşamasında tanımlanan anahtar kelimelere göre. Test, anahtar kelimeleri okuyan ve ilgili kodu çalıştıran bir sürücü kullanılarak yürütülür.

Diğer metodolojiler, hepsi bir arada bir uygulama aşaması kullanır. Test tasarımı ve test mühendisliği görevlerini ayırmak yerine, test tasarımı dır-dir test otomasyonu. "Düzenle" veya "kontrol et" gibi anahtar sözcükler, gerekli kodun önceden yazılmış olduğu araçlar kullanılarak oluşturulur. Anahtar kelimelerin uygulanması zaten aracın bir parçası olduğundan, bu, test sürecinde ekstra mühendislerin gerekliliğini ortadan kaldırır. Örnekler şunları içerir: GUIdancer ve QTP.

Artıları

  • Uzun vadede bakım düşük:
    • Test senaryoları kısa ve öz
    • Pay sahipleri için test senaryoları okunabilir
    • Test senaryolarının değiştirilmesi kolaydır
    • Yeni test senaryoları, mevcut anahtar kelimeleri daha kolay yeniden kullanabilir
  • Birden çok test senaryosunda anahtar kelimenin yeniden kullanımı
  • Belirli bir araca veya programlama diline bağlı değil
  • Çalışma Bölümü
    • Test senaryosu oluşturma, daha güçlü alan uzmanlığı gerektirir - daha az araç / programlama becerileri
    • Anahtar kelime uygulaması, daha güçlü araç / programlama becerisi gerektirir - nispeten daha düşük alan becerisi ile
  • Katmanların Soyutlanması

Eksileri

  • Uzun Market zamanı (manuel test veya kayıt ve tekrar oynatma tekniğiyle karşılaştırıldığında)
  • Başlangıçta orta derecede yüksek öğrenme eğrisi

Ayrıca bakınız

Referanslar

  1. ^ a b Danny R. (Kasım 2004) yakalandı. "Anahtar Kelime Odaklı Test". Sticky Minds. Yazılım Kalite Mühendisliği. Alındı 12 Eylül 2012.
  2. ^ a b Mandurrino, José L. (Temmuz 2014). "Gestione e Approccio alla validazione in system RT (Real-Time)". UTIU. Eksik veya boş | url = (Yardım)

Dış bağlantılar