BDD yang mudah: SpecFlow+TFS

Terdapat banyak artikel di Internet tentang cara menggunakan SpecFlow, cara mengkonfigurasi TFS untuk menjalankan ujian, tetapi tidak ada satu pun yang mengandungi semua aspek. Dalam artikel ini, saya akan memberitahu anda cara anda boleh menjadikan pelancaran dan penyuntingan skrip SpecFlow mudah untuk semua orang.

Di bawah potongan anda akan belajar bagaimana untuk mendapatkan:

  • Menjalankan ujian dari TFS
  • Pemautan automatik skrip untuk menguji kes dalam TFS
  • Sentiasa terkini kandungan kes ujian dalam TFS
  • Keupayaan untuk mengedit skrip secara langsung dalam sistem kawalan versi oleh penguji
    BDD yang mudah: SpecFlow+TFS

prasejarah

Kami berhadapan dengan tugas mengautomasikan ujian aplikasi menggunakan pendekatan BDD. Memandangkan asas sistem penjejakan tugas dalam syarikat kami ialah TFS, saya mempunyai gambaran di kepala saya di mana langkah-langkah skrip SpecFlow ialah langkah-langkah kes ujian dalam TFS, dan ujian dilancarkan daripada rancangan ujian. Di bawah ialah cara saya melaksanakannya.

Apa yang kita perlukan:

  1. Projek dengan ujian pada SpecFlow
  2. Azure DevOps Server (aka Pelayan Yayasan Pasukan)
  3. Alat untuk menyegerakkan skrip SpecFlow dengan kes ujian dalam TFS

pelarasan

1. Mencipta binaan projek dengan ujian

Segala-galanya mudah di sini, pemasangan dan penerbitan artifak. Lebih lanjut mengenai tugasan ketiga nanti.

BDD yang mudah: SpecFlow+TFS

2. Mencipta keluaran untuk menjalankan ujian

Mencipta keluaran dengan satu tugas - Ujian Visual Studio

BDD yang mudah: SpecFlow+TFS

Dalam kes ini, tugas dikonfigurasikan untuk menjalankan ujian secara manual daripada rancangan ujian

BDD yang mudah: SpecFlow+TFS

3. Penyegerakan kes ujian

Kami tahu bahawa Visual Studio membenarkan anda memautkan kaedah ujian untuk menguji kes dalam TFS dan menjalankannya daripada rancangan ujian. Untuk tidak melakukan ini secara manual, dan juga untuk menyegerakkan kandungan skrip, saya menulis aplikasi konsol mudah FeatureSync. Prinsipnya mudah - kami menghuraikan fail ciri dan mengemas kini kes ujian menggunakan API TFS.

Cara menggunakan FeatureSync

Tambahkan ruang nama dan tempat pada pengepala fail ciri:

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

*ruang nama mesti sepadan dengan nama fail .dll yang mengandungi kaedah ujian

Kami mencipta kes ujian kosong dalam TFS dan menambah teg dengan idnya pada skrip:

BDD yang mudah: 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

Lancarkan FeatureSync:

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

Dalam kes kami, pelancaran berlaku selepas membina projek dengan ujian:

BDD yang mudah: SpecFlow+TFS

Hasil penyegerakan

Langkah skrip SpecFlow disegerakkan dan status Automasi ditetapkan

BDD yang mudah: SpecFlow+TFS

BDD yang mudah: SpecFlow+TFS

4. Menyediakan rancangan ujian

Kami membuat rancangan ujian, menambah kes automatik kami padanya, pilih bina dan keluarkan dalam tetapan

BDD yang mudah: SpecFlow+TFS

BDD yang mudah: SpecFlow+TFS

5. Menjalankan ujian

Pilih ujian yang diperlukan dalam rancangan ujian dan jalankannya.

BDD yang mudah: SpecFlow+TFS

Kesimpulan

Kelebihan konfigurasi ini:

  • mana-mana penguji boleh membuka fail fetaure dalam borang web kawalan versi, mengeditnya dan perubahan akan berkuat kuasa serta-merta selepas binaan
  • anda boleh menjalankan ujian secara individu pada bila-bila masa
  • model ujian telus - kami sentiasa tahu apa yang dilakukan oleh ujian yang kami lancarkan.

Sumber: www.habr.com

Tambah komen