Я хочу автоматизировать тестовые примеры для разработки веб-страниц с помощью Robot Framework. У меня есть около 5000 строк тестовых примеров, которые описывают пути к различным элементам страницы. Теперь я собираюсь пройтись по определенному «id» или «css selector» на веб-странице для автоматизации. Мой вариант по умолчанию - вручную проверять каждую кнопку, ссылку, таблицу и т. д. И вводить их в огромную электронную таблицу для автоматизации, но я чувствую, что должен быть менее сложный метод извлечения элементов.
Я рассмотрел различные варианты, и самое близкое к решению, которое я могу найти, - это веб-сканирование на python, но, насколько я понимаю, для веб-сканирования требуется, чтобы элементы уже были определены, и ваша цель - извлечь Информация, а не фактический элементы.
Есть ли у кого-нибудь решение, которое может быть немного менее утомительным, чем проверка 5000 элементов веб-страницы? ;)
Спасибо за ответ. На данный момент у меня фактически нет исходного кода. Я вручную перехожу на создаваемую веб-страницу, проверяю различные взаимодействующие элементы (например, кнопки, ссылки, переключатели сортировки таблиц) страницы, а затем копирую и вставляю каждый из этих элементов в электронную таблицу рядом с путем к воссоздайте действие.
У вас действительно есть 5000 уникальных веб-элементов, которые нельзя вычислить динамически? Например, если у вас есть таблица из 50 строк на 10 столбцов, вам действительно нужен только один идентификатор для таблицы, и это позволит вам перебирать строки и столбцы. Это очень похоже на проблему ху, когда вы думаете, что проблема в том, как захватить 5000 элементов, но настоящая проблема в другом.
Если вы можете поместить свою страницу в IFRAME, вы, вероятно, могли бы использовать JS (в родительском элементе), чтобы дождаться загрузки страницы, а затем получить (все или определенные) элементы в IFRAME. Таким образом вы сможете получить все элементы полностью отрисованной страницы.
(никогда этого не делал, но должно работать)
Вы должны добавить немного исходного кода, чтобы объяснить проблему.