selenium find element text tutorial with examples
Поглиблений погляд на елемент пошуку селену за текстом на прикладі:
чому мій шлюз за замовчуванням продовжує працювати в автономному режимі
Що ви дізнаєтесь:
Елемент пошуку селену, що містить конкретний текст
Елемент Selenium Find за текстом використовується для пошуку веб-елемента за його текстовим значенням. Текстове значення, як правило, використовується, коли основні властивості ідентифікації елемента, такі як ID або клас, не працюють.
Іноді розробники схильні групувати схожі веб-елементи з однаковим ідентифікатором або одним класом разом. У такому випадку пошук веб-елемента за допомогою тексту допомагає тестуванню автоматизації.
Значення тексту може бути повністю узгоджене або частково узгоджене, щоб знайти елемент. Наприкінці цього уроку ви отримаєте чіткі знання про елемент пошуку Selenium.
Нижче наведеноПрикладвикористання текстового методу для пошуку певного веб-елемента.
- Відкрийте веб-сайт - SoftwareTestingHelp.com
- Знайдіть гіперпосилання - Тестування вручну за допомогою властивості text.
Вищезазначене завдання можна виконати за допомогою методу вбудованого тексту, як зазначено нижче:
WebElement textDemo = driver.findElement (By.xpath (“// *”));
Текст () Метод селену
- Метод Text () - це вбудований метод веб-драйвера селену, який можна використовувати для пошуку елемента на основі тексту веб-елемента.
- Нижче наведено приклад, який демонструє використання текстового методу в Selenium.
Сценарій тесту
- Відкрийте браузер Firefox із URL-адресою: SoftwareTestingHelp.com
- За допомогою текстового методу веб-драйвера селену знайдіть веб-елемент із текстом - Пишіть та заробляйте.
- Перевірте, чи вибраний елемент відображається на веб-сторінці.
- Якщо він відображається, надрукуйте текст як елемент, знайдений за допомогою тексту.
- Якщо елемент не відображається, надрукуйте текст як Елемент не знайдено.
Вихідний код:
package Demo; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class FindElementDemo { public static void main(String() args) throws InterruptedException { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver', 'D:\Data_Personal\Demo\geckodriver-v0.23.0-win64\geckodriver.exe'); WebDriver driver = new FirefoxDriver(); driver.get('https://www.softwaretestinghelp.com/'); WebElement textDemo = driver.findElement(By.xpath('//*(text()='Write and Earn')')); if(textDemo.isDisplayed()) { System.out.println('Element found using text'); } else System.out.println('Element not found'); driver.quit(); } }
Вихід консолі:
Пояснення коду:
- Спочатку ми створюємо екземпляр браузера Firefox за допомогою водій гекона .
- За допомогою методу driver.get () ми переходимо до URL-адреси: SoftwareTestingHelp
- Потім ми намагаємось знайти елемент із текстом - Написати та заробити (Гіперпосилання).
- Якщо відображається веб-елемент, ми додаємо заяву на друк із виразним елементом, знайденим за допомогою зазначеного тексту.
- Якщо ні, ми друкуємо елемент не знайшов повідомлення.
- Нарешті, ми закриваємо сеанс браузера за допомогою методу driver.quit ().
Пропоноване читання => Безкоштовні навчальні посібники з селену
Містить метод селену
- Метод Contains використовується для пошуку веб-елементів з частковим збігом тексту.
- Наприклад, якщо ми хочемо знайти список веб-елементів, що містять слово «селен», то ми можемо зробити це за допомогою вбудованого методу містить, як зазначено нижче.
List elementsList = driver.findElements(By.xpath(“//*(contains(text(),'Selenium'))'));
Приклад:
Сценарій тесту
- Відкрийте браузер Firefox із URL-адресою: SoftwareTestingHelp.com
- Використовуючи метод contains, знайдіть список веб-елементів, що містять текст - Написати та заробити.
- Роздрукуйте кількість елементів, знайдених у списку.
Вихідний код:
package Demo; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class FindElementDemo { public static void main(String() args) throws InterruptedException { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver', 'D:\Data_Personal\Demo \geckodriver-v0.23.0-win64\geckodriver.exe'); WebDriver driver = new FirefoxDriver(); driver.get('https://www.softwaretestinghelp.com/'); ListtextDemo= driver.findElements(By.xpath('//*(contains(text(),'Write and Earn'))')); System.out.println('Number of web elements: ' +textDemo.size()); driver.quit(); } }
Вихід консолі:
Пояснення коду:
- На першому кроці ми ініціалізуємо екземпляр драйвера gecko, щоб вказати на файл geckodriver.exe.
- Потім ми переходимо до URL-адреси https://www.softwaretestinghelp.com/
- Використовуючи метод contains, ми намагаємось знайти веб-елементи з текстом “Пишіть і заробляйте”.
- За допомогою методу розміру ми підраховуємо кількість елементів із зазначеним текстом і друкуємо його на консолі.
- Нарешті, ми закриваємо сеанс веб-браузера за допомогою методу driver.quit ().
Різниця між методами тексту, тексту посилання та тексту часткового посилання
- Методи тексту, тексту посилання та часткового тексту посилання - це всі вбудовані методи, надані веб-драйвером Selenium.
- Текстовий метод використовується для ідентифікації веб-елемента однозначно за допомогою тексту властивості.
- Текст посилання використовується для унікальної ідентифікації веб-елемента за допомогою тексту посилання властивості з точним збігом.
- Частковий текст посилання використовується для ідентифікації веб-елемента однозначно за допомогою тексту посилання властивості, не обов'язково точної відповідності.
- Текст посилання та Текст часткового посилання чутливі до регістру, що означає, що різниця між великими та малими літерами має значення.
Приклад:
Сценарій тесту:
- Відкрийте веб-сайт SoftwareTestingHelp.com за допомогою веб-браузера Firefox.
- Знайти веб-елемент - Написати та заробити посилання методом тексту посилання.
- Знайти веб-елемент - Написати та заробити посилання методом часткового посилання.
- Знайти веб-елемент - написати та заробити посилання за допомогою текстового методу.
Нижче наведено вихідний код для вищевказаного сценарію тесту.
Вихідний код:
package Demo; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public final class LinkTextDemo { public static void main(String() args) throws InterruptedException { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver', 'D:\Data_Personal\Demo\geckodriver-v0.23.0-win64\geckodriver.exe'); WebDriver driver = new FirefoxDriver(); driver.get('https://www.softwaretestinghelp.com/'); WebElement linkText = driver.findElement(By.linkText('Write and Earn')); if(linkText.isDisplayed()) { System.out.println('Element using link text is found'); } WebElement partialLinkText = driver.findElement(By.partialLinkText('Write')); if(partialLinkText.isDisplayed()) { System.out.println('Element using partial link text is found'); } List textDemo = driver.findElements(By.xpath('//*(contains(text(),'Write and Earn'))')); if(textDemo.isEmpty()) { System.out.println('Element using text is not found'); } else System.out.println('Element using text is found'); driver.quit(); } }
Вивід коду:
найкраще програмне забезпечення для завантаження відео з YouTube
Пояснення коду:
- На першому кроці ми встановлюємо системну властивість, тобто webdriver.gecko.driver, щоб вказувати на локальне розташування файлу geckodriver.exe.
- Потім ми ініціалізуємо екземпляр драйвера firefox і переходимо до URL-адреси - https://www.SoftwareTestingHelp.com
- Спочатку ми намагаємося ідентифікувати веб-елемент - писати та заробляти, використовуючи текст посилання та друкуючи статус ідентифікації елемента на консолі eclipse.
- Спочатку ми намагаємося ідентифікувати веб-елемент - писати та заробляти, використовуючи текст часткового посилання та друкуючи статус ідентифікації елемента на консолі eclipse.
- Спочатку ми намагаємося ідентифікувати веб-елемент - писати та заробляти за допомогою текстового методу та друкувати статус ідентифікації елемента на консолі eclipse.
Висновок
- Знайти елемент за текстом використовується для пошуку веб-елемента за його текстовим значенням. Наперед визначений метод текст () використовується для досягнення того ж.
- Метод Contains використовується для пошуку веб-елементів з частковим збігом тексту.
- Текстовий метод використовується для ідентифікації веб-елемента однозначно за допомогою тексту властивості.
- Текст посилання використовується для унікальної ідентифікації веб-елемента за допомогою тексту посилання властивості з точним збігом.
- Частковий текст посилання використовується для ідентифікації веб-елемента однозначно за допомогою тексту посилання властивості, не обов'язково точної відповідності.
Рекомендована література
- 30+ найкращих підручників із селену: вивчіть селен на реальних прикладах
- Поглиблені підручники Eclipse для початківців
- Підручник з огірка селену: інтеграція огірка Java Selenium WebDriver
- Підручник з селену GeckoDriver: Як використовувати GeckoDriver у проектах селену
- Підручник з Python DateTime із прикладами
- Вступ до Selenium WebDriver - Підручник з селену №8
- Ефективні сценарії сценаріїв та усунення несправностей селену - Підручник селену No27
- Дізнайтеся, як використовувати анотації TestNG у селені (з прикладами)