Selenium dengan Timun (Kerangka BDD): Tutorial dengan Contoh

Isi kandungan:

Anonim

Dalam tutorial ini, anda akan belajar bagaimana mengintegrasikan Timun dengan Selenium Webdriver.

Apa itu Timun?

Timun adalah pendekatan pengujian yang menyokong Behavior Driven Development (BDD). Ia menerangkan tingkah laku aplikasi dalam teks bahasa Inggeris yang mudah menggunakan bahasa Gherkin.

Ketahui lebih lanjut di - https://www.guru99.com/cucumber-tutorials.html

Apa itu Selenium?

Selenium adalah alat automasi untuk Pengujian Fungsional aplikasi berasaskan web. Selenium menyokong bahasa yang berbeza seperti java, ruby, python C #, dll.

Ketahui lebih lanjut di - https://www.guru99.com/selenium-tutorial.html

Dalam tutorial Timun ini, kita akan belajar-

  • Mengapa menggunakan Timun dengan Selenium?
  • Prasyarat untuk menggunakan Timun dengan Selenium.
  • Ujian Automasi Menggunakan Timun dengan Selenium.
  • Senario 1: Mencetak teks di konsol.
  • Senario 2: Masukkan Kelayakan log masuk dan tetapkan semula nilainya.
  • Senario 3: Masukkan Kelayakan log masuk pada Guru99 & tetapkan semula nilainya. Lakukan ini untuk 3 set data.

Mengapa menggunakan Timun dengan Selenium?

Timun dan Selenium adalah dua teknologi yang popular.

Sebilangan besar organisasi menggunakan Selenium untuk ujian berfungsi. Organisasi-organisasi ini yang menggunakan Selenium, ingin mengintegrasikan Selenium dengan Timun kerana Timun menjadikannya mudah dibaca dan memahami aliran aplikasi.

Alat timun didasarkan pada kerangka Pembangunan Berteraskan Perilaku yang bertindak sebagai penghubung antara orang-orang berikut:

  1. Jurutera Perisian dan Penganalisis Perniagaan.
  2. Penguji Manual dan Penguji Automasi.
  3. Penguji dan Pembangun Manual.

Kerangka BDD timun juga memberi manfaat kepada pelanggan untuk memahami kod aplikasi kerana menggunakan bahasa Gherkin yang terdapat dalam Teks Biasa. Sesiapa sahaja dalam organisasi dapat memahami tingkah laku perisian. Sintaks Gherkin dalam teks ringkas yang mudah dibaca dan difahami.

Prasyarat untuk menggunakan Timun dengan Selenium

Sebelum memulakan integrasi Cucumber Selenium, kami memerlukan item berikut:

  • Fail balang selenium:
  • Selenium-pelayan mandiri

Boleh dimuat turun di http://www.seleniumhq.org/download/

Fail balang untuk Timun:

  • Teras timun
  • Timun-html
  • liputan kod cobertura
  • Timun-java
  • Timun-junit
  • Timun-jvm-deps
  • Pelaporan timun
  • Inti hemcrest
  • Gherkin
  • Junit

Boleh dimuat turun di https://mvnrepository.com/search?q=Cucumber

Anda perlu mencari fail dan memuat turunnya satu persatu secara berasingan.

Sebagai contoh, kami akan menunjukkan kepada anda untuk memuat turun salah satu fail balang, iaitu, "Cucumber-core".

Klik pada pautan muat turun di atas. Ini mengalihkan ke laman web di bawah. Sekarang cari balang tertentu, iaitu 'Cucumber Core' seperti gambar di bawah:

Di halaman seterusnya, Klik versi 1.2.2,

Pada skrin seterusnya, klik muat turun untuk mendapatkan fail balang 'Cucumber Core'.

