Qulay BDD: SpecFlow+TFS

Internetda SpecFlow-dan qanday foydalanish, testlarni bajarish uchun TFS-ni qanday sozlash haqida ko'plab maqolalar mavjud, ammo barcha jihatlarni o'z ichiga olgan bittasi yo'q. Ushbu maqolada men sizga SpecFlow skriptlarini ishga tushirish va tahrirlashni qanday qilib hamma uchun qulay qilish mumkinligini aytib beraman.

Kesish ostida siz qanday qilib olishni o'rganasiz:

  • TFS dan testlarni ishga tushirish
  • Skriptlarni TFSdagi test holatlariga avtomatik bog'lash
  • TFSdagi test holatlarining har doim yangilangan mazmuni
  • Skriptlarni to'g'ridan-to'g'ri versiyani boshqarish tizimida sinovchilar tomonidan tahrirlash imkoniyati
    Qulay BDD: SpecFlow+TFS

Sana oldin

Biz BDD yondashuvidan foydalangan holda ilovalarni sinovdan o'tkazishni avtomatlashtirish vazifasiga duch keldik. Kompaniyamizdagi vazifalarni kuzatish tizimining asosi TFS bo'lganligi sababli, mening boshimda rasm bor edi, u erda SpecFlow skriptining bosqichlari TFS-dagi test holatlarining bosqichlari va testlar sinov rejalaridan boshlanadi. Quyida men buni qanday amalga oshirganim.

Bizga nima kerak:

  1. SpecFlow testlari bilan loyiha
  2. Azure DevOps Server (aka Team Foundation Server)
  3. SpecFlow skriptlarini TFS-dagi test holatlari bilan sinxronlashtirish vositasi

moslashish

1. Testlar bilan loyiha qurilishini yaratish

Bu erda hamma narsa oddiy, artefaktlarni yig'ish va nashr etish. Uchinchi vazifa haqida keyinroq.

Qulay BDD: SpecFlow+TFS

2. Testlarni bajarish uchun reliz yaratish

Bitta vazifa bilan reliz yaratish - Visual Studio testi

Qulay BDD: SpecFlow+TFS

Bunday holda, topshiriq test rejasidan testlarni qo'lda bajarish uchun tuzilgan

Qulay BDD: SpecFlow+TFS

3. Test holatlarini sinxronlashtirish

Biz bilamizki, Visual Studio TFSda test holatlari uchun test usullarini bog'lash va ularni test rejalaridan ishga tushirish imkonini beradi. Buni qo'lda qilmaslik uchun, shuningdek, skriptlar tarkibini sinxronlashtirish uchun men oddiy konsol ilovasini yozdim. FeatureSync. Printsip oddiy - biz TFS API yordamida xususiyat faylini tahlil qilamiz va sinov holatlarini yangilaymiz.

FeatureSync-dan qanday foydalanish kerak

Xususiyat fayli sarlavhasiga nom maydoni va mahalliy til qo'shing:

#language:en
@Namespace:Application.Autotests
Feature: Log to application

*nomlar maydoni sinov usullarini o'z ichiga olgan .dll fayl nomiga mos kelishi kerak

Biz TFS da bo'sh test holatlarini yaratamiz va skriptlarga ularning identifikatori bilan teglarni qo'shamiz:

Qulay BDD: SpecFlow+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-ni ishga tushiring:

FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba

Bizning holatda, ishga tushirish loyihani sinovlar bilan qurgandan so'ng amalga oshiriladi:

Qulay BDD: SpecFlow+TFS

Sinxronizatsiya natijasi

SpecFlow skript qadamlari sinxronlashtiriladi va avtomatlashtirish holati o'rnatiladi

Qulay BDD: SpecFlow+TFS

Qulay BDD: SpecFlow+TFS

4. Test rejasini tuzish

Biz sinov rejasini yaratamiz, unga avtomatlashtirilgan holatlarimizni qo'shamiz, sozlamalarda qurish va chiqarishni tanlang

Qulay BDD: SpecFlow+TFS

Qulay BDD: SpecFlow+TFS

5. Ishlayotgan testlar

Sinov rejasida kerakli testni tanlang va uni ishga tushiring.

Qulay BDD: SpecFlow+TFS

xulosa

Ushbu konfiguratsiyaning afzalliklari:

  • Har qanday tester fetaure faylini versiyani boshqarish veb-shaklida ochishi, tahrirlashi mumkin va o'zgarishlar tuzilgandan so'ng darhol kuchga kiradi.
  • testlarni istalgan vaqtda individual ravishda o'tkazishingiz mumkin
  • shaffof test modeli - biz boshlagan test nima qilishini har doim bilamiz.

Manba: www.habr.com

a Izoh qo'shish