Comments 14
Пробовал как то selenium использовать для тестов этого приложения на базе extjs. Работать не будет. Причина в том что selenium все события подвешивает на id элементов, а extjs их генерирует автоматически (каждый новый запуск новые id). Т.е. записи ваших тестов становятся невалидными.
Уже работает. Я уже все протестировал в FF.
Проблема с новыми id частично решается следующими методами:
1. Указание name в элементах формы и доступ к ним по этому самому name
2. Нахождение элементов по тексту
3. Указание элементам их id
4. Проявить немного терпения и находчивости
Частично потому, что в сети на IE нарекают за тормоза при использовании xpath — якобы из-за xpath локаторов тесты и тормозят в IE.
Проблема с новыми id частично решается следующими методами:
1. Указание name в элементах формы и доступ к ним по этому самому name
2. Нахождение элементов по тексту
3. Указание элементам их id
4. Проявить немного терпения и находчивости
Частично потому, что в сети на IE нарекают за тормоза при использовании xpath — якобы из-за xpath локаторов тесты и тормозят в IE.
Selenium навешивает события на что угодно, на что укажите. ID — это по-умолчанию. Есть идентификация по тексту ссылки, XPath, CSS, DOM, by name и так далее.
Чем именно запускаете в других браузерах, через Selenium RC?
еще года 2 назад замечательно тестировал через Selenium на IE, правда тесты писались под Java
Ууу… 2 года назад, по-моему, даже Selenium IDE небыло.
2 года назад и я писал и запускал в IE. Скорость была не лучше, но тогда меня это устраивало. Сейчас большая часть приложения написана на javascript и тестировать нужно большой функционал.
К тому же сейчас ситуация могла измениться. Сейчас новые версии браузеров, новые ОС.
А Selenium RC все еще в версии 1.0
2 года назад и я писал и запускал в IE. Скорость была не лучше, но тогда меня это устраивало. Сейчас большая часть приложения написана на javascript и тестировать нужно большой функционал.
К тому же сейчас ситуация могла измениться. Сейчас новые версии браузеров, новые ОС.
А Selenium RC все еще в версии 1.0
В своё время потратил _тучу_ времени на попытку прохождения одних и тех же тестов под FF и IE. Расскажу как это было.
Есть Selenium IDE, самописные тесты, FireFox — всё работает. Не идеально но работает. Замечены странные глюки вроде зависания Selenium IDE на какой-то из команд (не waitFor, а например open). Selenium просто останавливается и ничего не происходит, интерфейс откликается, но перезапустить тест не удаётся. Такая проблема проявляется периодически до сих пор (уже сменил несколько версий FF и Selenium), лечится перезапуском Selenium IDE. Примерно 1 из 30 запусков тестов неудачен по причине зависания. Но в целом всё отлично, FF + Selenium IDE рулят и бибикают.
Начал пробовать Selenium Core в связке с IE7, потом уже IE8. Итог — куча геморроя с усложнением тестов, чтобы они вообще хоть как-то работали под IE. Медленное прохождение тестов связанно с отсутствием нативной поддержки XPath в IE (запускается JS эмулятор работающий с DOM), в FF есть родной XPath и поэтому он работает быстрее.
Усложнял тесты, переписывал XPath запросы чтобы оба браузера их понимали, часть команд из Selenium заменял своими (чтобы работали).
И всё бы ничего, если бы не надо было работать с фреймами. Нормально работать Selenium Core с фреймами в IE я не смог заставить, вылезали разные глюки. Даже вспоминать сейчас противно.
В итоге решил что _оно того не стоит_ по временным затратам, плюнул на IE и теперь ежедневно тестирую свою cms только под FF. Знаю что это не очень хорошо, но я взял за правило делать каждую вторую пятницу днём IE. Так и записано в задачнике на пятницу — «ДЕНЬ IE :0)». В этот день я совсем не запускаю FireFox, а работаю только под IE, так получается находить и исправлять мелкие ошибки в логике и отображении которые накапливаются за две недели активных коммитов :)
Есть Selenium IDE, самописные тесты, FireFox — всё работает. Не идеально но работает. Замечены странные глюки вроде зависания Selenium IDE на какой-то из команд (не waitFor, а например open). Selenium просто останавливается и ничего не происходит, интерфейс откликается, но перезапустить тест не удаётся. Такая проблема проявляется периодически до сих пор (уже сменил несколько версий FF и Selenium), лечится перезапуском Selenium IDE. Примерно 1 из 30 запусков тестов неудачен по причине зависания. Но в целом всё отлично, FF + Selenium IDE рулят и бибикают.
Начал пробовать Selenium Core в связке с IE7, потом уже IE8. Итог — куча геморроя с усложнением тестов, чтобы они вообще хоть как-то работали под IE. Медленное прохождение тестов связанно с отсутствием нативной поддержки XPath в IE (запускается JS эмулятор работающий с DOM), в FF есть родной XPath и поэтому он работает быстрее.
Усложнял тесты, переписывал XPath запросы чтобы оба браузера их понимали, часть команд из Selenium заменял своими (чтобы работали).
И всё бы ничего, если бы не надо было работать с фреймами. Нормально работать Selenium Core с фреймами в IE я не смог заставить, вылезали разные глюки. Даже вспоминать сейчас противно.
В итоге решил что _оно того не стоит_ по временным затратам, плюнул на IE и теперь ежедневно тестирую свою cms только под FF. Знаю что это не очень хорошо, но я взял за правило делать каждую вторую пятницу днём IE. Так и записано в задачнике на пятницу — «ДЕНЬ IE :0)». В этот день я совсем не запускаю FireFox, а работаю только под IE, так получается находить и исправлять мелкие ошибки в логике и отображении которые накапливаются за две недели активных коммитов :)
О чём вы говорите? В IE есть XPath, это первый браузер, где появился XSLT.
О том, что IE тормозит при использовании селекторов XPath пишут везде, где поднимается тема «Селениум тормозит в ИЕ».
Даже разработчики сами советуют использовать CSS селекторы вместо XPath
Даже разработчики сами советуют использовать CSS селекторы вместо XPath
Попробуйте написать некую независимую от тестов прослойку, и в качестве фремворка для IE использовать WatiN ( .Net)
Sign up to leave a comment.
Сross-browser Selenium tests — миф или реальность?