Имя HTML-атрибута Selenium, помогающее идентифицировать контент - PullRequest
3 голосов
/ 20 июля 2011

Мне нужно с помощью Selenium (или аналогичной структуры) проверить, что определенные элементы / элементы HTML находятся на странице с использованием известных уникальных идентификаторов.

Я имею контроль над генерацией HTML, поэтому я отмечуHTML-теги с атрибутом, но иногда я не могу использовать обычные кандидаты id, name и т. Д.

Существует ли отраслевой стандарт для такого атрибута?
Если нет, у кого-нибудь есть хорошие предложения?

Атрибут не должен вступать в противоречие с какими-либо известными атрибутами каких-либо элементов HTML или влиять на работу / поведение в Интернете (я нене волнует, если кто-то читает исходный код HTML и видит его).

Вот некоторые мои идеи:

  • trace
  • debug
  • uid

Вот как я хотел бы использовать его для примера идентификатора "123456789":

<a trace="123456789" href="http://www.someurl.com">Click me!</a>
<span debug="123456789">Hello world</span>
<strong uid="123456789">Wow</strong>

1 Ответ

3 голосов
/ 20 июля 2011

Используйте атрибут HTML5 data-*.

Атрибуты пользовательских данных предназначены для хранения пользовательских данных, приватных для страницы или приложения, для которых больше нет подходящих атрибутов или элементов.

Более подробная информация здесь: http://developers.whatwg.org/elements.html#embedding-custom-non-visible-data-with-the-data-*-attributes

Они не вызовут никаких проблем в старых браузерах: http://caniuse.com/dataset

...