در این مقاله قصد دارم راجعبه یک Extension در دات نت صحبت کنم که خیلی وقتها میتواند بسیار مفید و نجات بخش و همینطور در زمان کارتان تاثیر زیادی بگذارد. خیلی وقتها پیش آمده که داریم با یک سرویس بیرونی ارتباط برقرار میکنیم، اما هنگام فراخوانی کردن، با خطا مواجه میشویم و ما متوجه دلیل خطای رخ داده در آن لحظه نمیشویم. برای خود من بارها پیش آمده که Propertyهای اطلاعات ورودی برای وب سرویس را بصورت Pascal Case داده باشم، ولی سرویس بیرونی فق ...
یکی از امکاناتی که Visual Studio 2022 به ما میدهد، یک REST CLIENT توکار است که با آن میتوانیم بدون Swagger، Post Man یا ابزارهای مشابه، Apiهای خود را تست کنیم.
برای استفاده از آن، ابتدا یک پروژهی Api را داخل ویژوال استودیو با تنظیمات پیشفرض آن ایجاد میکنیم که شامل یک Controller به نام WeatherForecast است. سپس یک پوشه را درون آن با نامی دلخواه ایجاد میکنیم و داخل آن، یک فایل جدید را با پسوند http میسازیم. سپس این ف ...
تا اینجا دو روش را برای آزمایش کلی یک سیستم Web API به همراه تمام زیر ساختهای آن، بررسی کردیم:
- استفاده از Postman برای آزمایش یک برنامهی Web API
- استفاده از strest برای آزمایش یک برنامهی Web API
روش سومی هم برای انجام اینکار وجود دارد که به صورت توکار از زمان ارائهی ASP.NET Core 2.1 به همراه TestServer آزمایشی آن میسر شد. این روش در نگارش 3.1، با تغییر روش تعریف فایل program.cs، جهت سازگاری آن با آ ...
در سری کار با Postman ، یک روش بسیار متداول آزمایش Web APIs را بررسی کردیم. اما ... برای کار آن با مدام نیاز است از این برگه به آن برگه مراجعه کرد و ارتباط دادن درخواستهای متوالی در آن مشکل است. به همین منظور تابحال راهحلهای زیادی برای جایگزین کردن postman ارائه شدهاند که یکی از آنها strest است. این ابزار خط فرمان:
- بسیار سبک ورزن است و تنها نیاز به نصب بستهی npm آنرا دارد.
- با فایلهای متنی معمولی کار میکند ...
در سری « OpenAPI Swagger » با نحوهی مستندسازی یک Web API و همچنین آزمایش دستی اجزای آن به کمک Swagger-UI که رابط کاربری ایجاد شدهای بر اساس خروجی Open API است، آشنا شدیم. بنابراین اگر میتوان رابط کاربری خودکاری را بر اساس OpenAPI Spec ایجاد کرد، به این معنا است که تمام اطلاعات لازم جهت انجام اینکار، هم اکنون در آن قرار دارد. در ادامه قصد داریم تعامل دستی با Swagger-UI را جهت آزمایش Web API، به Postman منتقل کرده تا اجرای مجموعهای از آن ...
برای مطلب « اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity » و پروژهی آن، یک چنین رابط کاربری آزمایشی تهیه شدهاست:
اکنون در ادامه قصد داریم این موارد را تبدیل به چندین درخواست به هم مرتبط postman کرده و در نهایت آنها را به صورت یک collection قابل آزمایش مجدد، ذخیره کنیم.
مرحله 1: خاموش کردن بررسی مجوز SSL برنامه
چون مجوز SSL برنامههای ASP.NET C ...
در قسمت دوم ، از متغیرهای سراسری، برای ایجاد یک گردش کاری بین دو درخواست ارسالی، استفاده کردیم. در این قسمت میخواهیم با انواع متغیرهای قابل تعریف در Postman آشنا شویم.
متغیرهای سراسری در Postman
برای تعریف متغیرهای سراسری که در تمام برگههای Postman قابل دسترسی باشند، میتوان از متد pm.globals.set در قسمت Tests هر درخواست که پس از پایان درخواست جار ...
اسکریپت و آزمون نویسی مقدماتی با Postman را در قسمت دوم بررسی کردیم. در این قسمت نکات و امکانات پیشرفتهتری را در این مورد مرور خواهیم کرد.
بررسی اجزای اولین آزمایش با Postman
آزمونهای Postman، عموما یک سری Assertion هستند؛ به این معنا که در آنها، مقداری از Response دریافتی از سرور را با مقداری مشخص و مورد انتظار، مقایسه میکنیم: p ...
تا اینجا ، یک دید کلی را نسبت به postman و توانمندیهای آن پیدا کردهایم. در ادامه قصد داریم، تعدادی نکتهی تکمیلی مهم را که در حین ساخت درخواستها در postman، به آنها نیاز پیدا خواهیم کرد، بررسی کنیم.
ایجاد یک request bin جدید
برای مشاهدهی محتوای ارسالی توسط postman بدون برپایی وب سرویس خاصی، از سایت requestbin استفاده خواهیم کرد. در اینجا با کلیک بر روی دکمهی create a request bin، یک آدرس موقتی را مانند ht ...
تا اینجا مثالهایی را که بررسی کردیم، متکی به خود بودند و اطلاعات هر کدام، از یک درخواست به درخواستی دیگر کاملا متفاوت بود. همچنین اطلاعات ارسالی و یا دریافتی توسط آنها نیز ثابت و از پیش تعیین شده بود.
کار با اطلاعات متغیر دریافتی از سرور
در Postman یک برگهی جدید را باز کنید و سپس آدرس https://httpbin.org/uuid را در حالت Get درخواست نمائید:
این درخواست، یک Guid اتفاقی جدید را باز میگرد ...