Test paketi ve test senaryosu nasıl oluşturulur? SoapUI

⚡ Akıllı Özet

Bir oluşturma SoapUI Proje, Test Paketi ve Test Senaryosu, yapılandırılmış SOAP web servis testine olanak tanır. Bu kılavuz, güvenilir fonksiyonel ve regresyon testleri için SOAP protokolünün temellerini, WSDL içe aktarımını, istek yürütmeyi, doğrulama kurulumunu ve yanıt günlüğü analizini açıklamaktadır.

  • ???? SABUN Foundation: SOAP, farklı sistemler arasında mesaj alışverişi sağlayan, HTTP üzerinden iletilen, XML tabanlı ve platformdan bağımsız bir protokoldür.
  • 📁 Proje Oluşturma: WSDL dosyasını yeni bir yere aktarın. SoapUI Her işlem için otomatik olarak örnek istekler oluşturan SOAP projesi.
  • 🗂️ Test Paketi Kurulumu: Proje kök dizinine sağ tıklayarak, ilgili test senaryolarını düzenli bir şekilde yürütmek üzere gruplandıran bir test paketi ekleyebilirsiniz.
  • 🧪 Test Senaryosu Adımları: SOAP İstek adımlarını ekleyin, hedef işlemi seçin ve Şema Uyumluluğu ve SOAP Hata kontrolleri gibi standart doğrulamaları yapılandırın.
  • 📊 Yanıt Denetimi: RAW sekmesini ve Günlük bölmelerini kullanın (SoapUI HTTP durum kodlarını doğrulamak ve isteklerdeki sorunları gidermek için (HTTP Günlüğü, HTTP Günlüğü, Hata Günlüğü, Bellek Günlüğü) kullanılır.

Test Paketi ve Test Senaryosu Nasıl Oluşturulur? SoapUI

SOAP Protokolünü Anlamak

oluşturmadan önce SoapUI Test senaryosu, SOAP protokolünün temellerini tekrar gözden geçirmeye yardımcı olur. SOAP isteklerinin ve yanıtlarının sistemler arasında nasıl hareket ettiğini net bir şekilde anlamak, kullanımı kolaylaştırır. SoapUI onları etkili bir şekilde test etmek için.

SABUN anlamına gelir Basit nesne erişim protokolüAşağıda SOAP protokolünün temel özellikleri yer almaktadır:

  • Bu, iki farklı sistem arasında iletişim kurmak için kullanılan XML tabanlı bir protokoldür.
  • Platform ve dilden bağımsızdır. Geliştirilen bir sistemdir. Java .NET ile geliştirilen bir cihazla iletişim kurabilir.
  • SOAP istekleri ve yanıtları HTTP üzerinden iletilir.

SOAP Mesaj Biçimini Öğrenin

SOAP mesajı, aşağıdaki öğeleri içeren sıradan bir XML belgesidir. Bir mesaj, istek veya yanıt olabilir.

SABUN Mesaj FORMATI
SOAP Mesaj Formatı

SOAP'ın temel prensipleri belirlendikten sonraki adım, aşağıdaki yapıyı oluşturmaktır: SoapUI Belirli bir web servisini doğrulamak için gereken proje yapısı, test paketleri ve test senaryoları. Aşağıdaki kılavuz, bir web servisini temel almaktadır. SoapUI Yeni bir SOAP projesi oluşturmak için örnek proje.

SOAP Projesi Oluşturma SoapUI

SOAP Projesi, içe aktarılan WSDL tanımını ve her işlem için oluşturulan tüm örnek istekleri içerir.

1 Adım: Proje türüne bağlı olarak SOAP veya REST protokolünü içe aktarın. Bu örnekte, yeni bir SOAP Projesi oluşturun.

Yeni Bir SABUN Projesi Oluşturma

2 Adım: Aşağıdaki SOAP isteğini kullanın. URL: http://www.dneonline.com/calculator.asmx?wsdl

  1. Proje Adını giriniz.
  2. WSDL isteğinin yolunu girin (bu örnekte, http://www.dneonline.com/calculator.asmx?wsdl).
  3. Tıkla OK.

SOAP Proje Adını ve WSDL Yolunu Girin

Not:

  • Tüm işlemler için örnek talep oluşturun: WSDL'deki her işlem için örnek bir istek oluşturur. WSDL adresi girildiğinde varsayılan olarak etkinleştirilir; gerekmiyorsa işaretlenmeyebilir.
  • İçe aktarılan WSDL için bir test paketi oluşturun: ekler SoapUI İçe aktarılan WSDL için proje içerisinde yer alan test paketi.
  • Göreceli Yollar: Tüm dosyaları proje dosyasına göre kaydederek kolay taşınabilirlik sağlar.

3 Adım: Yukarıdaki WSDL ile SOAP projesi oluşturulduktan sonra, projeye iki işlem aktarılacaktır.

İçe Aktarılan SOAP Projesi Operaleri

4 Adım: İlk isteği genişletin, sağ tıklayın Ekle, Ardından Yeni Talep.

SOAP Projesine Yeni İstek Ekle

Sonra tıklayın OKSOAP isteği XML formatında görüntülenir.

SOAP İsteği XML Formatı

  1. İçin değerleri girin intA hem de intB.
  2. Tıkla Formu Gönder düğmesine basın.
  3. Yanıt XML'i sağ taraftaki bölmede görünür.

SOAP İsteği Gönderin ve Yanıtı Görüntüleyin

Doğrudan istek göndermek yerine neden test senaryoları oluşturulmalı?

Tek bir işlem için doğrudan istek göndermek mümkündür, ancak birden fazla giriş kombinasyonunun test edilmesi gerektiğinde bu yaklaşım hızla sınırlarına ulaşır. Örneğin, 5+5'ten 4+4'e geçiş, her seferinde isteğin düzenlenmesini gerektirir. Test senaryoları içeren bir Test Paketi, orijinal işlemi değiştirmeden her senaryonun yeniden kullanılabilir olmasını mümkün kılar.

Test Paketi Nasıl Oluşturulur? SoapUI

Bir test paketi, birbiriyle ilişkili test senaryolarını gruplandıran bir yapıdır. Bir test paketi oluşturmak için aşağıdaki adımları izleyin.

Adım 1) Projenin kök dizinine sağ tıklayın.

Proje içerisinde, proje kök dizinine sağ tıklayarak bir Test Paketi oluşturun.

Test paketini oluşturun SoapUI - Projeye Sağ Tıklayın

Adım 2) Test paketinin ayrıntılarını girin.

