SOAP, tüm dünyada yaygın olarak kullanılan açık kaynak bir API test aracıdır.
SoapUI, kullanımı kolay grafik arayüzü ve kurumsal sınıf özellikleri ile otomatikleştirilmiş işlevsellik, regresyon ve yük testlerini kolayca ve hızlı bir şekilde oluşturmanıza ve yürütmenize olanak tanır. Tek bir test ortamında SoapUI, SOAP ve REST tabanlı Web hizmetlerinden JMS kurumsal mesajlaşma katmanlarına, veritabanlarına, zengin internet uygulamalarına ve çok daha fazlasına kadar eksiksiz test imkanı sağlar.
SOAP, Simple Object Access Protocol (Basit Nesne Erişim Protokolü)’ün kısaltmasıdır. Bilgisayarlar arasında bilgi alışverişi için XML tabanlı bir mesajlaşma protokolüdür. Üzerinde bulunan Universal Description Discovery and Integration (UDDI) ile birlikte hizmet yönelimli mimarinin kullanılmasını mümkün kılar.
Geliştiriciler ve test ediciler için tasarlanmış olan SoapUI, tüm test spektrumunu (işlevsel, güvenlik, yükleme, regresyon ve yük testleri) kapsayan açık kaynaklı bir araçtır. SoapUI, API testi için giriş noktasıdır, böylece REST ve SOAP tabanlı web hizmetlerini kolaylıkla doğrulayabilirsiniz.
SOAP platformdan ve dilden bağımsızdır. CORBA, DCOM ve Java RMI dahil olmak üzere diğer çerçeveler SOAP’a benzer işlevsellik sağlar, ancak SOAP mesajları tamamen XML’de yazılır ve bu nedenle benzersiz bir şekilde platformdan ve dilden bağımsızdır.
SOAP, geliştiricilerin XML kullanarak kimlik doğrulaması, yetkilendirmesi ve iletişim kurması için farklı işletim sistemlerinde (Windows, macOS ve Linux gibi) çalışan süreçleri başlatmasına olanak tanır. HTTP gibi Web protokolleri tüm işletim sistemlerinde kurulduğundan ve çalıştığından, SOAP istemcilerin web hizmetlerini çağırmasına, dil ve platformlardan bağımsız yanıtlar almasına izin verir.
SOAP dağıtık uygulamalarda ve web servislerinin haberleşmesinde kullanılmak üzere tasarlanan, RPC (Remote Procedure Call) modelini kullanan, istemci/sunucu mantığına dayalı bir protokoldür. Daha genel olarak SOAP, web üzerinden fonksiyonları kullanmak için geliştirilmiş bir sistemin XML tabanlı kurallar topluluğudur. SOAP ile ilgili bütün mesajlar XML formatında iletilir ve temel olarak bir SOAP mesajı 3 şekilde oluşabilir:
Metot Çağırımı
Cevap Mesajı
Hata Mesajı
Bir SOAP mesajının yapısı şu şekildedir:
Envelope
Bütün SOAP mesajlarının içinde olduğu elemandır. SOAP mesajına ilişkin XML belgesinin root elemanı olmak zorundadır. Envelope elemanı içinde Body veya Header gibi elemanlar bulunur. Envelope elemanının içinde her zaman bir Body elemanı vardır fakat Header elemanı olmak zorunda değildir. SOAP mimarisine göre eğer Envelope elemanı içinde Header elemanı varsa bu eleman Envelope elemanının içindeki ilk eleman olmalıdır. Soap kullanan mimarilerde kesinlikle erişim protokolü olarak TCP kullanılmalıdır.
Header
SOAP mesajlarındaki Header elemanını HTML standartlarında bulunan etiketlerine benzetebiliriz. Header bölümü metot çağrımı ile doğrudan ilişkili değildir. Header bölümü ile meta-data dediğimiz bilgiler gönderilir.
Body
Body elemanı SOAP mesajının en önemli kısmını oluşturur. Body bölümünde web metodunun adı ve metodun parametrik bilgileri XML formatında gönderilir. Cevap mesajında ise metodun geri dönüş değeri Body bölgesine eklenir. Metodun parametrik yapısının bu şekilde XML formatında yazılmasına SOAP Serialization denir. Son olarak hata mesajlarında ise Body bölümünde hatanın adı ve tanımı gibi bilgiler bulunur.
SOAP nedir diye merak eden arkadaşlar için oldukça faydalı bir yazı olmuş.
Paylaşım için çok teşekkürler.
Eline, emeğine sağlık.