Средство проверки разметки xHTML интегрировано в Selenium - PullRequest
2 голосов
/ 06 марта 2009

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

Смотри, у нас есть проект

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

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

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

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

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

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

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

Ответы [ 4 ]

1 голос
/ 18 июля 2010

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

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

1 голос
/ 21 марта 2009

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

1 голос
/ 07 марта 2009

Похоже, стоящая идея.

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

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

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

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

0 голосов
/ 13 декабря 2009

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

...