Catatan : Untuk kemudahan anda, kami telah mengumpulkan fail jar yang perlu dimuat turun dari Maven di sini. Dengan berlalunya masa balang ini mungkin dikemas kini dan menjadi tidak serasi. Anda diminta untuk memuat turunnya menggunakan kaedah yang digambarkan di atas.

Ujian Automasi Menggunakan Timun dengan Selenium.

Mari belajar langkah-langkah untuk menggunakan Timun dengan selenium langkah demi langkah. Di sini kita akan merangkumi 3 senario:

  • Senario 1: Mencetak teks di konsol.
  • Senario 2: Masukkan Kelayakan log masuk dan tetapkan semula nilainya.
  • Senario 3: Masukkan Kelayakan log masuk pada Guru99 & tetapkan semula nilainya. Lakukan ini untuk 3 set data.

Senario 1: Mencetak teks di konsol.

Dalam senario ini, kami hanya mencetak teks di konsol dengan menggunakan Timun.

Langkah 1) Buat Projek dalam gerhana.

Buat projek Java dengan nama "CucumberWithSelenium" seperti yang ditunjukkan dalam tangkapan skrin di bawah.

Langkah 2) Menambah fail Jar dalam projek.

Klik kanan pada Projek> Pilih Properties> Pergi ke Java Build Path. Tambahkan semua perpustakaan yang dimuat turun lebih awal.

Langkah 3) Membuat fail ciri

Untuk membuat fail ciri terlebih dahulu buat folder ciri seperti gambar di bawah.

Sekarang Masukkan nama Folder 'Features' dan klik pada 'Finish' Button.

Sekarang, buat fail ciri dalam folder 'Features' dengan nama "MyTest.feature" - Proses serupa dengan membuat folder

Catatan: Anda mungkin perlu memasang Cucumber Eclipse Plugin agar ini berfungsi. Goto - Membantu-> Pasang Perisian Baru-> salin tampal pautan http://cucumber.github.io/cucumber-eclipse/update-site/ dan pasang

Langkah 4) Tulis senario.

Garis di bawah ditulis dalam fail 'MyTest.feature' menggunakan bahasa Gherkin seperti yang ditunjukkan di bawah:

Ciri: Tetapkan semula fungsi pada halaman log masuk Aplikasi

Senario: Pengesahan butang Tetapkan Semula

Diberi Buka Firefox dan lancarkan aplikasi

Semasa Masukkan Nama Pengguna dan Kata Laluan

Kemudian Tetapkan semula kelayakan

Penjelasan Kod

Baris 1) Pada baris ini kita menulis fungsi perniagaan.

Baris 2) Pada baris ini kita menulis senario untuk diuji.

Baris 3) Pada baris ini kita menentukan prasyarat.

Baris 4) Pada baris ini kita menentukan tindakan yang perlu kita laksanakan.

Baris 4) Pada baris ini kita menentukan hasil atau hasil yang diharapkan.

Langkah 5) Menulis skrip selenium testrunner untuk reka bentuk rangka Selenium Cucumber

Di sini kami membuat pakej 'TestRunner' dan kemudian fail kelas 'Runner.java' di bawahnya.

pakej TestRunner;import org.junit.runner.RunWith;import timun.api.CucumberOptions;import timun.api.junit. timun;@RunWith (Cucumber.class)@CucumberOptions (features = "Features", gam = {"StepDefinition"}))Pelari kelas awam{}

Dalam kod contoh Cucumber Java di atas, kami menjalankan ujian timun dengan menggunakan anotasi berikut:

Anotasi @RunWith () memberitahu tentang kelas pelari ujian untuk mula melaksanakan ujian kami.

Anotasi @CucmberOptions () digunakan untuk menetapkan beberapa sifat untuk ujian timun kami seperti fail ciri, definisi langkah, dll.

Tangkapan skrin fail TestRunner.

Langkah 6) Membuat skrip Definisi Langkah.

