مقالات زیادی در اینترنت در مورد نحوه استفاده از SpecFlow، نحوه پیکربندی TFS برای اجرای آزمایشها وجود دارد، اما هیچ مقالهای وجود ندارد که تمام جنبهها را داشته باشد. در این مقاله، من به شما خواهم گفت که چگونه می توانید راه اندازی و ویرایش اسکریپت های SpecFlow را برای همه راحت کنید.
در زیر برش یاد خواهید گرفت که چگونه به دست آورید:
- اجرای تست ها از TFS
- پیوند خودکار اسکریپت ها به موارد تست در TFS
- همیشه محتوای به روز موارد آزمایشی در TFS
- امکان ویرایش مستقیم اسکریپت ها در سیستم کنترل نسخه توسط تسترها
ماقبل تاریخ
ما با وظیفه خودکارسازی تست برنامه با استفاده از رویکرد BDD روبرو بودیم. از آنجایی که اساس سیستم ردیابی وظایف در شرکت ما TFS است، من تصویری در ذهنم داشتم که در آن مراحل اسکریپت SpecFlow مراحل تست موارد در TFS است و آزمایش ها از برنامه های آزمایشی راه اندازی می شوند. در زیر نحوه اجرای آن را آورده ام.
آنچه ما نیاز داریم:
- پروژه با تست در SpecFlow
- سرور Azure DevOps (با نام مستعار Team Foundation Server)
- ابزاری برای همگام سازی اسکریپت های SpecFlow با موارد تست در TFS
تنظیم
1. ایجاد بیلد پروژه با تست
همه چیز در اینجا ساده است، مونتاژ و انتشار مصنوعات. بیشتر در مورد کار سوم بعدا.
2. ایجاد یک نسخه برای اجرای تست ها
ایجاد یک نسخه با یک کار - تست ویژوال استودیو
در این حالت، وظیفه به گونه ای پیکربندی می شود که آزمایش ها را به صورت دستی از برنامه آزمایشی اجرا کند
3. همگام سازی موارد آزمایشی
ما می دانیم که ویژوال استودیو به شما اجازه می دهد تا روش های تست را به موارد تست در TFS پیوند دهید و آنها را از برنامه های آزمایشی اجرا کنید. برای اینکه این کار را به صورت دستی انجام ندهم و همچنین برای همگام سازی محتوای اسکریپت ها، یک برنامه کنسول ساده نوشتم.
نحوه استفاده از FeatureSync
فضای نام و محلی را به هدر فایل ویژگی اضافه کنید:
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*namespace باید با نام فایل .dll که حاوی روشهای تست است مطابقت داشته باشد
ما تست های خالی را در TFS ایجاد می کنیم و تگ هایی را با شناسه آنها به اسکریپت ها اضافه می کنیم:
@2124573 @posistive
Scenario: Successful authorization
Given I on authorization page
And I enter:
| Login | Password |
| user | pass |
When I press Login button
Then Browser redirect on Home page
راه اندازی FeatureSync:
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
در مورد ما، راه اندازی پس از ساخت پروژه با آزمایشات انجام می شود:
نتیجه همگام سازی
مراحل اسکریپت SpecFlow همگام شده و وضعیت اتوماسیون تنظیم شده است
4. تنظیم طرح آزمون
ما یک طرح آزمایشی ایجاد می کنیم، موارد خودکار خود را به آن اضافه می کنیم، ساخت و انتشار را در تنظیمات انتخاب می کنیم
5. اجرای آزمون ها
تست مورد نیاز را در طرح تست انتخاب کرده و اجرا کنید.
نتیجه
مزایای این کانفیگ:
- هر آزمایش کننده می تواند فایل ویژه را در فرم وب کنترل نسخه باز کند، آن را ویرایش کند و تغییرات بلافاصله پس از ساخت اعمال می شود.
- هر زمان که بخواهید می توانید تست ها را به صورت جداگانه اجرا کنید
- مدل تست شفاف - ما همیشه می دانیم آزمایشی که راه اندازی کردیم چه کاری انجام می دهد.
منبع: www.habr.com