Apa itu Selenium? Tutorial Pengantar
Apa itu Selenium?
Selenium adalah kerangka pengujian otomatis gratis (sumber terbuka) yang digunakan untuk memvalidasi aplikasi web di berbagai browser dan platform. Anda dapat menggunakan beberapa bahasa pemrograman seperti Java, C#, Python, dll untuk dibuat Selenium Skrip Tes. Pengujian dilakukan dengan menggunakan Selenium alat pengujian biasanya disebut dengan Selenium pengujian.
Selenium Paket Alat
Selenium Perangkat lunak bukan hanya sebuah alat tunggal melainkan serangkaian perangkat lunak, yang masing-masing bagiannya melayani kebutuhan yang berbeda-beda Selenium Kebutuhan pengujian QA suatu organisasi. Berikut daftar alatnya
- Selenium Lingkungan Pengembangan Terintegrasi (IDE)
- Selenium Kontrol Jarak Jauh (RC)
- webdriver
- Selenium kisi
Saat ini, Selenium RC dan WebDriver digabungkan menjadi satu kerangka kerja untuk dibentuk Selenium 2. Selenium 1, omong-omong, mengacu pada Selenium RC.
Tutorial Video Selenium
Klik di sini jika video tidak dapat diakses
Siapa yang mengembangkan Selenium?
Sejak Selenium adalah kumpulan alat yang berbeda, juga memiliki pengembang yang berbeda. Di bawah ini adalah orang-orang penting yang memberikan kontribusi penting bagi Selenium Project
Terutama, Selenium adalah dibuat oleh Jason Huggins pada tahun 2004. Seorang insinyur di ThoughtWorks, dia sedang mengerjakan aplikasi web yang memerlukan pengujian sering. Menyadari bahwa Pengujian Manual aplikasi mereka yang berulang-ulang menjadi semakin tidak efisien, ia menciptakan sebuah JavaNaskah program yang secara otomatis mengontrol tindakan browser. Dia menamakan program ini “JavaPelari Uji Skrip. "
Melihat potensi ide ini untuk membantu mengotomatisasi aplikasi web lainnya, ia membuat JavaScriptRunner open-source, yang kemudian berganti nama menjadi Selenium Core. Bagi mereka yang tertarik untuk mengeksplorasi opsi lain untuk pengujian aplikasi web, lihatlah ini Selenium alternatif.
Masalah Kebijakan Asal yang Sama
Kebijakan Same Origin melarang JavaKode skrip dari mengakses elemen dari domain yang berbeda dari tempat peluncurannya. Contoh kode HTML di www.google.com menggunakan a JavaProgram skrip “randomScript.js”. Kebijakan asal yang sama hanya akan mengizinkan randomScript.js untuk mengakses halaman dalam google.com seperti google.com/mail, google.com/login, atau google.com/signup. Namun, program ini tidak dapat mengakses halaman dari situs yang berbeda seperti yahoo.com/search atau guru99.com karena halaman tersebut termasuk dalam domain yang berbeda.
Inilah alasannya sebelumnya Selenium RC, penguji perlu menginstal salinan lokal keduanya Selenium Inti (a JavaProgram skrip) dan server web yang berisi aplikasi web yang diuji sehingga keduanya akan berada dalam domain yang sama
Kelahiran Selenium Kontrol Jarak Jauh (Selenium RC)
Sayangnya; penguji menggunakan Selenium Core harus menginstal seluruh aplikasi yang diuji dan server web di komputer lokal mereka sendiri karena pembatasan yang diberlakukan oleh kebijakan asal yang sama. Jadi insinyur ThoughtWork lainnya, Paul Hammant, memutuskan untuk membuat server yang akan bertindak sebagai proxy HTTP untuk "menipu" browser agar mempercayai hal itu Selenium Inti dan aplikasi web yang diuji berasal dari domain yang sama. Sistem ini kemudian dikenal sebagai Selenium remote Control or Selenium 1.
Kelahiran Selenium kisi
Selenium Grid dikembangkan oleh Patrick Lightbody untuk mengatasi kebutuhan meminimalkan waktu pelaksanaan pengujian sebanyak mungkin. Dia awalnya menyebut sistem itu “QA yang dihosting.” Itu mampu menangkap tangkapan layar browser selama tahapan penting, dan juga mengirim keluar Selenium perintah ke berbagai mesin secara bersamaan.
Kelahiran Selenium IDE
Shinya Kasatani Jepang diciptakan Selenium IDE, Sebuah Firefox dan ekstensi Chrome yang dapat mengotomatiskan browser melalui fitur rekam dan putar. Dia mengemukakan ide ini untuk lebih meningkatkan kecepatan dalam membuat kasus uji. Dia menyumbang Selenium IDE ke Selenium Proyek di 2006.
Kelahiran WebDriver
Simon Stewart membuat WebDriver sekitar 2006 ketika browser dan aplikasi web menjadi lebih kuat dan lebih membatasi JavaProgram skrip seperti Selenium Inti. Ini adalah kerangka pengujian lintas platform pertama yang dapat mengontrol browser dari tingkat OS.
Kelahiran Selenium 2
In 2008, Seluruh Selenium Tim memutuskan untuk menggabungkan WebDriver dan Selenium RC untuk membentuk alat yang lebih kuat disebut Selenium 2, dengan WebDriver menjadi intinya. Saat ini, Selenium RC masih dikembangkan tetapi hanya dalam mode pemeliharaan. Sebagian besar Selenium Upaya proyek kini terfokus pada Selenium 2.
Jadi, Mengapa Namanya Selenium?
Nama Selenium berasal dari lelucon yang Jason pernah lontarkan kepada timnya. Selama Seleniumperkembangannya, yang lain pengujian otomatis kerangka kerja yang populer dibuat oleh perusahaan bernama Mercury Interaktif (ya, perusahaan yang awalnya membuat QTP sebelum diakuisisi oleh HP). Sejak Selenium adalah obat penawar yang terkenal Mercury keracunan, Jason menyarankan nama itu dan rekan satu timnya mengambilnya. Jadi begitulah kami menyebut kerangka ini hingga saat ini.
Apa itu Selenium IDE?
Selenium Lingkungan Pengembangan Terpadu (IDE) adalah kerangka paling sederhana dalam Selenium suite dan yang paling mudah untuk dipelajari. Ini adalah Chrome dan Firefox Plugin yang dapat Anda instal semudah mungkin dengan plugin lain. Namun karena kesederhanaannya, Selenium IDE sebaiknya hanya digunakan sebagai a alat prototipe. Jika Anda ingin membuat kasus pengujian lebih lanjut, Anda perlu menggunakan salah satunya Selenium RC atau WebDriver.
Apa itu Selenium Kontrol Jarak Jauh (Selenium RC)?
Selenium RC adalah kerangka pengujian andalan dari keseluruhan Selenium proyek dalam waktu yang lama. Ini adalah yang otomatis pertama pengujian web alat itu memungkinkan pengguna untuk menggunakan bahasa pemrograman yang mereka sukaiSejak versi 2.25.0, RC dapat mendukung bahasa pemrograman berikut:
Apa itu WebDriver?
WebDriver terbukti lebih baik daripada Selenium IDE dan Selenium RC dalam banyak aspek. Ini menerapkan pendekatan yang lebih modern dan stabil dalam mengotomatiskan tindakan browser. WebDriver, tidak seperti Selenium RC, tidak bergantung pada JavaSkrip untuk Selenium Pengujian Otomasi. Ia mengontrol browser dengan berkomunikasi langsung dengannya.
Bahasa yang didukung sama dengan bahasa yang ada di dalamnya Selenium RC.
- Java
- C#
- PHP
- Python
- Perl
- Rubi
Apa itu Selenium jaringan?
Selenium Grid adalah sebuah alat digunakan bersama dengan Selenium RC untuk dijalankan tes paralel di mesin yang berbeda dan browser yang berbeda secara bersamaan. Eksekusi paralel berarti menjalankan beberapa pengujian sekaligus.
Fitur:
- memungkinkan menjalankan pengujian secara bersamaan in beberapa browser dan lingkungan.
- Menghemat waktu sangat.
- Memanfaatkan hub-dan-node konsep. Hub bertindak sebagai sumber utama Selenium perintah ke setiap node yang terhubung dengannya.
Selenium Dukungan Browser dan Lingkungan
Karena perbedaan arsitekturnya, Selenium SDI, Selenium RC dan WebDriver mendukung berbagai perangkat browser dan lingkungan operasi.
Selenium IDE | webdriver | |
---|---|---|
Dukungan Browser | Mozilla Firefox dan Chrome |
Google Chrome 12 + Firefox Internet Explorer 7+ dan Edge safari, HtmlUnit dan PhantomUnit |
OperaSistem ting | Windows, Mac OS X, Linux | Semua sistem operasi tempat browser di atas dapat berjalan. |
Catatan: Opera Pengemudi tidak lagi berfungsi
Cara Memilih yang Tepat Selenium Alat untuk Kebutuhan Anda
Alat Bantu | Mengapa Memilih? |
---|---|
Selenium IDE |
|
Selenium RC |
|
webdriver |
|
Selenium kisi |
|
Perbandingan antara Selenium dan QTP (sekarang UFT)
Tes Cepat Profesional (QTP) adalah alat pengujian otomatis berpemilik yang sebelumnya dimiliki oleh perusahaan Mercury Interaktif sebelum Hewlett-Packard mengakuisisinya di 2006Pemiliknya selanjutnya adalah MicroFocus dan alat tersebut berganti nama menjadi UFT. Selenium Tool Suite memiliki banyak keunggulan dibandingkan QTP seperti yang dirinci di bawah ini –
Kelebihan dan Manfaat Selenium melalui QTP
Selenium | QTP |
---|---|
Open source, bebas untuk digunakan, dan gratis. | Komersial. |
Sangat extensible | Add-on terbatas |
Dapat menjalankan pengujian secara menyeluruh browser yang berbeda | Hanya dapat menjalankan tes di Firefox, Internet Explorer dan Chrome |
Mendukung berbagai sistem operasi | Hanya dapat digunakan di Windows |
Mendukung telepon genggam | QTP Mendukung otomatisasi pengujian aplikasi seluler (iOS & Android) menggunakan solusi HP yang disebut – HP Mobile Center |
Dapat menjalankan tes sementara itu browser diminimalkan | Aplikasi perlu diuji agar terlihat di desktop |
Dapat menjalankan tes sejajar. | Hanya dapat mengeksekusi secara paralel tetapi menggunakan Quality Center yang lagi-lagi merupakan produk berbayar. |
Keuntungan QTP dibandingkan Selenium
QTP | Selenium |
---|---|
Dapat menguji baik aplikasi web maupun desktop | Hanya dapat menguji aplikasi web |
Dilengkapi dengan a repositori objek bawaan | Tidak memiliki repositori objek bawaan |
Mengotomatiskan lebih cepat dari Selenium karena ini adalah IDE berfitur lengkap. | Mengotomatiskan pada tingkat yang lebih lambat karena tidak memiliki IDE asli, dan hanya IDE pihak ketiga yang dapat digunakan untuk pengembangan. |
Pengujian berdasarkan data lebih mudah dilakukan karena ia memiliki tabel data global dan lokal bawaan. | Pengujian berbasis data lebih rumit karena Anda harus mengandalkan kemampuan bahasa pemrograman untuk menetapkan nilai untuk data pengujian Anda |
Dapat mengakses kontrol dalam browser(seperti bilah Favorit, bilah Alamat, tombol Mundur dan Maju, dll.) | Tidak dapat mengakses elemen di luar aplikasi web yang diuji |
Menyediakan profesional dukungan pelanggan | Tidak ada dukungan pengguna resmi yang ditawarkan. |
Memiliki kemampuan asli untuk ekspor data uji ke dalam format eksternal | Tidak memiliki kemampuan asli untuk mengekspor data runtime ke format eksternal |
Dukungan Parameterisasi dibangun | Parameterisasi dapat dilakukan melalui pemrograman tetapi sulit untuk diterapkan. |
Laporan Pengujian dihasilkan secara otomatis | Tidak ada dukungan asli untuk menghasilkan laporan pengujian/bug. |
Meskipun jelas, QTP memiliki kemampuan yang lebih maju, Selenium melebihi QTP dalam tiga bidang utama:
- Biaya(karena Selenium sepenuhnya gratis)
- keluwesan(karena sejumlah bahasa pemrograman, browser, dan platform yang dapat didukungnya)
- Pengujian paralel(sesuatu yang mampu dilakukan QTP tetapi hanya dengan penggunaan Pusat Kualitas)
Ringkasan
- Seluruhnya Selenium Rangkaian Pengujian Perangkat Lunak terdiri dari empat komponen:
- Selenium Ide Firefox dan add-on chrome yang hanya dapat Anda gunakan dalam membuat kasus pengujian dan rangkaian pengujian yang relatif sederhana.
- Selenium Kendali Jarak Jauh, juga dikenal sebagai Selenium 1, adalah yang pertama Selenium alat yang memungkinkan pengguna menggunakan bahasa pemrograman dalam membuat pengujian yang rumit.
- WebDriver, adalah terobosan baru yang memungkinkan skrip pengujian Anda berkomunikasi langsung ke browser, sehingga mengontrolnya dari tingkat OS.
- Selenium Grid juga merupakan alat yang digunakan Selenium RC akan menjalankan pengujian paralel di berbagai browser dan sistem operasi.
- Selenium RC dan WebDriver digabung menjadi bentuk Selenium 2.
- Selenium lebih menguntungkan daripada Microfocus UFT One dalam hal biaya dan fleksibilitas.