هر آنچه که باید در مورد میز تست بار مبتنی بر کانتینر بدانید

استفاده از Testcontainers روند کار با سناریوهای تست را به طور اساسی بهبود بخشیده است. به لطف این ابزار، ایجاد محیط هایی برای تست های یکپارچه سازی ساده تر شده است (به مقاله جداسازی در تست با کافکا مراجعه کنید). اکنون، ما به راحتی می توانیم کانتینرهایی را با نسخه های مختلف پایگاه داده، کارگزاران پیام و سایر خدمات راه اندازی کنیم. برای تست های یکپارچه سازی، Testcontainers ضروری است.

اگرچه تست بار کمتر از تست عملکردی رایج است، اما می تواند بسیار لذت بخش تر باشد. مطالعه نمودارها و تجزیه و تحلیل عملکرد یک سرویس خاص می تواند لذت واقعی را به همراه داشته باشد. چنین کارهایی نادر هستند، اما به ویژه برای من هیجان انگیز هستند.

هدف این مقاله نشان دادن رویکردی برای ایجاد یک راه‌اندازی برای آزمایش بار به همان روشی است که تست‌های یکپارچه‌سازی معمولی نوشته می‌شوند: در قالب تست‌های Spock با استفاده از Testcontainers در محیط پروژه Gradle. ابزارهای تست بار مانند Gatling، WRK و Yandex.Tank استفاده می شوند.

ایجاد یک محیط تست بار

مجموعه ابزار: Gradle + Spock Framework + Testcontainers. نوع پیاده سازی یک ماژول Gradle جداگانه است. ابزارهای آزمایش بار مورد استفاده Gatling، WRK و Yandex.Tank هستند.

دو روش برای کار با شی آزمایشی وجود دارد:

  • تست تصاویر منتشر شده;
  • ساخت تصاویر از کد منبع پروژه و…

Source link