12 ابزار رایگان برای طراحی API و تست آن
ظهور API های RESTful با افزایش ابزارهایی برای ایجاد، آزمایش و مدیریت آنها همراه شده است. فرقی نمی کند که شما یک شخص مبتدی در طراحی API باشید که در حال طراحی اولین API خود هستید یا این که یک فرد متخصص در این حوزه هستید که در کوتاه ترین زمان ممکن می توانید اقدام به طراحی API کنید. در هر صورت این ابزارها می توانند طیف گسترده ای از خدمات را به شما ارائه دهند که بتوانید API خود را از یک مفهوم ساده به یک محصول نهایی تبدیل کنید. شاید برای شما جالب باشد که بدانید بسیاری از این ابزارها نیز کاملا رایگان هستند و استفاده از آنها هیچ هزینه ای را برای شما نخواهد داشت.
در ادامه برخی از سرویس های رایگان برای کار کردن و طراحی API به شما معرفی شده اند که برخی از آنها برنامه های بسیار ساده ای بوده و کار کردن با آنها برای شما مشکل خاصی را ندارد و برخی دیگر نیز دارای پیچیدگی های مخصوص به خود هستند. علاوه بر این برخی از این سرویس ها به شما اجازه می دهند تا به صورت آزمایشی کار خود را آغاز کنید و در صورت نیاز به خدمات حرفه ای تر نسخه های پیشرفته تر این ابزارهای طراحی API را خریداری کنید.
آشنایی با ابزار Amazon API Gateway
AWS Free Tier امروزه به توسعه دهندگان دسترسی بدون هزینه به اکثر سرویس های AWS را ارائه می دهد که این سرویس ها شامل سرویس Amazon API Gateway نیز می باشد. API رایگان آمازون شما حداقل یک میلیون فراخوانی به API را برای شما فراهم می کند و باید بدانید که تنها یک سال طول عمر دارد ولی با این حال برای شروع طراحی API و توسعه و تست آن می تواند گزینه بسیار مناسبی باشد. نسخه کامل و با هزینه Amazon API Gateway به شما اجازه می دهد تا بتوانید API های فرانت اند را نیز برای خود طراحی کنید که البته این کار تنها برای اپلیکیشن هایی که روی Amazon EC2، AWS Lambda یا هر اپلیکیشن تحت وب دیگری که با استفاده از ابزارهای متا مانند traffic management، API version control و ابزارهای نظارتی روی تمام پکیج ها ساخته شده اند امکان پذیر خواهد بود.
APImetrics از ابزارهای طراحی و توسعه API و توسعه و تست آن
APImetrics در واقع یک سرویس نظارت و هشدار مخصوص API است که شامل یک طراح بصری API بوده و از هر دو نوع API REST و SOAP پشتیبانی می کند و البته حرکت بین این دو نوع API را نیز برای شما ساده تر می کند. این ابزار که می تواند به میزان زیادی در طراحی API کمک کننده باشد یک سیستم گردش کار را برای شما فراهم می کند که به شما کمک می کند تا چندین فراخوانی از API خود را به ترتیب ایجاد کنید و به این ترتیب می توانید هر چه که باید درست پیش برود ولی دچار مشکل می شود را مدیریت کنید. دقت داشته باشید که هیچ نسخه رایگانی از این ابزار وجود ندارد ولی شرکت سازنده آن یک طرح آزمایشی رایگان 14 روزه از سطوح مختلف خدمات خود را به شما ارائه می دهد. با استفاده از این طرح شما می توانید تا حداقل 20 هزار فراخوانی در ماه داشته باشید. شما تنها با پرداخت 18 دلار در ماه می توانید از طیف گسترده ای از خدمات این ابزار نیز استفاده کنید.
آشنایی با ابزار Assertible
این ابزار به شما اجازه می دهد تا تست های ساده را روی API هایی که طراحی کرده اید تنظیم کرده و API هایی که تولید می کنید را نظارت کنید. شما می توانید API ها را از طریق یک فرمت شخص ثالث رایج که شامل Swagger، Postman و curl اضافه کنید. اگر قصد دارید خارج از دامنه پیش فرض خود آزمایش ها را انجام دهید می توانید این آزمایش ها را بر اساس معیارهای مختلف گروه بندی کرده و آنها را با پارامترهای محیطی مختلف اجرا کنید.
نکته دیگری که درباره این ابزار وجود دارد این است که شما می توانید تست های Assertible را بر اساس برنامه زمانی مشخص یا از طریق محرک های مختلف اجرا کنید و وضعیت آزمایش ها و تست های خود را روی گیت هاب منتشر کنید.
نکاتی درباره طراحی API و تست آن با استفاده از Assertible
دقت داشته باشید که طرح اولیه استفاده از این ابزار کاملا رایگان است ولی شما تنها به دو سرویس وب، 10 تست در هر سرویس و 1000 نتیجه مختلف دسترسی خواهید داشت. طرح های پولی که از 25 دلار در ماه آغاز می شوند می توانند سقف مصرف شما از این سرویس را افزایش دهند و اجازه می دهند تا بتوانید تست های بیشتری را پس از طراحی API خود اجرا کنید.
ابزار BlazeMeter
BlazeMeter یک ابزار تست قدرت load یک API است که گزارش های لحظه ای را به شما ارائه می دهد. موارد دیگر استفاده از این ابزار شامل geo-distributed load testing است که به این معناست که شما می توانید ترافیک تولید شده از سرورهایی در چند قاره مختلف را پشتیبانی کنید که این کار با استفاده از Apache JMeter انجام می شود. سرویس های ساختگی، داده های آزمایشی و … را می توان با استفاده از این ابزار جمع آوری و تولید کرد که همین عامل نیز باعث می شود تا تست های شما واقعی تر بوده و کاربردهای بیشتری داشته باشند.
نسخه رایگان ابزار BlazeMeter به شما اجازه می دهد تا 10 تست در ماه (که هر کدام حداکثر 20 دقیقه طول می کشند)، با حداکثر 50 کاربر همزمان و همینطور یک هفته نگهداری از داده ها را اجرا کنید. نسخه های پولی این ابزار از 99 دلار در ماه به ازای 100 کاربر همزمان، 200 تست در سال و سه ماه نگهداری داده ها شروع می شود.
آشنایی با ابزار Httpbin.org برای طراحی API و توسعه آن
Httpbin.org ابزاری است که آرایه ای از پاسخ های HTTP API endpoint را که برای تست و دیباگ کردن API ها می توانند مفید باشند به شما برمی گرداند. این ابزار به جای پیکربندی پاسخ ها از طریق یک رابط وب آنها را با استفاده از پارامترهای URL پیکربندی می کند. همین عامل نیز باعث می شود تا استفاده خودکار از این سرویس بسیار ساده تر شود.
به عنوان مثال /links/:n endpoint به شما اجازه می دهد تا به یک صفحه وب درخواست بدهید که این کار از طریق n لینک HTML صورت می گیرد. دقت داشته باشید که این روشی است که برای تست کردن یک اسکرپر وب مورد استفاده قرار می گیرد. نرم افزاری که این سرویس را مدیریت می کند نرم افزار Httpbin است که به عنوان یک پکیج پایتون نیز امروزه در دسترس شما قرار دارد و شما می توانید تحت لایسنس MIT-like از آن استفاده کنید و شما می توانید آن را به صورت محلی نیز در زمان طراحی API میزبانی کنید.
IBM API Connect و ویژگی های آن برای طراحی API و تست آن
دقیقا مانند AWS، IBM Cloud نیز یک گزینه رایگان را به توسعه دهندگان ارائه می دهد که به اندازه کافی قوی است تا مزه واقعی آنچه که نسخه پولی این ابزار ارائه می دهد را بچشاند ولی باید دقت داشته باشید که به اندازه کافی برای ساخت API های واقعی کامل نیست. دقت داشته باشید که این سرویس همچنین یک ابزار مدیریت و طراحی API را نیز به شما ارائه می دهد که این ابزار نیز به صورت رایگان در اختیار شما قرار می گیرد و نام آن نیز IBM API Connect است.
نکاتی مهم درباره IBM API Connect
IBM API Connect در واقع تنها ابزاری است که برای طراحی API و ساخت آن به صورت زنده مورد استفاده قرار می گیرد. شما با استفاده از این ابزار می توانید طرح های ترکیبی API را ایجاد کنید و خدمات ابری و مبتنی بر کلود خود را نیز به طور کامل یکپارچه سازی کنید. نسخه رایگانی که از این ابزار به شما ارائه می شود شامل 50 هزار فراخوانی در ماه که برای شروع طراحی API بیش از حد کافی است. نکته مهمی که باید به آن دقت داشته باشید این است که IBM Cloud به طور خودکار هر سرویس سطح رایگان را برای شما حذف می کند و فرقی ندارد که شما از آن استفاده کرده باشید یا خیر.
JSONPlaceholder و استفاده از آن در طراحی API
آیا شما هم قصد دارید یک سیستم API reading را با استفاده از داده های تقلبی در زمان طراحی API تست کنید؟ JSONPlaceholder می تواند تعدادی endpoint را به شما ارائه دهد که داده های تقلبی را در ترتیب های مختلف به API شما می دهد و همین عامل نیز باعث می شود تا شما در زمان طراحی API بتوانید از امکانات آن نهایت بهره را ببرید. همه نتایج مربوط به این ابزار در قالب جیسون بازگردانده می شوند و همه متدهای HTTP از جمله( Get، PUT، POST و …) نیز در آن پشتیبانی می شوند.
Loader برای طراحی API و توسعه آن
چگونه می توان مطمئن شد که API عمومی که ایجاد کرده ایم در همان لحظه ای که شروع به کار می کند از بین نمی رود؟ تنها روشی که برای این کار وجود دارد این است که وضعیت آن را در زمان تحمل بار شدید تست کنیم. برای این کار ما باید یک endpoint هاست هدف را ثبت کنیم که این کار با استفاده از رابط وب Loader انجام می شود. در ادامه شما می توانید نتایجی که دریافت می کنید را تست کنید که این کار نیز به صورت Real-time در یک صفحه وب قابل انجام خواهد بود. نسخه رایگان این سرویس به شما اجازه می دهد تا هر بار یک هاست هدف را با حداکثر 10 هزار کلاینت شبیه سازی کنید و از دو URL نیز در هر تست استفاده کنید. نسخه های پولی که برای این ابزار وجود دارند تقریبا از 100 دلار در ماه آغاز می شوند و اکثر محدودیت هایی که در نسخه رایگان برای طراحی API وجود دارند را از بین می برند.
آشنایی با ابزار Mockable
Mockable یکی دیگر از ابزارهای بسیار سریع و قدرتمند است که امکان کار کردن با endpointهای REST و SOAP را برای شما فراهم می کند. سطح پایه ای این ابزار برای همیشه به صورت رایگان در اختیار شما قرار می گیرد و این نسخه شامل پشتیبانی از HTTPS برای mock ها نیز هست. البته باید دقت داشته باشید که هر مسیری که از آن استفاده نکنید در طی سه ماه حذف خواهد شد و همچنین لاگ هایی که دارید نیز تنها برای 24 ساعت یا 5 مگابایت حفظ می شوند و البته شما تنها مجاز خواهید بود که حداکثر 10 mock را ایجاد کنید. نکته ای که درباره این ابزار برای طراحی API وجود دارد این است که شما برای شروع کار با آن حتی به ثبت نام کردن نیز نیازی نخواهید داشت. حساب های موقت به طور خودکار زمانی که شما وارد سیستم می شوید برای شما ایجاد خواهند شد.
Mockbin برای طراحی API
یکی دیگر از ابزارهایی که امروزه برای طراحی API و توسعه و تست آن مورد استفاده قرار می گیرد ابزار Mockbin است. این ابزار که توسط ارائه دهنده API gateway به شما ارائه می شود اجازه می دهد تا بتوانید endpointهای ساختی را برای تست شما در زمان طراحی API ایجاد کند. نکته ای که درباره این endpoint ها وجود دارد این است که آنها می توانند از هر متد HTTP استفاده کنند و نتایج را در قالب های XML، YAML، جیسون یا HTML برگردانند. نکته مهم دیگری که درباره این ابزار وجود دارد این است که می تواند header های CORS را نیز به پاسخ ها متصل کند. داده های موجود در فرمت HAR نیز می توانند برای تولید خودکار پاسخ های HTTP استفاده شوند به طوری که mock ها به همراه نتایج واقعی بازگردانده شوند. ویژگی مهم دیگری که این ابزار برای طراحی API به عنوان یک پروژه متن باز نیز در دسترس شما قرار دارد.
آشنایی با ابزار Run Scope برای طراحی API
Runscope یک جعبه ابزار مبتنی بر وب است که برای تست کردن این که آیا APIهای ما به درستی کار می کنند یا خیر مورد استفاده قرار می گیرد. این ابزار می تواند داده های معتبر را بازگرداند و از آن می توان برای دیباگ کردن پس از طراحی API نیز استفاده کرد. یکی از مهمترین ویژگی های این ابزار در طراحی API این است که شما با استفاده از آن می توانید طرح های آزمایشی و تستی را با استفاده از یک استاندارد مشخص یعنی استاندارد Swagger 2.0 به همراه تعداد زیادی از قالب های دیگر مورد استفاده قرار دهید. دقت داشته باشید که هیچ نسخه رایگانی از این ابزار وجود ندارد اما شما می توانید از دوره آزمایشی آن که برای مدت زمان 14 روز به شما ارائه می شود استفاده کنید که با این کار می توانید از تمام ویژگی های مربوط به نسخه های سازمانی و نسخه های پولی آن استفاده کنید.
ابزار Swagger Inspector و ویژگی های آن
Swagger Inspector یک ابزار بسیار کاربردی در زمان طراحی API است که توسط Smartbear طراحی و ساخته شده است و مشابه Httpbin عمل می کند. این ابزار به شما اجازه می دهد تا API ها را مستقیما در مرورگرهای خود جستجو کنید و نتایج آن را برای بررسی های بعدی ذخیره سازی کنید. علاوه بر این باید دقت داشته باشید که با استفاده از ابزار Swagger Inspector شما می توانید به طیف گسترده ای از Restful APIها دسترسی داشته باشید و از آنها استفاده کنید. نکته مهم دیگری که درباره ویژگی های کلیدی و مهم این ابزار وجود دارد این است که شما می توانید مستندات مربوط به API خود را بر اساس تست هایی که انجام داده اید به طور خودکار تولید کنید. در طرح رایگانی که توسط این نرم افزار به شما ارائه می شود می توانید از سه تعریف مختلف API در زمان طراحی API خود استفاده کنید که می تواند برای شروع طراحی API کافی باشد. دقت داشته باشید که نسخه های پولی و غیر رایگان این ابزار از 75 دلار در ماه آغاز می شوند و با خرید این نسخه ها شما می توانید تقریبا بیشتر محدودیت هایی که در زمان کار کردن با این ابزار وجود دارد را کنار بگذارید.