Sekarang di sini kita membuat pakej 'StepDefinition' dan kemudian fail skrip 'Steps.java' di bawahnya. Di sini kita sebenarnya menulis skrip selenium untuk menjalankan ujian di bawah kaedah Timun.

pakej StepDefinition;import timun.api.java.en.Diberikan;import timun.api.java.en.Kemudian;import timun.api.java.en.When;Langkah kelas awam {@Given ("Buka Firefox dan lancarkan aplikasi $")kekosongan awam open_the_Firefox_and_launch_the_application () lemparan Throwable{System.out.println ("Langkah ini membuka Firefox dan melancarkan aplikasi.");}@Apabila ("Masukkan Nama Pengguna dan Kata Laluan $")batal awam enter_the_Username_and_Password () lemparan Lempar{System.out.println ("Langkah ini masukkan Nama Pengguna dan Kata Laluan di halaman log masuk.");}@ Kemudian ("Tetapkan semula kelayakan $")kekosongan awam Reset_the_credential () lemparan Throwable{System.out.println ("Langkah ini klik pada butang Reset.");}}

Dalam kod di atas, kelas dibuat dengan nama 'Langkah.' Anotasi timun digunakan untuk memetakan dengan fail ciri. Setiap kaedah anotasi ditentukan:

@ Memberi anotasi menentukan kaedah untuk membuka firefox dan melancarkan aplikasi

@Apabila anotasi menentukan kaedah untuk memasukkan nama pengguna dan kata laluan

@ Kemudian anotasi menentukan kaedah untuk menetapkan semula kelayakan

Di bawah setiap kaedah, kami hanya mencetak mesej.

Di bawah ini adalah tangkapan skrin skrip dan pohon projek 'Steps.java', bagaimana rupanya.

Nota: Definisi langkah tidak lain adalah langkah yang ingin anda lakukan mengikut kaedah timun ini.

Langkah 7) Melaksanakan Skrip.

Pengguna dapat melaksanakan skrip ini dari skrip Runner Test, iaitu 'Runner.java' seperti yang ditunjukkan dalam tangkapan layar di bawah.

Langkah 8) Analisis output.

Semasa menjalankan skrip 'Runner.java', ia memaparkan teks di konsol. Ini adalah teks yang sama yang ditentukan dalam skrip 'Steps.java'.

Senario 2: Masukkan Kelayakan log masuk dan tetapkan semula nilainya.

Di sini kita akan memasukkan Credential pada halaman log masuk demo Guru99 dan menetapkan semula nilainya

Untuk Senario 2, kita hanya perlu mengemas kini skrip 'Steps.java'. Di sini kita sebenarnya menulis skrip selenium seperti yang ditunjukkan di bawah langkah-langkah. Pertama, kita perlu menambahkan fail balang Selenium ke projek ini.

Langkah 1) Di sini kita mengemas kini skrip 'Steps.java' seperti yang ditunjukkan dalam kod dan tangkapan skrin di bawah.

pakej StepDefinition;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import timun.api.java.en.Diberikan;import timun.api.java.en.Kemudian;import timun.api.java.en.When;Langkah kelas awam {Pemacu WebDriver;@Given ("Buka Firefox dan lancarkan aplikasi $")kekosongan awam open_the_Firefox_and_launch_the_application () lemparan Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");driver = FirefoxDriver baru ();driver.manage (). window (). maksimalkan ();driver.get ("http://demo.guru99.com/v4");}@Apabila ("Masukkan Nama Pengguna dan Kata Laluan $")batal awam enter_the_Username_and_Password () lemparan Lempar{driver.findElement (By.name ("uid")). sendKeys ("nama pengguna12");driver.findElement (By.name ("kata laluan")). sendKeys ("kata laluan12");}@ Kemudian ("Tetapkan semula kelayakan $")kekosongan awam Reset_the_credential () lemparan Throwable{driver.findElement (By.name ("btnReset")). klik ();}}

Tangkapan skrin skrip selenium di atas.

Langkah 2) Laksanakan skrip.

