مهدی عادلی فر
بنیانگذار توسینسو و برنامه نویس

آموزش تست وب سرویس و API با SOAP UI به زبان ساده

آموزش SOAP UI  ، امروزه استفاده از وب سرویس ها و API های تحت وب (Web API) ها رواج بسیار زیادی در طراحی نرم افزار ها دارد. اکثر برنامه های موبایل امروزی مانند برنامه های گوگل و یا مسنجر ها از یک سرور ارتباط میگیرند و با همدیگر اطلاعات رد و بدل می نمایند. این ارتباط با استفاده از وب سرویس ها و web API ها امکان پذیر می شود. همچنین ارتباطات بین وب سایت ها مانند درگاه های پرداخت اینترنتی و سایر سرویس های اینترنتی نیز از وب سرویس ها و web API ها استفاده می کنند.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

به علت استفاده زیاد و مجبوبیت وب سرویس ها و WebApi ها بسیاری از شرکت ها در طراحی وب سایت و اپلیکیشن وب خود بخشی از تیم خود را برای طراحی و پیاده سازی وب سرویس ها می گمارند. تست کردن وب سرویس ها به شکلی است که یک شرایط مشابه به وجود آوریم تا ببینیم درست کار می کنند یا خیر. یعنی یک اپلیکیشن بسازیم و از وب سرویس ها و Web API های پیاده سازی شده استفاده کنیم. اما ساختن یک اپلیکیشن زمانبر و هزینه بر می باشد و سرعت تیم را کم می کند.

راه حلی که برای این مشکل وجود دارد استفاده از ابزار های تست وب سرویس ها و web API ها می باشد. برای تست این وب سرویس ها و web API از ابزار های مختلفی استفاده می شود که یکی از آنها را قصد داریم در این مطلب معرفی کنیم. یکی از ابزارهای رایگان و اوپن سورس برای تست وب سرویس ها و web api ها ابزاری به نام soap ui می باشد. که آن را می توانید از این لینک دانلود کنید. در شکل زیر یک تصویر از محیط نرم افزار را مشاهده می کنید. استفاده از این نرم افزار بسیار آسان است.

وب سایت توسینسو

استفاده از قسمت REST نرم افزار soap ui

عمومی ترین قالب انتقال داده ها در وب، وب سرویس ها و Web API ها می باشند. برای این که یک Web API را تست کنیم باید از داخل نوار ابزار بر روی دکمه REST کلیک کنید. با این کار یک تصویر به شکل زیر نشان داده می شود که از شما آدرس Url مربوط به api مورد نظر را می گیرد و پس از این که آدرس را وارد کردید صفحه به شکل زیر نشان داده می شود تا بتوانید انواع عملیات را بر روی url مورد نظر انجام دهید.

متد های مختلفی برای ارتبا با web api وجود دارد که مهم ترین آن ها post, get می باشند. پس از این که عملیات را انتخاب کردید و url را نیز تنظیم کردید باید بر روی دکمه play سبز رنگ کلیک کنید تا به api مورد نظر درخواست ارسال شود. در فراخوانی api هایی از متد post باید پارامتر هایی را برای آنها تنظیم کنیم. که برای این کار باید بر روی قسمت Parameters کلیک کنیم و نام و مقادیر پارامتر ها را وارد نماییم. تصویر این صفحه در شکل زیر آمده است.

وب سایت توسینسو

استفاده از قسمت SOAP نرم افزار soap ui

تکنولوژی که تولید کننده وب سرویس ها می باشد soap نام دارد. Soap مانند web api نیست که شکل های مشخصی داشته باشد و می تواند داده های مختلفی به عنوان ورودی بگیرد و می تواند داده های مختلفی به عنوان خروجی بازگرداند. وب سرویس ها در زبان های برنامه نویسی شئ گرا همان متد هایی هستند که می توان آن ها را از را دور فراخوانی نمود. برای تست وب سرویس ها با استفاده از نرم افزار soap ui باید در نوار ابزار بر روی دکمه SOAP کلیک کنید که صفحه زیر باز خواهد شد

وب سایت توسینسو

در این پنجره یک قسمت برای نام پروژه و یک قسمت برای آدرس وب سرویس قرار داده شده است. نام پروژه را وارد کنید و همچنین آدرس وب سرویس مورد نظر را وارد کرده و در انتهای آن ?wsdl قرار دهید. اگر آدرس را درست زده باشید بعد از این که بر روی ok کلیک کردید خواهید دید که همه ی متدهای تعریف شده لیست خواهند شد. مانند شکل زیر.

وب سایت توسینسو

هر کدام از بخش هایی که آورده شده اند یک متد محسوب می شوند که می توان آن ها را فراخوانی کرده و مقدار آن را مشاهده کنید. برای فراخوانی هر کدام از متد ها بر روی آن کلیک کرده و بر روی Request کلیک می کنیم. خواهیم دید که صفحه ای باز خواهد شد که با قالب xml می باشد و جاهایی برای وارد کردن پارامتر های مورد نیاز و پارامتر های اختیاری دارد. مانند شکل زیر

وب سایت توسینسو

بعد از این که پارامتر های لازم را وارد کردیم باید اجرا کنیم تا وب سرویس فراخوانی شود و نتیجه بازگردانده شود. نتیجه بیشتر به صورت json نمایش داده می شود مانند شکل زیر

وب سایت توسینسو

می بینیم که با استفاده از این ابزار می توان به راحتی هر نوع وب سرویس و یا web api را تست کرد. امیدوارم که این آموزش برای شما مفید باشد.


مهدی عادلی فر
مهدی عادلی فر

بنیانگذار توسینسو و برنامه نویس

مهدی عادلی، بنیان گذار TOSINSO. کارشناس ارشد نرم افزار کامپیوتر از دانشگاه صنعتی امیرکبیر و #C و جاوا و اندروید کار می کنم. در زمینه های موبایل و وب و ویندوز فعالیت دارم و به طراحی نرم افزار و اصول مهندسی نرم افزار علاقه مندم.

نظرات