Sobes.tech
Middle+

SCREENPLAY NEDİR?

sobes.tech yapay zeka

AI'dan gelen yanıt

SCREENPLAY, otomatik testler için nesne yönelimli ilkeler ve Actor davranış desenine dayanan mimari bir şablondur. Sistem içindeki aktörlerin (karakterlerin) ne yaptığına odaklanır, nasıl yaptığına değil.

Ana kavramlar:

  • Aktörler: Uygulama ile etkileşime giren kullanıcıları veya sistemleri temsil eder. Yeteneklere (Abilities) sahiptirler ve Eylemler (Actions) gerçekleştirebilirler.
  • Yetenekler: Aktörün sisteme nasıl etkileşimde bulunabileceğini tanımlar (örneğin, "BrowseTheWeb" tarayıcıyla etkileşim için).
  • Eylemler: Aktörün yaptığı görevleri tanımlar (örneğin, "Login", "AddProductToCart"). Eylemler yüksek seviyeli (görevler) veya düşük seviyeli (UI ile etkileşimler) olabilir.
  • Sorular: Aktörün sistem durumu hakkında bilgi talep etmesine olanak tanır.

SCREENPLAY'in avantajları:

  • Rollerin net ayrımı: "Kim" (Actor) "Ne" (Action) yaptığını ve "Nasıl" (Ability, Interaction) olduğunu ayırır.
  • Yüksek okunabilirlik: Testler, doğal dile yakın bir dilde yazılır, bu da anlaşılmasını kolaylaştırır.
  • Yeniden kullanılabilirlik: Öğeler (Abilities, Actions, Questions) farklı testlerde kolayca yeniden kullanılabilir.
  • Ölçeklenebilirlik: Büyük ve karmaşık projeler için uygundur.
  • Bakım kolaylığı: UI veya uygulama mantığındaki değişiklikler genellikle sadece ilgili düşük seviyeli öğelerde düzenleme gerektirir.

Serenity BDD bağlamında (popüler SCREENPLAY uygulaması) örnek yapı:

  • Görevler: Yüksek seviyeli eylemler (örneğin, "Log in").
  • Etkileşimler: UI ile doğrudan etkileşen düşük seviyeli eylemler (örneğin, "TypeInto", "Click").
  • Sorular: Bilgi talepleri.
  • Sayfalar / UI Öğeleri: UI öğeleri için lokasyon belirleyicilerin tanımları.
  • Yetenekler: Aktörlerin yetenekleri.

SCREENPLAY, otomatik testlerin yapısını ve sürdürülebilirliğini artırır, nesne yönelimli hale getirir ve okunabilirliği kolaylaştırır.