Test paketinin adını girin ve tıklayın. OK.

Test Paketi Adını Girin

3. Adım) Oluşturulan Test Paketini doğrulayın.

Yeni Test Paketi, aşağıda gösterildiği gibi gezinti bölmesinde görünür.

Oluşturulan Test Paketini Doğrula

Adım 4) Test paketini açın.

Test Paketi penceresi sağ bölmede açılır. Henüz hiçbir Test Senaryosu mevcut olmadığı için tüm işlem seçenekleri devre dışı kalır.

Boş Test Paketi Penceresini Açın

Test senaryosu nasıl oluşturulur? SoapUI

Test senaryoları, bir test paketinin içinde yer alır ve bir web hizmetini çalıştıran bireysel test adımlarını gruplandırır.

1 Adım: Bir test paketinin içinde, test paketine sağ tıklayıp "Test Paketi" seçeneğini belirleyerek birden fazla test oluşturabilirsiniz. Yeni Test Durumu.

Yeni Test Senaryosu Oluştur SoapUI

2 Adım: adını belirtin Test Durumu ve tıklayın OK.

Test Durumu Adını Girin

3 Adım: Oluşturulan test senaryosu başlangıçta aşağıdaki gibi sıfır adıma sahiptir.

Sıfır Adımlı Test Senaryosu

Not: Test senaryosu, her test türü için sıfır test adımıyla eklenir. Adımlar eklendikçe, parantez içindeki sayılar otomatik olarak güncellenir.

Fonksiyonel test adımları şunlara aittir: Test AdımlarıPerformans adımları şuraya giriyor: Yük testive güvenlik kontrolleri şu koşullar altında gerçekleşiyor: Güvenlik Testleri.

4 Adım: Sağ tıklayarak farklı test adımı türleri ekleyin. Test Adımları ve uygun seçeneği belirleyin. REST web servisi için, SOAP isteği yerine REST Test İsteği'ni seçin.

Test Adımı Türlerini Ekle

Test Adımı Ekleme SoapUI

Test senaryosunun içine, içe aktarılan SOAP isteğini doğrulamak için bir test adımı ekleyin.

1 Adım: Yeni bir adım türü ekle SOAP İsteği Aşağıda gösterildiği gibi.

