Otomatik kullanıcı arayüzü testi ile hangi özellikler test edilmelidir?


12

Yakın zamanda bir danışman bize, bir özellik yalnızca otomatik UI testleri (örneğin, Selenyum, Kodlu UI) ile test edilebiliyorsa, altta yatan bir mimari sorun olduğunu söylemiştik. Bu ifade biraz aşırı olsa da , UI testlerinin genel otomatik test takımınızın küçük bir kısmını oluşturması gerektiğinden , test piramidinin aynı satırları boyuncadır .

Peki, otomatik kullanıcı arayüzü testinde ne tür özellikler olmalı ? Cogent mimarisi olan bir sistem hala sadece kullanıcı arayüzü testleri ile doğrulanabilecek özelliklere sahip olacak mı, yoksa bu testler sadece bir dizi birim ve servis testi için "yedek" olarak mı işlev görmelidir?


Kullanıcı arayüzünün her özelliğinden ayrı olarak?

Yanıtlar:


11

Muhtemelen düğmeleri ve diğer widget'ları eylemlere bağlayan bir çeşit mimariniz var - kaydet'e tıklayın ve kaydetme işlevi çağrılmalıdır, vb.

Birim veya entegrasyon testleri yoluyla eylemlerin kendileri için iyi bir test kapsamına sahip olduğunuzu varsayarsak, otomatik UI testinin amacı, widget'ların temel eylemlere uygun çağrılar yapmasını ve bu eylemlerin sonuçlarını doğru bir şekilde görüntülemesini sağlamaktır.

Başka bir deyişle, kullanıcı arayüzünün modelin durumunu doğru bir şekilde yansıttığını ve denetleyiciye doğru şekilde bağlandığını doğrularlar.

Diğer bileşen, bazı iş mantığının UI kodunda olduğu zamandır. Örneğin, bir şifre alanında belirli karakterlere ihtiyacınız olabilir. Bu özellikleri bir şekilde test etmeniz gerekir, çünkü bunu birim testlerle yapmak zor veya imkansız olabilir.


3

Otomatik kullanıcı arayüzü testi ile hangi özellikler test edilmelidir?

Tüm kullanıcı arayüzü özellikleri.

Test etmelisiniz:

  • Kullanıcıların yapabileceği tüm işlevler.
  • Kullanıcıların yaptıkları tüm tarayıcılarda (ve sürümlerinde) yaptıkları işlevler.
  • Her ikisi de mutlu (her adımda doğru olanı yapmak) vs üzgün (kullanıcı hata yapar) yolları.
  • Geçerli ve geçersiz Veriler.
  • Büyük ve Küçük sayılar.
  • Tüm roller ve işlevler role özel roller.
  • Kullanıcı ve Yönetici arayüzleri.
  • Zorla girmeye çalışır.
  • Veri oluşturma ve güncelleme, amaçlandığı şekilde çalışır.
  • Silin çalışmalarını ve diğer tablolardaki ilişkili veritabanı verilerini silin.
  • Klavye ve Fare stili kullanıcıları.
  • Farklı cihazlar veya simülatörler - pc'ler, telefonlar, ipadler, vb.

0

Sadece otomatik UI testleri ile test edilebilen bir özellik diye bir şey yoktur. Selenyum gibi araçlar, insanı intihar noktasına kadar sıkmadan bir insanın davranışını taklit eder. "A soru kendinize (veya danışman) sor Nasıl bir kişinin olamayacağını bir program testi UI yönleri ki? " Bir sonraki soru şudur: " Eğer öyleyse, neden yaptıklarını ister misin? "

Öte yandan, böyle bir özelliğiniz varsa, evet, altta yatan bir mimari sorununuz olduğunu söyleyebilirim. :-)


1
"Sadece" ile ünite veya entegrasyon testlerine karşı otomatik UI testlerine atıfta bulunduğunu düşünüyorum. Selenyumun bir insanın (selenyum hızına karşı insanların hızını modulo) test edemeyeceği bir şey yaratmanın mümkün olduğunu düşünmüyorum
Bryan Oakley

Üzgünüm, bunu sorudan nereden alacağınızı görebiliyorum. Bana sadece Selenyum tarafından kullanılabilecek bir uygulama geliştirmeme rağmen - sadece UX ekibimize bağlı
kalmam için
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.