Cara Menyiapkan Selenium dengan Chromedriver di Ubuntu 22.04, 20.04 & 18.04
- 1744
- 32
- Clarence Tromp
Tutorial ini akan membantu anda menyediakan Selenium dengan Chromedriver di Ubuntu, dan LinuxMint Systems. Tutorial ini juga merangkumi contoh program Java yang menggunakan pelayan dan kromedriver selenium dan menjalankan kes ujian sampel.
Baca ini: Persediaan Selenium dengan Firefox di Ubuntu
Langkah 1 - Prasyarat
Laksanakan arahan berikut untuk memasang pakej yang diperlukan pada sistem anda. Di sini xvfb (x virtual framebuffer) adalah pelayan paparan dalam memori untuk sistem operasi seperti unix (e.g., Linux). Ia melaksanakan protokol pelayan paparan x11 tanpa paparan. Ini berguna untuk aplikasi CLI seperti perkhidmatan CI.
Kemas kini sudo apt
sudo apt install -y unzip xvfb libxi6 libgconf-2-4
Juga, pasang java pada sistem anda. Mari pasang Oracle Java 8 pada sistem anda atau gunakan arahan di bawah untuk memasang OpenJDK.
sudo apt memasang lalai-jdk
Langkah 2 - Pasang Google Chrome
Sekarang pasang pakej Google Chrome terkini pada sistem anda menggunakan arahan senarai di bawah. Ciri Headless Google Chrome Membuka Pintu Multipu untuk Automasi.
sudo curl -ss -o -https: // dl -ssl.Google.com/linux/linux_signing_key.pub | Apt-Key ADD
sudo bash -c "echo 'deb [arch = amd64] http: // dl.Google.com/linux/chrome/deb/stabil utama '>>/etc/apt/sumber.senarai.D/Google-Chrome.Senarai "
Sudo Apt -Kemas kini
sudo apt -y memasang google-chrome stabil
Langkah 3 - Memasang Chromedriver
Anda juga dikehendaki menyediakan kromedriver pada sistem anda. Chromedriver adalah pelayan mandiri yang melaksanakan protokol wayar WebDriver untuk Chromium. WebDriver adalah alat sumber terbuka untuk ujian automatik aplikasi web merentasi pelbagai pelayar.
Ketahui versi Google Chrome yang dipasang pada sistem anda.
Google-Chrome --version
Output Google Chrome 94.0.4606.71
Seterusnya, lawati halaman muat turun Chromedriver dan muat turun versi yang sepadan Chromedriver
pada sistem anda.
Dalam kes saya, Google Chrome 94 sedang berjalan di sistem saya. Jadi muat turun fail berikut. Anda mesti pastikan untuk memuat turun versi fail yang betul:
wget https: // chromedriver.penyimpanan.Googleapis.com/94.0.4606.61/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
Anda boleh menemui Chromedriver terkini di halaman muat turun rasminya. Sekarang laksanakan arahan di bawah untuk mengkonfigurasi kromedriver pada sistem anda.
sudo mv chromedriver/usr/bin/chromedriver
Sudo Chown Root: Root/usr/bin/Chromedriver
sudo chmod +x/usr/bin/chromedriver
Langkah 4 - Muat turun fail balang yang diperlukan
Pelayan Selenium dikehendaki menjalankan Webdrivers Selenium Jauh. Anda perlu memuat turun fail balen standalone pelayan selenium menggunakan arahan di bawah atau lawati di sini untuk mencari versi fail jar terkini.
wget https: // selenium-release.penyimpanan.Googleapis.com/3.141/selenium-server-state-3.141.59.balang
MV Selenium-server-state-3.141.59.Jar selenium-server-state.balang
Juga, muat turun testng-6.8.7.balang fail ke sistem anda.
wget http: // www.Java2s.com/code/jardownload/testng/testng-6.8.7.balang.zip
unzip testng-6.8.7.balang.zip
Langkah 5 - Mulakan Chrome melalui Server Selenium
Persediaan pelayan anda sudah siap. Mulakan Chrome melalui pelayan selenium mandiri menggunakan utiliti XVFB.
Jalankan Chrome melalui Server Selenium
Java -dwebDriver Java -Dwebdriver.Chrome.pemandu =/usr/bin/chromedriver -jar selenium-server-stateLone.balang
Gunakan -debug
pilihan pada akhir arahan untuk memulakan pelayan dalam mod debug.
Anda juga boleh Mula Chromedriver tanpa kepala dengan menaip arahan di bawah di terminal.
Chromedriver --url-base =/wd/hub
Pelayan Selenium anda kini berjalan dengan Chrome. Gunakan pelayan ini untuk menjalankan kes ujian anda yang ditulis dalam selenium menggunakan penyemak imbas web Google Chrome. Langkah seterusnya adalah langkah pilihan dan tidak bergantung pada langkah 5.
Langkah 6 - Contoh Program Java (Pilihan)
Ini adalah langkah pilihan. Ia menggambarkan menjalankan satu kes ujian menggunakan pelayan dan kromedriver selenium standalone. Mari buat program Java menggunakan pelayan selenium dan pemacu krom. Program Java ini akan membuka URL laman web yang ditentukan dan periksa sama ada rentetan yang ditetapkan hadir di laman web atau tidak.
Buat program Java dengan mengedit fail dalam editor teks.
Vim Tecadminseleniumtest.Java
Tambahkan kandungan di bawah ke fail.
Import Java.io.IoException; mengimport org.Openqa.selenium.Webdriver; mengimport org.Openqa.selenium.Chrome.ChromeOptions; mengimport org.Openqa.selenium.Chrome.Chromedriver; mengimport org.testng.Anotasi.Ujian; kelas awam tecadminseleniumtest public static void main (string [] args) melemparkan ioException, tergangguException System.setProperty ("WebDriver.Chrome.pemandu ","/usr/bin/chromedriver "); ChromeOptions ChromeOptions = ChromeOptions baru (); ChromeOptions.addArguments ("-tanpa kepala"); ChromeOptions.addArguments ("-no-sandbox"); Pemandu WebDriver = Chromedriver baru (ChromeOptions); pemandu.Dapatkan ("https: // google.com "); utas.tidur (1000); jika (pemandu.getPageSource ().mengandungi ("saya berasa bertuah")) sistem.keluar.println ("lulus"); else System.keluar.println ("gagal"); pemandu.berhenti ();12345678910111213141516171819202122223242526272829 | Import Java.io.IoException; mengimport org.Openqa.selenium.Webdriver; Import Org.Openqa.selenium.Chrome.Chromeoptions; import org.Openqa.selenium.Chrome.Kromedriver; org import.testng.Anotasi.Ujian; kelas awam tecadminseleniumtest public static void main (string [] args) melemparkan ioException, tergangguException System.setProperty ("WebDriver.Chrome.pemandu ","/usr/bin/chromedriver "); ChromeOptions ChromeOptions = ChromeOptions baru (); ChromeOptions.addArguments ("-tanpa kepala"); ChromeOptions.addArguments ("-no-sandbox"); Pemandu WebDriver = Chromedriver baru (ChromeOptions); pemandu.Dapatkan ("https: // google.com "); utas.tidur (1000); jika (pemandu.getPageSource ().mengandungi ("saya berasa bertuah")) sistem.keluar.println ("lulus"); else System.keluar.println ("gagal"); pemandu.berhenti (); |
Anda boleh menukar url "https: // google.com "dengan mana -mana URL lain pilihan anda, kemudian juga menukar rentetan carian seperti" Saya Rasa Bertuah "digunakan dalam program Java di atas. Simpan program Java anda dan laksanakannya. Pertama, anda perlu menetapkan pembolehubah persekitaran kelas Java termasuk Selenium-server-StateLone.balang dan testng-6.8.7.balang. Kemudian menyusun program Java dan menjalankannya.
Eksport ClassPath = ".: Selenium-server-state.JAR: Testng-6.8.7.balang "
Javac Tecadminseleniumtest.Java
Java Tecadminseleniumtest
Anda akan melihat hasilnya di bawah. Sekiranya rentetan carian yang ditetapkan dijumpai, anda akan mendapat mesej "lulus" dan jika rentetan tidak dijumpai di laman web, anda akan mendapat mesej "gagal" di skrin.