Setelah mengemas kini kami menjalankan Runner.java.

Langkah 3) Analisis output.

Dalam output anda dapat melihat yang berikut:

  • Penyemak imbas dilancarkan.
  • Laman web demo bank Guru99 dibuka.
  • Nama pengguna dan kata laluan diletakkan di halaman log masuk.
  • Tetapkan semula nilai.

Senario 3: Masukkan Kelayakan log masuk pada Guru99 & tetapkan semula nilainya. Lakukan ini untuk 3 set data.

Di sini kita perlu mengemas kini 'Step.java' dan fail ciri.

Langkah 1) Kemas kini fail ciri seperti gambar di bawah:

Di sini kami mengemas kini fail ciri dengan sintaks 'Skenario Outline' dan 'contoh'.

Ciri: Tetapkan semula fungsi pada halaman log masuk Aplikasi

Garis Besar Skenario: Pengesahan butang set semula dengan bilangan kelayakan

Diberi Buka Firefox dan lancarkan aplikasi

Semasa Masukkan Nama Pengguna dan Kata Laluan

Kemudian Tetapkan semula kelayakan

Contoh:

| nama pengguna | kata laluan |

| Pengguna1 | kata laluan1 |

| Pengguna2 | kata laluan2 |

| Pengguna3 | kata laluan3 |

// Dalam baris ini kita menentukan kumpulan data.

Langkah 2) Sekarang kemas kini skrip Step.java.

Di sini kami mengemas kini kaedah untuk melewati parameter, skrip yang diperbarui seperti di bawah:

pakej StepDefinition;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import timun.api.java.en.Diberikan;import timun.api.java.en.Kemudian;import timun.api.java.en.When;Langkah kelas awam {Pemacu WebDriver;@Given ("Buka Firefox dan lancarkan aplikasi $")kekosongan awam open_the_Firefox_and_launch_the_application () lemparan Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");driver = FirefoxDriver baru ();driver.manage (). window (). maksimalkan ();driver.get ("www.demo.guru99.com/v4");}@Apabila ("Masukkan Nama Pengguna \" (. *) \ "Dan Kata Laluan \" (. *) \ "$")public void enter_the_Username_and_Password (String username, String password) melempar Throwable{driver.findElement (By.name ("uid")). sendKeys (nama pengguna);driver.findElement (By.name ("kata laluan")). sendKeys (kata laluan);}@ Kemudian ("Tetapkan semula kelayakan $")kekosongan awam Reset_the_credential () lemparan Throwable{driver.findElement (By.name ("btnReset")). klik ();}}

Langkah 3) Sekarang jalankan skrip yang dikemas kini.

Skrin di bawah menunjukkan kejayaan pelaksanaan skrip dan masa yang diambil oleh setiap set data.

Langkah 4) Analisis output.

Dalam output anda dapat melihat yang berikut:

Output di bawah akan diulang untuk jumlah set data, iaitu, 3 set.

  • Penyemak imbas dilancarkan.
  • Laman web demo bank Guru99 dibuka.
  • Nama pengguna dan kata laluan diletakkan di halaman log masuk.
  • Tetapkan semula nilai.

Kesimpulannya.

Timun adalah alat BDD yang sangat popular. Ia mudah dibaca dan dapat difahami oleh semua pihak yang berkepentingan termasuk orang teknikal dan bukan teknikal.

Timun dapat disatukan dengan Selenium menggunakan 3 langkah berikut

  1. Buat fail ciri yang menentukan ciri dan senario langkah demi langkah menggunakan bahasa Gherkin.
  2. Buat fail Testrunner. Dalam fail ini, kami mengintegrasikan Timun dengan rangka BDD di Selenium. Kami melaksanakan skrip ini.
  3. Buat definisi Langkah, skrip selenium sebenar yang ditentukan di bawah pakej ini.