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
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:
- SpecFlow testlari bilan loyiha
- Azure DevOps Server (aka Team Foundation Server)
- 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.
2. Testlarni bajarish uchun reliz yaratish
Bitta vazifa bilan reliz yaratish - Visual Studio testi
Bunday holda, topshiriq test rejasidan testlarni qo'lda bajarish uchun tuzilgan
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-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:
@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:
Sinxronizatsiya natijasi
SpecFlow skript qadamlari sinxronlashtiriladi va avtomatlashtirish holati o'rnatiladi
4. Test rejasini tuzish
Biz sinov rejasini yaratamiz, unga avtomatlashtirilgan holatlarimizni qo'shamiz, sozlamalarda qurish va chiqarishni tanlang
5. Ishlayotgan testlar
Sinov rejasida kerakli testni tanlang va uni ishga tushiring.
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