Mengenal pasti Elemen Web dengan Berbilang Kelas CSS
Anda menghadapi masalah dalam mengenal pasti elemen web dengan berbilang kelas CSS menggunakan @FindBy anotasi. Contoh kod anda menunjukkan penggunaan className = "nilai ujian", yang tidak mengambil kira fakta bahawa nama kelas CSS boleh diasingkan ruang.
Strategi Pemadanan XPath
Pertimbangkan untuk menggunakan XPath untuk mencari elemen yang dikehendaki. XPath membolehkan anda memadankan elemen berdasarkan kriteria tertentu, termasuk nama kelas. Berikut ialah beberapa strategi pemadanan XPath untuk dipertimbangkan:
driver.findElement(By.xpath("//div[@class='value test']"));
Ekspresi XPath ini memastikan padanan yang tepat dan hanya akan cari elemen dengan kedua-dua kelas "nilai" dan "ujian" dalam yang ditentukan pesanan.
driver.findElement(By.xpath("//div[contains(@class, 'value test')]"));
Ungkapan ini sepadan dengan elemen yang mengandungi kedua-dua kelas "nilai" dan "ujian", tanpa mengira pesanan mereka.
driver.findElement(By.xpath("//div[contains(@class, 'value') and contains(@class, 'test')]"));
Ungkapan ini memastikan elemen mempunyai kedua-dua kelas "nilai" dan "ujian", tetapi ia tidak menguatkuasakan perintah tertentu.
Pemilih CSS sebagai Alternatif
Selain XPath, pemilih CSS juga boleh digunakan untuk mencari elemen berdasarkan berbilang nama kelas. Pertimbangkan ungkapan pemilih CSS berikut:
driver.findElement(By.cssSelector("div[class='value test']"));
driver.findElement(By.cssSelector("div[class*='value test']"));
driver.findElement(By.cssSelector("div.value.test"));
Kesimpulan
Sama ada menggunakan pemilih XPath atau CSS, anda dinasihatkan untuk mempertimbangkan padanan kriteria dengan teliti untuk memastikan pengenalan unsur yang tepat. Dalam kes di mana elemen mempunyai berbilang kelas, menggunakan salah satu teknik yang dinyatakan di atas akan membolehkan anda mencari elemen web yang dimaksudkan dengan berkesan.
Atas ialah kandungan terperinci Bagaimana untuk Mengenalpasti Elemen Web dengan Berbilang Kelas CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!