دوشنبه , ۱۰ اردیبهشت ۱۴۰۳

آموزش SpecFlow-قسمت پنجم: مقیدسازی Method names-underscores و Method names- pascal case

Specflow
Specflow

در ادامه آموزش، در این بخش مدل‌های مقیدسازی Method name- underscores و  Method name- pascal case تشریح می‌گردند.

تعاریف بسیاری از گام‌ها بدون استفاده از عبارات منظم امکان پذیر است. در مدل Method name- underscores، در نامگذاری متد از علامت (_) underscore استفاده می‌شود و برخلاف حالت عبارات منظم،[Given][When][Then] خالی بوده و شامل هیچ عبارتی نیستند. برای مشخصسازی پارامترها در این روش، نام پارامتر با حروف تماما بزرگ1 مشخص می‌شود و یا با استفاده از پیشوند2 p  با شاخص3 مشخص می‌گردد. به عنوان مثال p0.

سناریوی ورود کاربر در آموزش‌های پیشین را برای مقیدسازی underscore مجددا بکار می‌بریم. با این تفاوت که در گام وارد کردن نام کاربری، ایمیل ‘ali.md@example.com’ را برداشته و پارامتر EMAIL را جایگزین می‌نماییم. تصویر ۱۴ را مشاهده نمایید.

Figure 14
Figure 14

حال روی سناریو کلیک راست کرده و با مدل underscore مقیدسازی را تولید کنید. همانطور که در تصویر ۱۵ مشاهده می‌نمایید، به جای کاراکتر فاصله، underscore در تعریف نام متد قرار گرفته است. در گام تعریف نام کاربری، پارامتر ورودی برای متد در نظر گرفته نشده است. از آنجایی که EMAIL تماما با کاراکترهای بزرگ نوشته شده است، می‌توان یک پارامتر ورودی برای این گام با همان نام با کاراکتر های کوچک، تعریف نمود.

Figure 15
Figure 15

اضافه نمودن پارامتر ورودی به گام تعریف نام کاربری در تصویر ۱۶ نمایش داده شده است.

Figure 16
Figure 16

با بازگشت به تعریف سناریو طبق تصویر ۱۷ مشاهده می‌نمایید که EMAIL در تعریف گام به شکل یک پارامتر درآمده است.

Figure 17
Figure 17

قوانین مدل مقیدسازی pascal name مشابه  مدل مقیدسازی  underscore است. تصویر ۱۸ مدل مقیدسازی pascal name را برای سناریوی ورود کاربری نمایش می‌دهد. همان طور که مشاهده می‌شود در تعریف نام متدهای سناریو پس از کاراکتر فاصله، ابتدای نام با کاراکتر حرف بزرگ نوشته شده و ادامه کلمه با حرف کوچک درج شده است. برای تعریف پارامتر در این روش، ترکیبی از روش pascal name و underscore استفاده می‌شود. برای درک این موضوع، متد بررسی تعداد کاراکترهای رمز عبور را که با رنگ قرمز نمایش داده شده است را مشاهده نمایید.

Figure 18
Figure 18

همان طور که مشاهده کردید، هنگام تولید مقیدسازی به طور پیشفرض مدل  Regular Expression انتخاب شده است. می‌توانید با تغییر در App.config پروژه، مدل پیشفرض مقیدسازی را تغییر دهید. به عنوان مثال اگر بخواهید underscore مدل پیش فرض باشد، تنظیمات زیر را در App.config قرار دهید.

<specFlow>
  <trace stepDefinitionSkeletonStyle="MethodNameUnderscores" />
</specFlow>

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

در آموزش بعدی، در رابطه با اشکال‌زدایی(Debugging) و اجرای گامهای تست صحبت خواهیم کرد.

 

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

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

آموزش

پاورقی

  1. ALL- CAPS
  2. prefix
  3. index

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

Selenium

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

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

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

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