Ada banyak artikel di Internet tentang cara menggunakan SpecFlow, cara mengkonfigurasi TFS untuk menjalankan pengujian, tetapi tidak ada satu pun yang memuat semua aspek. Dalam artikel ini, saya akan memberi tahu Anda bagaimana Anda dapat membuat peluncuran dan pengeditan skrip SpecFlow menjadi nyaman bagi semua orang.
Di bawah potongan Anda akan belajar cara mendapatkan:
- Menjalankan tes dari TFS
- Tautan otomatis skrip untuk menguji kasus di TFS
- Konten kasus uji di TFS selalu terkini
- Kemampuan untuk mengedit skrip secara langsung di sistem kontrol versi oleh penguji
prasejarah
Kami dihadapkan pada tugas mengotomatisasi pengujian aplikasi menggunakan pendekatan BDD. Karena dasar dari sistem pelacakan tugas di perusahaan kami adalah TFS, saya memiliki gambaran di kepala saya di mana langkah-langkah skrip SpecFlow adalah langkah-langkah kasus pengujian di TFS, dan pengujian diluncurkan dari rencana pengujian. Di bawah ini adalah cara saya menerapkannya.
Yang kami butuhkan:
- Proyek dengan pengujian pada SpecFlow
- Server Azure DevOps (alias Server Team Foundation)
- Alat untuk menyinkronkan skrip SpecFlow dengan kasus uji di TFS
pengaturan
1. Membuat proyek build dengan tes
Semuanya sederhana di sini, perakitan dan publikasi artefak. Lebih lanjut tentang tugas ketiga nanti.
2. Membuat rilis untuk menjalankan pengujian
Membuat rilis dengan satu tugas - Visual Studio Test
Dalam hal ini, tugas dikonfigurasi untuk menjalankan pengujian secara manual dari rencana pengujian
3. Sinkronisasi kasus uji
Kita tahu bahwa Visual Studio memungkinkan Anda menautkan metode pengujian ke kasus pengujian di TFS dan menjalankannya dari rencana pengujian. Agar tidak melakukan ini secara manual, dan juga untuk menyinkronkan konten skrip, saya menulis aplikasi konsol sederhana
Cara menggunakan FeatureSync
Tambahkan namespace dan lokal ke header file fitur:
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*namespace harus cocok dengan nama file .dll yang berisi metode pengujian
Kami membuat kasus uji kosong di TFS dan menambahkan tag dengan idnya ke skrip:
@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
Luncurkan FeatureSync:
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
Dalam kasus kami, peluncuran terjadi setelah pembangunan proyek dengan pengujian:
Hasil sinkronisasi
Langkah-langkah skrip SpecFlow disinkronkan dan status Otomatisasi ditetapkan
4. Menyiapkan rencana pengujian
Kami membuat rencana pengujian, menambahkan kasus otomatis ke dalamnya, memilih build dan rilis di pengaturan
5. Tes lari
Pilih pengujian yang diperlukan dalam rencana pengujian dan jalankan.
Kesimpulan
Keuntungan dari konfigurasi ini:
- penguji mana pun dapat membuka file fetaure di formulir web kontrol versi, mengeditnya dan perubahan akan berlaku segera setelah pembuatan
- Anda dapat menjalankan pengujian satu per satu kapan saja
- model pengujian transparan - kami selalu mengetahui fungsi pengujian yang kami luncurkan.
Sumber: www.habr.com