SOAP İsteği Test Adımı Ekle

2 Adım: Adım adını girin ve tıklayın. OK.

Test Adımının Adını Girin

3 Adım: Çağrılacak işlemi seçmek için bir iletişim kutusu açılır. Seçilebilecek tüm işlemler listelenir.

  • Burada birçok işlem yer almaktadır. İşlemler, SOAP sürümü dışında tamamen aynıdır: CalculatorSoap, SOAP sürüm 1.1'i kullanırken, CalculatorSoap12 SOAP sürüm 1.2'yi kullanmaktadır.
  • Bu senaryoda sürümün önemi yok, bu nedenle her ikisi de seçilebilir.

    SOAP'ı seçin OperaÇağırmak için

  • İşlemi seçtikten sonra tıklayın. OK.

    Onaylamak OperaSeçim

4 Adım: Bir test senaryosu eklerken, standart doğrulama işlemleri uygulanabilir. Doğrulama işlemleri, kontrol noktaları veya geçerlilik noktaları olarak da adlandırılır ve bir sonraki eğitimde ele alınacaktır.

Bir test senaryosu oluştururken aşağıdaki kontrol noktaları eklenebilir. Aşağıdaki örnek, herhangi bir doğrulama noktası etkinleştirilmemiş bir test senaryosu oluşturmaktadır.

Standart SoapUI İddialar

  1. Test çalıştırıldıktan sonra yanıt mesajının SOAP olup olmadığını doğrular.
  2. Yanıt şemasının geçerli olup olmadığını doğrular.
  3. SOAP yanıtının bir FAULT öğesi içerip içermediğini doğrular.

5 Adım: Test senaryosu oluşturulduğunda, istek XML'i aşağıda gösterildiği gibi görünür. XML'in yapısı ekran görüntüsünde açıklanmıştır.

İstek XML Yapısı

6 Adım: Test adımı sayısı, bir adım daha eklendiği için bire yükseltildi. Yük ve güvenlik testi adımları eklendiğinde, ilgili sayaçlar otomatik olarak artırılacaktır.

Test Adımı Sayaç Artışı

Manuel Olarak Talep Gönderme ve Yanıtı Okuma SoapUI

1 Adım: Aşağıdaki örnekte iki tam sayı toplanmaktadır.

  • intA — 5
  • intB — 5

Sonraki:

  1. İstek XML dosyasındaki soru işaretlerinin yerine bu girdileri girin.
  2. İlgili XML etiketlerini güncelledikten sonra tıklayın. Teklif İste Yanıtı kontrol etmek için.

intA ve intB ile Manuel Olarak İstek Gönderme

2 Adım: İstek gönderildikten sonra, web sunucusu web servisini işler ve aşağıda gösterildiği gibi yanıt döndürülür.

Verilen yanıt, 5 artı 5'in 10'a eşit olduğunu doğruluyor.

Toplama Sonucunu Gösteren SOAP Yanıtı

SOAP Yanıtı ve Günlük Panellerini Anlamak

Daha önce de belirtildiği gibi, SOAP mesajları HTTP üzerinden iletilir. Ham mesajları incelemek, SOAP isteğinin ve yanıtının HTTP üzerinden nasıl taşındığını netleştirmeye yardımcı olur.

1 Adım: Tıkla RAW sekme SoapUI istek penceresi.

  1. İstek web sunucusuna gönderildiği için HTTP POST yöntemi kullanılır.
  2. SOAP isteği, HTTP mesajının gövdesinde yer alır.

SOAP İsteği Ham Sekme

2 Adım: Şimdi tıklayın RAW sekme SoapUI Yanıt penceresi, yanıtın HTTP üzerinden nasıl iletildiğini anlamanıza yardımcı olur.

  1. İstek işlendikten sonra, işlemin başarılı olduğunu gösteren HTTP yanıt kodu (200) görüntülenir.
  2. SOAP yanıtı, HTTP mesajının gövdesi içinde istemciye geri gönderilir.

HTTP 200 ile SOAP Yanıtı RAW Sekmesi

Aşağıdaki tabloda hızlı hata ayıklama için yaygın HTTP yanıt kodları özetlenmiştir.

