جمعه , ۷ اردیبهشت ۱۴۰۳

آموزش SpecFlow-قسمت اول: آشنایی، نصب و راه‌اندازی

Specflow
Specflow

Specflow یک چارچوب متن باز مبتنی بر BDD1 در محیط .NET است. با استفاده از این چارچوب امکان تعریف ویژگی‌ها2 و مشخصات سیستم، با فرمت ساده و قابل درک Gherkin امکان پذیر است. Gherkin یک زبان خاص دامنه یا DSL3 است که به توصیف رفتار سیستم بدون توجه به پیاده سازی می‌پردازد. Gherkin قابلیت‌های مورد نیاز یک سیستم را با استفاده از ویژگی‌ها و سناریوهای مرتبط به ویژگی‌ها، تعریف می‌کند.

ادغام Specflow در .Net امکان اشکال‌زدایی4 سناریوهای سیستمی تعریف شده را فراهم می‌نماید. خروجی کامپایل شده یک فایل Specflow، از نوع اسمبلی Nunit است. بنابراین هر نوع اجرا کننده تست که با Nunit سازگار باشد، امکان اجرای مشخصه سازی‌های با مثال را دارد و نیاز به پیکربندی خاص دیگری نمی‌باشد.

برای نصب و استفاده از Specflow  در محیط .NET مراحل زیر را انجام دهید:

۱- در بخش Tools-> Extensions and Updates-> online، عبارت Specflow را جستجو نمایید. همانند آنچه در تصویر ۱ می‌بینید، Specflow را دانلود نمایید.

Picture 1
Figure 1

۲- پس از این که دانلود با موفقیت انجام شد، یک پروژه جدید از نوع Unit Test ایجاد نمایید.

۳- اکنون برای استفاده از Specflow در پروژه دلخواه، باید آن را به Referenceهای پروژه اضافه نمایید. برای اضافه کردن Specflow از مدیریت پکیج Nuget  استفاده نمایید. در کنسول مدیریت پکیج، دستور زیر را وارد نمایید:

PM> Install-Package SpecFlow

۴- پس از اجرای این  دستور، Specflow به Referenceهای پروژه اضافه می‌شود. حال با اضافه کردن یک آیتم جدید به پروژه ، صفحه‌ای مشابه با تصویر ۲ باز خواهد شد، که امکان اضافه کردن بخش‌های Specflow  در پروژه را برای ما فراهم می‌کند.

Picture 2
Figure 2

از این جا به بعد برای ادامه کار با Specflow، طبق مفاهیم BDD جلو می‌رویم. با استفاده از فرمت Gherkin ابتدا ویژگی‌های سیستم تعریف می‌شوند. برای این کار همانند تصویر۲، یک Specflow Feature File به پروژه اضافه می‌شود. هر ویژگی شامل چندین سناریو است. سناریوها، شرایط موفق، ناموفق و مرزی ویژگی‌ها را توصیف می‌کنند. توصیف سناریوها بر اساس قواعد BDD، به شکل سه تایی Given,when,then مدل می‌شوند. یعنی چه کسی، چه چیزی را به چه منظور می‌خواهد.این قاعده در تصویر ۳ نمایش داده شده است.

Picture 3
Figure 3

در BDD، ویژگی‌های سیستم و به اصطلاحی دیگر  شرح داستان‌های کاربری5 در حضور مشتری، توسعه دهنده و تستر جمع‌آوری می‌گردند. به این ترتیب معیارهای پذیرش سیستم گرد آوری می‌شوند. سناریوهای جمع شده، معیارهای پذیرش سیستم از دیدگاه مشتری هستند. بنابراین در ادامه توسط Specflow هر یک از مراحل سناریو تبدیل به مراحل آزمون پذیرش سیستم می‌شود.

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

 

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

تمام قسمت‌های آموزش Specflow، به صورت دسته‌بندی شده از اینجا در دسترس است.

آموزش

پاورقی

  1. Behavior Driven Development
  2. Feature
  3. Domain Specific Language
  4. Debug
  5. UserStory

همچنین ببینید

Selenium

آموزش Selenium-قسمت هفدهم: Mouse Click Event و Keyboard Event و موضوع Action Class در Selenium WebDriver

در این بخش، ما رویداد کیبورد(Keyboard Event) و ماوس(Mouse Event) را در Selenium Webdriver آموزش …

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

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