طراحی موارد آزمون: طرح و قالب

طراحی موارد آزمون: طرح و قالب

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

با این مقدمه اگه بخواهیم مشخصات کلی برای طراحی یک مورد آزمون خوب در نظر بگیریم، می‌توانیم به موارد زیر اشاره کنیم: بیشتر بخوانید »

طراحی موارد آزمون: اولین گام طراحی

طراحی موارد آزمون: اولین گام طراحی

یکی از چالش برانگیزترین انتظارات در تست نرم‌افزار طراحی یک مورد آزمون خوب است که یک هنر پیچیده‌ای به‌حساب می‌آید. در پست قبلی دلایل طراحی موارد آزمون گفته شد. در ادامه به مفاهیم اولیه موارد آزمون می‌پردازیم.
موارد آزمون (Test Case) یکی از مباحث مهم در مهندسی نرم‌افزار می‌باشد که تعریف‌های متعددی از آن آمده است:

بیشتر بخوانید »

طراحی موارد آزمون: اطلاعاتتان را منتشر کنید

طراحی موارد آزمون: اطلاعاتتان را منتشر کنید

سوال همیشگی بین گروه توسعه و تست ‌‌این است که “چرا بایستی موارد آزمون (Test Case) نوشت؟ ” من فکر می‌کنم که بیشترافراد تیم، نوشتن آن را بسیار زمان بر و پرهزینه دانسته و ترجیح می‌دهند که به آن فکر نکرده و انجام ندهند. با ‌‌این حال به نظرم دلایل بسیارمعتبری برای نوشتن موارد آزمون وجود دارد.

یادتان باشد که شما تنها تستر شرکت نیستید و نخواهید بود! بنابراین تسترهای شرکت به اطلاعات مستندی احتیاج دارند که چگونگی تست بخش‌های مختلف برنامه را شرح داده باشد.‌‌ این اطلاعات مستند چیزی جز موارد آزمون (Test Case) نیست! بیشتر بخوانید »

گام‌هایی کوچک با تست

گام‌هایی کوچک با تست

 

در سال ۱۹۹۹ گروهی از توسعه‌دهندگان متدولوژی eXtreme Programing  یا به اختصار XP را پدید آوردند. در این متدولوژی به جای آن‌که ابتدا کد برنامه را نوشته و سپس آن را تست نمایند، برعکس عمل می‌کردند. یعنی ابتدا کد تست را می‌نوشتند، سپس کدهای برنامه را برای پاس کردن آن تست‌ها اضافه می‌کردند. به این صورت‌ که، قبل از شروع به طراحی و پیاده سازی روال‌ها، ابتدا یک تست برای نیازها و یا خواسته جدید پیاده‌سازی می‌شد و بعد با توجه به ورودی و خروجی‌های تست، نیازهای تست را با کمترین کد پیاده سازی می‌کردند. این عمل تا زمانی ادامه پیدا می‌کرد ‌که به نتیجه نهایی و مطلوب برسد. به این شیوه، برنامه نویسی اول تست Test‌First Development می‌گفتند که به توسعه تست محور Test Driven Development یا به اختصار TDD نیز معروف است. TDD حاصل تکامل فرآیند تولید نرم‌افزار بوده و بسیاری از مشکلات و چالش‌های تولید نرم‌افزار را رفع می‌کند. بیشتر بخوانید »

تست جعبه خاکستری: ترکیب تست جعبه سفید و سیاه

تست جعبه خاکستری: ترکیب تست جعبه سفید و سیاه

تست جعبه خاکستری (Gray Box Testing Strategy) روشی برای تست نرم‌افزار است که با آگاهی کم از فعالیت‌های داخلی برنامه انجام می‌گیرد. این تست ترکیبی از تست جعبه سفید و سیاه است.همان‌طور که می‌دانید تستر در استراتژی جعبه سیاه از ساختار داخلی  برنامه اطلاعی نداشته و در مقابل در استراتژی جعبه سفید آگاهی کامل ازساختار داخلی دارد. اما در استراتژی جعبه خاکستری تستر تا حدودی از ساختار داخلی برنامه آگاه بوده که این شامل دسترسی به ساختارداده‌های داخلی و الگوریتم‌ها در جهت طراحی Test Case ها است. علت نام‌گذاری این روش آن است که تستر برنامه را مانند جعبه‌ای نیمه شفاف و خاکستری رنگ تصور می‌کند که تا حدودی ساختار داخلی برنامه را از بیرون می‌بیند.

بیشتر بخوانید »

اصول تست نرم‌افزار- قسمت سوم

اصول تست نرم‌افزار- قسمت سوم

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

به بخش سوم و آخر این اصول رسیدیم در بخش اول و دوم تعدادی از این اصول را نام بردیم و پنج اصل آخر باقی ماند که عبارتند از: بیشتر بخوانید »

اصول تست نرم‌افزار- قسمت دوم

اصول تست نرم‌افزار- قسمت دوم

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

 ۶) انجام تست توسط شخص ثالث بی‌طرف: برای موثر بودن بایستی تست توسط شخص ثالث بی‌طرف انجام شود. منظور از موثربودن این است که خطاها را با احتمال بیشتری پیدا کنیم. به دلایلی که در بخش‌های بعدی ذکر می‌کنیم، مهندس نرم‌افزاری که سیستم را برنامه نویسی کرده است، بهترین کسی نیست که باید همه تست‌ها را انجام دهد. بنابراین برنامه نویس بایستی از تست‌های مختلف برنامه خود اجتناب کند. بیشتر بخوانید »

اصول تست نرم‌افزار- قسمت اول

اصول تست نرم‌افزار- قسمت اول

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

برای چه تست کنیم؟

برای چه تست کنیم؟

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

یک نکته مهم این است که تست نرم افزار، باید از نقطه نظرات مختلفی در تضمین کیفیت نرم افزارلحاظ شود، که با همه حوزه‌های فرآیند تجاری همراه باشد نه فقط حوزه‌های تست!

شکست نرم افزار از طریق فرآیندهای زیر رخ می‌دهد: بیشتر بخوانید »

مقدمه ای بر تست نرم افزار

مقدمه ای بر تست نرم افزار

 

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

بیشتر بخوانید »