Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan Selenium untuk ujian web automatik

Cara menggunakan Selenium untuk ujian web automatik

PHPz
PHPzasal
2023-08-02 19:43:511341semak imbas

Cara menggunakan Selenium untuk Ujian Automasi Web

Ikhtisar:
Pengujian automasi web ialah bahagian penting dalam proses pembangunan perisian moden. Selenium ialah alat ujian automatik yang berkuasa yang boleh mensimulasikan operasi pengguna dalam pelayar web dan melaksanakan proses ujian automatik. Artikel ini akan memperkenalkan cara menggunakan Selenium untuk ujian automasi web dan disertakan dengan contoh kod untuk membantu pembaca bermula dengan cepat.

  1. Persediaan alam sekitar
    Sebelum bermula, anda perlu memasang perpustakaan Selenium dan pemacu pelayar web. Selenium boleh dipasang melalui baris arahan:
pip install selenium

Selain itu, anda juga perlu memuat turun pemacu penyemak imbas yang sepadan. Alamat muat turun pemacu untuk penyemak imbas berbeza adalah seperti berikut:

  • Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads
  • Firefox: https://github.com/mozilla/geckodriver / releases
  • Edge: https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
  • Safari: https://webkit.org/blog/6900/webdriver-support-in- safari -10/

Pilih pemacu penyemak imbas yang sesuai dengan anda, muat turun dan simpannya secara setempat.

  1. Buat skrip ujian
    Langkah pertama dalam ujian automasi web dengan Selenium ialah mencipta skrip ujian. Pertama, kita perlu mengimport perpustakaan selenium dan menetapkan laluan pemacu penyemak imbas:
from selenium import webdriver

# 设置浏览器驱动程序路径
driver_path = "路径/到/浏览器驱动程序"

# 创建一个WebDriver实例
driver = webdriver.Chrome(executable_path=driver_path)

Seterusnya, kita boleh mengakses halaman web dan melakukan operasi melalui contoh WebDriver. Sebagai contoh, dapatkan tajuk halaman:

# 打开网页
driver.get("http://www.example.com")

# 获取页面标题
title = driver.title
print(title)
  1. Elemen lokasi
    Semasa ujian, kita perlu berinteraksi dengan elemen pada halaman web, seperti mengklik butang, memasukkan teks, dsb. Oleh itu, mengesan elemen dengan tepat adalah bahagian penting dalam ujian automasi web. Selenium menyediakan pelbagai kaedah untuk mencari elemen, termasuk ID, nama kelas, nama teg, teks pautan, pemilih CSS, XPath, dsb. Berikut ialah beberapa contoh:
# 使用ID定位元素
element = driver.find_element_by_id("element_id")

# 使用类名定位元素
element = driver.find_element_by_class_name("element_class")

# 使用CSS选择器定位元素
element = driver.find_element_by_css_selector("css_selector")

# 使用XPath定位元素
element = driver.find_element_by_xpath("xpath")
  1. Lakukan operasi
    Setelah kami mengesan elemen yang perlu dikendalikan, kami boleh melakukan operasi yang sepadan. Contohnya, klik butang, masukkan teks, dsb.:
# 点击按钮
button = driver.find_element_by_id("button_id")
button.click()

# 输入文本
input_box = driver.find_element_by_id("input_box_id")
input_box.send_keys("文本内容")
  1. Penegasan dan pengesahan
    Selepas lulus operasi dan input, biasanya kita perlu mengesahkan keputusan pada halaman. Selenium menyediakan pelbagai kaedah penegasan dan pengesahan, seperti menentukan sama ada unsur wujud, menentukan sama ada teks unsur sepadan, dsb. Berikut ialah beberapa contoh:
# 判断元素是否存在
element_exists = driver.find_element_by_id("element_id").is_displayed()

# 判断元素文本是否匹配
element_text = driver.find_element_by_id("element_id").text
assert element_text == "期望的文本"
  1. Tutup penyemak imbas
    Selepas pelaksanaan ujian selesai, sebaiknya tutup penyemak imbas untuk mengosongkan sumber. Contohnya:
# 关闭浏览器
driver.quit()

Ringkasan:
Artikel ini menerangkan cara menggunakan Selenium untuk ujian web automatik, lengkap dengan contoh kod. Dengan mempelajari kaedah dan teknik asas ini, pembaca boleh menggunakan Selenium untuk menjalankan ujian automatik dalam projek sebenar. Saya harap artikel ini dapat membantu semua orang.

Atas ialah kandungan terperinci Cara menggunakan Selenium untuk ujian web automatik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn