چطوری تست‌ کیس بنویسیم؟ || QA Software

توی این مطلب سعی دارم شیوه نوشتن تست‌ کیس رو در فرایند تست نرم‌افزار بهتون آموزش بدم. از اونجایی که این مطلب خیلی مجیز و خلاصه‌ست یه ویدیو آموزشی رو هم آخر همین مطلب براتون می‌ذارم.

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

در حال حاضر وضعیت مالی بسیار داغون، بی خونه دارم سر می‌کنم و حتی وضعیت غذا خوردن‌م هم به روزی یه وعده و نصف تبدیل شده اما در هر صورت باید بگذره.

توی این مطلب قصد دارم راجع به چطوری تست‌کیس نوشتن صحبت کنم. مسئله‌ای که در مقدمات یادگیری QA خیلی مهمه. یه مطلب رو هم قبلا راجع به اینکه QA نرم‌افزار چیه نوشتم که اگه خواستید بخونید می‌تونید از مطلب «مهندس QA نرم‌افزار کیست؟» استفاده کنید.

تست‌ کیس چیه و چه نقشی در تست نرم‌افزار داره؟

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

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

این یه مثال ساده و کلی که در ادامه مقاله بیشتر راجع بهش صحبت می‌کنیم.

هر تست کیس اطلاعاتی از شیوه انجام تست، داده‌ها و پیش‌نیازهایی که برای انجام تست نیاز داریم و… رو شامل میشه که در ادامه به‌صورت کامل‌تر اجزاش رو بررسی می‌کنیم.

تست‌ کیس چه هدف‌هایی رو دنبال می‌کنه؟

به‌صورت کلی تست‌ کیس‌ها رو می‌نویسیم تا:

  • از درست کار کردن یه ویژگی یا فیچر در نرم‌افزار مطمئن بشیم.
  • تسترها یه راهنمای جامع برای انجام تست داشته باشن.
  • مراحل و قدم‌هایی که برای انجام یه تست برداشته می‌شن رو ذخیره داشته باشیم.
  • یه blueprintیی برای پروژه‌های آینده و تسترهایی که نمی‌دونن از کجا کار رو شروع کنن بسازیم.
  • و یه سری چیزای دیگه…

ساختار و اجزاء استاندارد هر تست کیس

  • Test Case ID – آی‌دی برای هر تست کیس
  • Test Scenario – سناریو لازم برای تست
  • Test Steps – مراحل انجام تست
  • Prerequisites – پیش‌نیازهای انجام تست
  • Test Data – داده‌های لازم برای انجام تست
  • Expected/Intended Results – خروجی که مد نظر داریم
  • Actual Results – خروجی که در واقع بهمون تحویل داده
  • Test Status – Pass/Fail – موفق یا شکست خوردن تست براساس نتیجه واقعی

نکات مهم

  • برای تست کیس‌هاتون یه توضیحات کامل و مفید بنویسید
  • فرایند انجام تست رو کامل توضیح بدید
  • ابزارهایی که برای تست استفاده کردید رو همراه با نسخه‌‌ای که استفاده کردید رو بنویسید: مثلا مرورگر کروم نسخه ۱۱۲
  • اگه برای انجام تست به اطلاعات بیشتری نیاز هستش حتما اون رو توی تست کیس بنویسید

یه مثال رو حل کنیم

بیایید استفاده از سرویس gmail.com رو با یه تست کیس، تست کنیم:

  • آی‌دی تست کیس: #BST001
  • سناریو تست: ورود موفق به جیمیل
  • مراحل انجام تست:
    • وارد وبسایت gmail.com شوید.
    • ایمیل مورد نظر رو در فیلد email وارد کنید.
    • روی دکمه next کلیک کنید
    • پسورد مربوط به ایمیل رو وارد کنید
    • روی Sign In کلیک کنید.
  • پیش‌نیازها: یک ایمیل موجود همراه با نام کاربری و رمز عبور
  • مرورگر و دستگاه: Chrome v 86. Device: Samsung Galaxy Tab S7.
  • داده‌های مورد نیاز: ایمیل و پسورد معتبر.
  • نتیجه مورد انتظار: وبسایت بارگذاری شود، بعد از پر کردن فیلد Email و کلیک روی Next، فیلد پسورد ظاهر شود، بعد از کلیک روی Sign In کاربر به اکانت جیمیل خود وارد شود
  • نتیجه واقعی: نتیجه مورد نظر ظاهر شد.
  • وضعیت تست قبول/رد: قبول

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

یه نکته مهم

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

  1. TestRail: این یکی خیلی توپ و قوی‌ست، کل فرایند تست رو مدیریت می‌کنه.
  2. JIRA: معروفه واسه مدیریت پروژه، یه سری افزونه داره مثل Zephyr که کمک می‌کنن تست‌هات رو مدیریت کنی.
  3. HP ALM (Quality Center): اینم یه نرم‌افزار قوی و قدیمی از شرکت HPE، پر از امکاناته.
  4. QTest: این یکی واسه تیمای اجایل خیلی خوبه، همه چی داره واسه تست‌های دستی و اتوماتیک.
  5. TestLink: ابزار مجانی و منبع باز، خیلی کلاسیکه ولی کار راه‌اندازه.
  6. Cucumber: واسه تست‌های BDD خوبه، تست‌ها رو با فرمت ساده‌ای مثل Gherkin می‌نویسه.
  7. Xray: یه افزونه برای JIRA، کامله و همه نیازهای تست‌ت رو تو خودش جا داده.
  8. Postman: واسه تست APIها خیلی خوبه، انواع و اقسام تست‌ها رو می‌تونی باهاش بنویسی و اجرا کنی.
  9. Google Sheets: با گوگل شیت می‌تونی تست کیس‌هات رو بنویسی، ‌اونا رو مرتب کنی و گزارشاتت رو جمع‌وجور کنی.

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

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

مطالب وبلاگ