HTTP Code Açıklama
1xx Bilgilendirici: Talep alındı, işleme devam ediyor.
2xx Başarı: Eylem başarıyla alındı, anlaşıldı ve kabul edildi.
3xx yönlendirme: Talebin tamamlanması için ek işlemler gerekmektedir.
4xx İstemci Hatası: İstek hatalı sözdizimi içeriyor veya yerine getirilemiyor.
5xx Sunucu Hatası: Sunucu, görünüşte geçerli bir isteği yerine getirmekte başarısız oldu.

3 Adım: Test Durumu penceresi ayrıca istek ve yanıt için ek meta verileri de görüntüler.

Test Durumu Penceresi Meta Verileri

  1. Gönderilen istekte başlık bulunmadığını gösterir.
  2. Web sunucusuna gönderilen istekte hiçbir ek dosya bulunmadığını belirtir.
  3. Yanıt içerisinde 10 başlık öğesi olduğunu ve bunların tıklanarak görüntülenebileceğini belirtir.
  4. Yanıt mesajında ​​ek dosya bulunmadığını gösterir.

Günlükler Bölmesi

Günlükler Bölmesi, istemci ve sunucu arasında değiş tokuş edilen tüm bilgileri gösterir. En sık kullanılan günlük sekmeleri aşağıda açıklanmıştır.

SoapUI Günlükler Bölmesi Sekmeleri

SoapUI Log: Web sunucusundan gelen yanıt bilgilerini görüntüler. Aynı veriler, soapui.log dosyasında da saklanır. SoapUI bin dizini.

SoapUI Günlük Sekmesi

HTTP Günlüğü: Tüm HTTP paket transferlerini görüntüler. RAW görünümünde görünen tüm bilgiler HTTP Günlüğüne de kaydedilir.

HTTP Günlüğü Sekmesi

Hata Günlüğü: Proje oturumu boyunca karşılaşılan tüm hataları görüntüler. Aynı bilgiler soapui-errors.log dosyasında da saklanır. SoapUI bin dizini.

Bellek Günlüğü: Bellek tüketimini izler ve grafik olarak görüntüler. Bu, bellek yoğun işlemler çalıştırırken faydalıdır.

Bellek Günlüğü Sekmesi

Bir test paketi, test senaryosu ve test adımı oluşturulduktan ve başarılı bir yanıt alındıktan sonraki adım, yanıtın doğrulanmasıdır. Doğrulama türleri bir sonraki eğitimde ele alınacaktır.

SSS

Test paketi, birbiriyle ilişkili test senaryolarını bir araya getiren bir yapıdır. SoapUI Proje. Bir Test Senaryosu, SOAP İsteği, REST İsteği veya onaylamalar gibi bir veya daha fazla Test Adımı içeren tek bir senaryodur.

Evet. SoapUI Hem SOAP hem de REST testlerini destekler. Yeni bir proje oluştururken, WSDL tabanlı hizmetler için Yeni SOAP Projesi veya REST API'leri için Yeni REST Projesi'ni seçin. Test Adımları arasında REST Test İsteği, JDBC İsteği ve diğerleri bulunur. Groovy Senaryo.

Test paketini açın ve yeşil oynat düğmesine tıklayın. SoapUI Tüm test senaryolarını göründükleri sırayla çalıştırır. Ayrıca Test Paketi Özellikleri sekmesi altında paralel veya sıralı yürütmeyi de yapılandırabilirsiniz.

Evet. Özellikler adımını, Özellik Aktarımı adımını veya Veri Kaynağı adımını kullanın (SoapUI (Pro) Aynı test senaryosundan birden fazla girdiyi geçirmeyi sağlar. Bu, birçok girdi kombinasyonunda veri odaklı testler için kullanışlıdır.

Yapay zekâ asistanları, bir WSDL veya OpenAPI spesifikasyonunu okuyabilir ve gerçekçi girdi kombinasyonları, uç durumlar ve doğrulama kalıpları önerebilir. Bu öneriler şu şekilde dışa aktarılabilir: SoapUI XML veya Groovy Bu komut dosyaları, büyük test paketleri oluştururken manuel çabayı azaltır.

Evet. Yapay zeka araçları ayrıştırma yapabilir. SoapUI Günlük ve HTTP günlük kayıtlarını inceleyerek tekrarlanan hataları kümelendirir ve şema uyuşmazlıkları veya kimlik doğrulama hataları gibi olası temel nedenleri vurgular. Bu, regresyon döngüleri ve büyük gece çalıştırmaları sırasında sorun giderme sürecini hızlandırır.

Bu yazıyı şu şekilde özetleyin: