Средство проверки разметки xHTML, интегрированное в Selenium

StackOverflow https://stackoverflow.com/questions/618890

Вопрос

Недавно я задумался о том, как я могу улучшить качество проектов, используя непрерывную проверку исходного кода xHTML на компьютере непрерывной интеграции.

Послушайте, у нас есть проект

http://sourceforge.net/projects/jtidy - JTidy JTidy - это Java-порт HTML Tidy, HTML syntax checker и симпатичный принтер.

Он может проверять xHTML через интерфейс командной строки.Или этот инструмент может быть расширен так, как нам нужно, потому что весь исходный код открыт.

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

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

Да, мы можем использовать валидаторы разметки W3C для наших сайтов, но нет никакой возможности проверить исходное состояние источника страницы с помощью этих валидаторов.После создания страницы может произойти множество манипуляций с DOM, которые могут привести к ошибкам разметки / предупреждениям - мы можем найти это немедленно с помощью этой схемы.

Одним из преимуществ использования непрерывной интеграции является то, что вы получаете быструю обратную связь от кода - как он интегрируется с существующей кодовой базой, проверяете, проходят ли модульные и функциональные тесты.Почему бы не получить дополнительную полезную информацию, такую как мгновенный статус проверки разметки xHTML?Чем раньше мы выявим проблему, тем легче ее устранить.

Я пока не нашел ничего на эту тему в Google.И хотите знать, что вы думаете об этой идее?

Это было полезно?

Решение

Кажется стоящей идеей.

Я уже делал две подобные вещи с CI раньше:

  1. Я использовал Ant XMLValidate задача проверки статических файлов xhtml как части процесса сборки

  2. Я использовал httpunit для извлечения страниц, которые затем анализировал как xml

Но идея привязки к Selenium для проверки содержимого по сути во время функционального тестирования является для меня новой.

Другие советы

Я думаю, что эта идея блестящая, но реализовать ее с нуля очень сложно.Но эта идея похожа на эволюцию процесса сборки / проверки качества, поэтому когда-нибудь она будет выпущена как готовый к использованию инструмент с документацией.

Хорошая идея!- на самом деле, мне только что пришла в голову точно такая же идея, и я просто проверял, делал ли кто-нибудь это раньше - ага!Похоже, ты опередил меня в этом :)

Я думал о том, чтобы захватывать и автоматически отправлять каждую страницу, загруженную selenium, в валидаторы w3c HTML и CSS (по файлу, а не по ссылке, чтобы состояние сохранялось) - сбой при любых ошибках.Хотя мне нравится идея jtidy.

В принципе, здорово, но я не совсем уверен, как это вызвать из Selenium.Я бы с удовольствием посмотрел документацию, объясняющую, как запустить его из Selenese или из PHPUnit.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top