У цьому записі я хочу поділитися з вами Відеуроком від порталу
automated-testing.info, показувати нам все це буде Михайло Поляруш. Взагалі як правильно писати css і xpath локатори я вже писав в статті xpath і css
Про xpath- і css-локатори можна почитати на сторінці:
Коротко кажучи xpath- і css-локатори - це два різних типів локаторів для ідентифікації об'єктів на веб-сторінці.
css-локатори ідентифікують елементи швидше, але xpath-локатори надійніше, тому у всіх Автотест було вирішено використовувати xpath-локатори.
Встановлюємо firebug і FireFinder.
Заходимо на сторінку mamba.ru Натискаємо правою кнопкою миші по посиланню «Вхід» - «Ааналізіровать елемент» Копіюємо посилання і отримуємо наступне:
У Xpath це буде виглядати так // a [contains (@class, 'o-auth')] (тег, клас і назву класу). (Примітка: можна використовувати class, а будь-який параметр для тега. Наприклад, // a [contains (@href, '/? Tip = Login') - знаходження посилання по унікальному вмісту в ній)
Для CCS-локатора це буде виглядати як «a.o-auth». Використовувати слід наступним чином driver.findElement (By.cssSelector ( «a.o-auth»);
Далі в firebug заходимо на вкладку Firefinder в поле вставляємо наш xpath: // a [contains (@class, 'o-auth')] натискаємо «Filter» і отримуємо наступне посилання:
Звідси висновок, що наш xpath вірний.
У висновку треба сказати про приватні локаторах: id та name. Вони є унікальними для елемента, тому пошук по ним відбувається значно швидше. На жаль, вони є далеко не завжди.
Формат команди driver.findElement (By.id ( «id»)); і driver.findElement (By.name ( «name»));