برنامه نویسی

کدام مهارت های فنی برای اتوماسیون تست مفید است

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

Git

Git رایج ترین سیستم کنترل نسخه در صنعت است. Git منحنی یادگیری تند دارد، اما ارزش یادگیری خوب آن را دارد. منطقی است که تست های خودکار را در همان مخزن برنامه نگه دارید، و تیم های توسعه اغلب قوانین بسیار دقیقی برای کار بر روی یک مخزن دارند—هر چه Git را بهتر بشناسید، پیروی از آن قوانین برای شما آسان تر خواهد بود.

شاخه ها

شاخه‌ها در Git به شما این امکان را می‌دهند که تغییر کد خود را «در کنار» ایجاد کنید و آن را بدون تأثیر بر شاخه اصلی به اشتراک بگذارید. این به شما امکان می‌دهد تا آزمایش‌های خود را با یکپارچه‌سازی پیوسته (CI) اجرا کنید و قبل از اینکه تغییرات را در شاخه مورد استفاده دیگران ادغام کنید، بررسی کنید که همه چیز درست کار می‌کند. شاخه ها پیچیده نیستند – هر دوره آموزشی Git باید در ابتدا آنها را پوشش دهد.

نوشتن پیام های تعهد خوب

اغلب، تیم های توسعه دستورالعمل های بسیار دقیقی در مورد نحوه نوشتن پیام های commit دارند. من مطمئناً مطمئن می شوم که همه همکارانم از الگوی پیام commit یکسانی استفاده می کنند، به خصوص:

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

این احتمال وجود دارد که تیم شما قوانین ثابتی نیز داشته باشد. بهترین روش این است که تاریخچه Git را بررسی کنید (با git log یا در میزبانی مخزن خود) و از همکاران خود بپرسید که آیا واضح نیست.

ایجاد و مدیریت درخواست های کششی

یک روش خوب و متداول این است که یک درخواست کشش از شعب خود ایجاد کنید – به این ترتیب، تیم می‌تواند کد را قبل از ادغام بررسی و اصلاح کند. درخواست‌های کششی به تشخیص زودهنگام بسیاری از مسائل کمک می‌کنند، و اگر به درستی انجام شوند، می‌توانند خوانایی تاریخچه مخزن را بهبود بخشند – به خصوص اگر بازبین‌های شما به تعهداتی که در حال ادغام هستند توجه کنند. کار با درخواست‌های کشش، بازخورد دنبال کردن، و ادغام با شاخه اصلی همیشه در حال حرکت می‌تواند به برخی عملیات Git کمی پیشرفته‌تر مانند موارد زیر نیاز داشته باشد:

  • rebases
  • له کردن یا بازنویسی تعهدات

این مفاهیم در ابتدا می توانند چالش برانگیز باشند، اما به کارهای روزمره در Git کمک زیادی می کنند.

چارچوب های آزمایشی

ابزارهای زیادی وجود دارد که به شما امکان می دهد خودکارسازی آزمایشی را برای برنامه های وب بنویسید. همه آنها بر اساس مفاهیم مشابه هستند:

  • مرورگری که برنامه شما را اجرا می کند
  • دونده آزمایشی که برنامه را کنترل می کند
  • اسکریپتی که اقداماتی را که باید در برنامه انجام شود و انتظارات را توصیف می کند

انتخاب فریم ورک مناسب می‌تواند مشکل باشد، زیرا هر چه تست‌های بیشتری با آن بنویسید، تغییر فناوری بعداً دشوارتر خواهد بود. خوشبختانه برای مبتدیان، این تصمیم به احتمال زیاد تا زمانی که به پروژه ملحق می شوید، گرفته شده است، بنابراین می توانید فقط روی استفاده صحیح از ابزار تمرکز کنید.

سرو

Cypress یک فریمورک کاملاً محبوب و مبتنی بر جاوا اسکریپت است. End-to-End (E2E) به این معنی است که به شما امکان می دهد هر دو قسمت جلویی و پشتی را آزمایش کنید. از سال 2021، من پروژه‌هایی را که روی آنها کار می‌کنم از نقاله (ابزاری منسوخ که برای Angular و AngularJS متمرکز شده است) به Cypress منتقل کرده‌ام، و از اینکه چقدر تست کردن در طول سال‌ها آسان‌تر شده است، خوشحالم.

نمایشنامه نویس

Playwright یک ابزار جالب E2E از مایکروسافت است. جالب اینجاست که به شما امکان می‌دهد تست‌هایی را در یکی از ۴ فناوری بنویسید: NET، JavaScript، Python یا Java. این می تواند یک مسابقه خوب برای تیم هایی باشد که آزمایش کننده هایی در آن زبان ها تجربه کرده اند و نمی خواهند فقط به JS محدود شوند.

برنامه نويسي

نوشتن تست های خودکار برنامه نویسی است – حتی اگر روی یک مورد استفاده بسیار خاص متمرکز باشد. همانطور که زمان بیشتری را صرف انجام اتوماسیون می کنید، به شما کمک می کند تا در زمینه های زیر پیشرفت کنید.

اصول JS

اکثر برنامه های تحت وب با JS نوشته می شوند و به احتمال زیاد تست های شما با JS نیز نوشته شده اند. دانستن اصول اولیه JS برای موارد زیر مفید خواهد بود:

  • عیب یابی مشکلات در کد تستی که می نویسید و
  • درک کد برنامه به اندازه کافی برای اینکه بدانید چگونه قطعات آن را مسخره کنید.

مفاهیمی که اغلب به شما در رسیدن به این هدف کمک می کنند:

  • کارکرد
  • متغیرها
  • نحو و بررسی خودکار نحو – برای مثال، ESLint

HTML و CSS

برنامه وب که آزمایش می کنید به صورت HTML نمایش داده می شود. برای برنامه ریزی تعامل و انتظارات، باید درخت DOM و نحوه کار بر روی آن را درک کنید. در بسیاری از چارچوب‌های E2E، از انتخابگرهای CSS برای انتخاب عناصر مناسب در آزمون خود استفاده می‌کنید. بنابراین، برخی از اصول اولیه HTML و CSS قطعاً برای کار موثر بر روی خودکارسازی تست مورد نیاز خواهند بود.

بعدش چی؟

می‌توانید برای دریافت به‌روزرسانی‌ها در هنگام انتشار محتوای جدید در مورد آزمایش یا سایر موضوعات مرتبط با برنامه‌نویسی، اینجا ثبت‌نام کنید. در همین حال، در اینجا شما مقالاتی در مورد موضوعات مرتبط دارید:

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا