Cara Menyiapkan Selenium dengan Chromedriver di Ubuntu 22.04, 20.04 & 18.04

Cara Menyiapkan Selenium dengan Chromedriver di Ubuntu 22.04, 20.04 & 18.04

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 ();
12345678910111213141516171819202122223242526272829Import 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.