Тестирование на кроссбраузерность, сервисы и утилиты
Smashing Magazine, 3 октября 2007
Кроссбраузерность остается одной из самых сложных проблем в веб-разработке. Следование веб-стандартам само по себе дает достаточно высокий уровень совместимости, но не все браузеры совершенны, старые браузеры часто удивляют разработчиков своим творческим подходом к обработке (X)HTML/CSS кода. Перед разработчиком стоит задача, обеспечения максимальной совместимости сайта с наиболее популярными браузерами, чтобы каждый посетитель мог с удобством его использовать.
Тестирование на кроссбраузерность необходимо
Вы не можете знать, каким браузером пользуется очередной посетитель вашего сайта, а различия в поведении и причудах браузеров все еще велики, чтобы можно было игнорировать их. К примеру, различные браузеры и операционные системы используют различные способы вывода шрифтов (Win vs. Mac on handling fonts). Размеры шрифтов тоже не одинаковы в различных системах, а некоторые шрифты могут просто отсутствовать на компьютере пользователя.

Глобальная статистика использования браузеров: IE6 доминирует; пользователей IE 7 уже больше чем пользователей Firefox 2.
По состоянию на: 01.10.2007. Источник.
Firefox в Linux отображает сайты не так, как Firefox в Windows. К тому же приходиться иметь дело с десятками различных версий браузеров, да еще и с Internet Explorer 6, божьим даром для хакеров, которым пользуются 46% пользователей. Практически невозможно постоянно помнить обо всех возможных проблемах, детальное тестирование в различных браузерах и операционных системах это единственный способ обеспечить нормальное функционирование сайта.
Как протестировать сайт на кроссбраузерность
Кроме того, что вы можете просто установить несколько браузеров, существуют веб-сервисы, которые либо предоставляют удаленный доступ к браузеру через VPN либо позволяют просмотреть скриншоты отображения сайта:
- в различных браузерах (семейство Mozilla, Internet Explorer, Opera, Safari, мобильные браузеры),
- при различных разрешениях экрана (обычно 640×480, 800×600, 1024×768, 1280×800)
- в различных операционных системах (Mac OS, Linux, Win).
Эффект от внесенных в разметку сайта изменений можно увидеть сразу же несмотря на то, что на вашем компьютере нет множества браузеров.
Проблема № 1: Internet Explorer
В Windows предусмотрена возможность установки только одной версии Internet Explorer, но, чтобы гарантировать правильное отображение сайта в наиболее популярных браузерах, вам нужно как минимум IE6 и IE7. Microsoft предлагает использовать Virtual PC, чтобы запускать браузеры одновременно, но есть и более простое решение, Multiple IE?s package от TredoSoft позволяет установить на компьютер несколько версий IE.
Установка очень проста, достаточно следовать инструкциям, а в результате вы получаете IE3, IE4.01, IE5, IE5.5, IE6 абсолютно не зависящие друг от друга, причем установочный файл занимает всего 10Mb. Обратите внимание, что браузеры установленные таким образом работают не очень устойчиво и иногда падают без видимых причин, но, несмотря на это, свои задачи пакет выполняет в полном объеме. Установщик работает в Windows XP, пользователям Windows Vista придется использовать have to use Microsoft Visual PC 2007.
Если вы хотите протестировать сайт в IE7, не устанавливая его на компьютер, обратите внимание на ieCapture. Мгновенный результат абсолютно бесплатно.
Проблема № 2: Safari
Только одна версия Safari может быть установлена в Mac OS X. Способ рендеринга сайта определяет установленная версия Web Kit Framework. Но, как и в случае с IE, есть решение от стороннего производителя, Multi-Safari позволяет установить 10 версий Safari, начиная от 1.0 и до 2.0.4.

Multi-Safari позволяет установить десяток версий Safari.
Проблема № 3: Linux
Чтобы протестировать сайт в браузерах для Linux, можно использовать Knoppix или Ubuntu. Knoppix позволяет запустить Debian GNU/Linux за 5 минут. В обоих случаях возможен запуск с CD-ROM без установки системы на компьютер.

Smashing Magazine в Firefox под Ubuntu
В Knoppix установлены браузеры Konqueror и Mozilla, в Ubuntu Firefox 2.0. Загрузить обе системы можно бесплатно через BitTorrent или FTP (700Mb), а можно и заказать бесплатный CD.
Онлайновые сервисы и инструменты
Конечно, полное представление об отображении сайта в различных браузерах можно получить, только установив их на свой компьютер, но если нужно просто проверить все ли в порядке, то онлайновые сервисы могут быть весьма полезны. Ассортимент сервисов достаточно широк, но многие из них платные.
- IE Web Renderer
IE NetRenderer позволяет посмотреть, как будет выглядеть сайт в IE 7, 6 или 5.5. Режимы Miixed и Difference показывают различия отображения в разных версиях (IE6 vs. IE7), накладывая скриншоты друг на друга -
Browsershots
Позволяет тестировать сайты не только в Firefox, Opera, IE и Safari, но и в экзотических браузерах (Dillo, Epiphany, Flock, Galeon, Konqueror, Seamonkey), возможна настройка разрешения и глубины цвета, а также поддержки JavaScript и Flash.Все отправленные URL добавляются в очередь, время ожидания их обработки зависит от загруженности сервера. Вы можете создать закладку, чтобы вернуться за результатами своего запроса или получить уведомление по E-Mail или RSS. Можно загрузить все свои скриншоты в виде zip архива.
-
Litmus
Не просто предоставляет вам скриншоты, но и содержит систему управления тестированием. Скриншоты создаются в почти в 30 различных браузерах в течении секунд, причем можно видеть всю страницу а не только ее верхнюю часть как в других сервисах. Сервис содержит систему контроля версий и отслеживания багов.Сейчас сервис создает скриншоты в 17 браузерах для Windows и 6 браузерах для Mac OS X, а вскоре будут добавлены еще некоторые браузеры. И хотя сервис не столь всеобъемлющий как другие, цена достаточно высока и составляет 39$ в месяц за индивидуальную лицензию. Есть интересная возможность создания скриншотов рассылок в почтовых клиентах Outlook 2007, Outlook 2003, Outlook 2002, Outlook 2000, Gmail, Hotmail и AOL Mail.
-
Browser Photo
Скриншоты в Internet Explorer, Opera, FireFox и Safari под Windows, Mac, и Linux, всего 24 различных комбинации, 15$ за один раз и $150 за неограниченное использование в течении года или для определенного домена. -
Browsrcamp
Бесплатно генерирует скриншоты в Safari 2.0.4 в пяти разрешениях. Есть и платная услуга, OS X Live Test тестирование с полным контролем над системой Mac OS X, для этого вам нужен клиент VNC (Virtual Network Computing) и быстрое соединение. В процессе тестирования доступны браузеры Camino, Firefox, Flock, iCab, Mozilla, Netscape, OmniWeb, Opera, Safari, SeaMonkey и Shiira. Цена от $3 за два дня до $99 за год. -
Browsercam
Предводитель в семействе тестовых сервисов, кроме скриншотов возможно удаленное управление браузером. Количество доступных браузеров постоянно растет, на данный момент это более 70 браузеров под Linux, Win и Mac, а также эмуляторы мобильных устройств BlackBerry и Win Mobile. Есть настройка разрешений и доступа к защищенным сайтам, возможна загрузка скриншотов в zip архиве.По большому счету этот сервис предоставляет все, что вам может понадобиться. Возможны тарифные планы от $20 до $1000 в месяц.
Широкий выбор…
и гибкая настройка!
-
BrowserPool
При создании скриншота можно настроить все, что только можно придумать. Сотни различных сочетаний, десятки браузеров, тысячи скриншотов. Есть и удаленное управление браузером через VNC клиент. Цена $40 в месяц, в них включены 40 бесплатных часов. Возможна бесплатная тестовая регистрация.
Статьи
- Как протестировать сайт в различных браузерах на одном компьютере
Количество браузеров в которых нужно тестировать сайты давно перешло все границы, это Internet Explorer (IE) 7, 6, 5.5 и 5.0, Firefox 2.0 и 1.5, Opera 9 и 8, несколько версий Safari, и еще множество не столь распространенных. При этом, они работают на различных платформах: Windows, Mac, Linux. Есть еще и проблема невозможности совместной установки различных версий для некоторых браузеров (наиболее заметный пример Internet Explorer для Windows. Автор этой статьи предлагает несколько способов преодоления проблем с установкой нескольких версий различных браузеров на одном компьютере.
На что способен ваш браузер?
Новые версии браузеров дают новые возможности веб-разработчикам, к примеру, Safari поддерживает некоторые правила CSS3. Вот небольшой список тестов, позволяющих узнать, какие технологии поддерживает ваш браузер, и как обстоят дела с их поддержкой в других браузерах, чтобы определить, что можно использовать в своих проектах, а что не стоит.
- Acid 2 Test
Современные браузеры должны отображать это сложно изображение созданное с помощью CSS. У большинства браузеров с этим пока проблемы.
- Селекторы CSS 3
Поддерживает ли ваш браузер селекторы CSS3? - Набор страниц для тестирования поддержики CSS2 браузером
автор Эрик Майер - Acidic Float Tests
Тесты показывающие поведение плавающего блока, выходящего за границы родительского. - Набор CSS тестов
Набор страниц тестирующих все возможности CSS 2. - CSS Тесты и эксперименты
Множество примеров иллюстрирующих возможности браузеров.
- Cascading Style Sheets Test Suites
Набор для тестирования поддержки CSS от W3C - PNG Test
Набор PNG иконок для тестирования PNG декодеров, программ для просмотра PNG и браузеров. Множество различных вариантов иконок с глубиной цвета от 1 до 64 бит, в оттенках серого, с палитрой и в truecolor, interlaced и нет, с простой прозрачностью и с альфа-каналом, с фоном, гамма коррекцией, комментариями и др. есть даже некорректные и поврежденные в результате ошибки при передаче.




























Вот это просто незаменимо!
Хм... Придется вернуть Linux, хотя никогда не замечал существенных различий в отображении сайтов в FF/Lin - FF/Win. Впрочем и в Windows приходится работать только ради тестирования в IE... -(
Очень полезная статья.
Спасибо за статью.
понравилась шутка про:
"Если вы хотите протестировать сайт в IE7, не устанавливая его на компьютер, обратите внимание на ieCapture6. Мгновенный результат абсолютно бесплатно."
при попытке посмотреть что-то, появилась надпись, время ожидания 8956 минут.
Может это была и не шутка, просто после статьи в SmashingMagazine его перегрузили.
Для этого не стоит ничего устанавливать. Проблема состоит в том, что при наличии нескольких версий IE они считываю версию из ключика реестра. Его то и нужно удалить. На эту тему есть прекрасная статья на pepelsbey
Можно и так, но если есть готовый инсталятор со всеми исправлениями то почему бы его не использовать.
хорошая подборка. все в одном месте
интересно, а замечал ли кто на практике различия в отображении сайтов в FF для разных ОС? Мне не удалось заметить различий в FF1.5, FF2 в Opensuse, Tiger и WinXP.
И ещё. Разные версии IE можно поставить в Linux или Mac OS X (но с шаманскими плясками) при помощи утилиты ies4linux. http://www.tatanka.com.br/ies4linux/
Статистика использования браузеров то ли высосанная из пальца, то ли неактуальная для России. По моим данным оперой на разные сайты ходит от 20% до 30% населения, а доля IE7 ещё ничтожно мала (хотя жаль, если уж ие, то лучше 7, всё же хоть как-то работает).
В старых safari (на khtml) можно не тестировать, konqueror покажет то же самое. Различия отображения в новых версиях safari (на WebKit) настолько несущественны, что можно ими пренебречь, и смотреть только в той сафаре, которая установлена по умолчанию.
Так же можно пренебречь старыми версиями FF (и прочих гекконов), ибо уже давным-давно эти браузеры отображают всё стабильно и адекватно, являясь образцом для подражания. А вот опера стремительно растёт, в каждой версии становясь всё лучше, но многие ли используют старые версии оной? Вспомнился почему-то кошмар разработчика - опера 6.
Статистика по рунету немного отличается, вот данные от LiveInternet
http://www.liveinternet.ru/stat/ru/browsers.html
Статья отличная. Полазил по сайтам, потестировал, но тестируются не все, многие загружены.
http://www.browserpool.de/kc/wob/portal.jsp?lang=ru
Вот это забавно.
Спасибо, полезные ссылки :)
Жаль нет такой штуки, в которую включены ie6, ie7, ff2 и opera 9.
Статистика там вообще непонятная. И вообще по каким данным она состваляется? По посещаемости w3counter? А смысл? И причём там Латвия? Пользователей из Латвии 4%? да вы что? У нас столько народу не наберётся!
Кстати если не хотите заменять IE6 на IE7, есть возможность установить IE7 standalone (от того же создателя Multiple IE installer).
Отличия Linux браузеров от Win-бразуеров в шрифтах. А Konqueror можно заменить браузером Swift для windows. Как заменить Epiphany - не знаю, но знакомые говорят, что он работает почти как FF.
Сервисы генирирующие скриншоты полезны только для верстальщиков. Для программистов на js, не приемлимы.
Спасибо! А главное вовремя, мне как раз нужно тестировать верстку в разных браузерах.
Хорошая статья.
Я тестирую на последней Опере, Фаирфоксе, Сафари и ИЕ (ие в винде).
Опера с фаирфоксом имхо и в винде и в макоси только шрифтами отличаются
Всякими экзотическими браузерами можно "пренебречь" (то есть верстать валидно по стандартам, и если криво там отображаться будет то сами виноваты, что стандартов не придерживаются)
4g3n7, поддерживаю, у меня такой же подход.
афтар этих строк однозначно человек не робкого десятка, да и еще и ие6.
С некоторым недоверием отношусь к результатам тестов при помощи онлайн инструментов. А вот, для тестов Konqueror использовать Knoppix, весьма интереснаое предложение.
Эх, цены бы не было тому человеку который бы смог это все запихнуть в один пакет, который можно запустить под виндой! :-)
Это дело даже продавать можно студиям :-)
Я так понимаю нет еще решения для тестирования сайтов в ИЕ6 на Висте без использования виртуальной машины? Так сказать в реальном времени.
А как же Ie4Linux?
kost BebiX, когда я ставил этот набор, там не было IE7, в наше время в любом случае следует уделять ему внимание...
Да и вели они себя не в точности так, как те же версии под Win.
Опечатка: примеров юллюстрирующих -> иллюстрирующих
Спасибо, чудесно и полезно.
Все бы хорошо, и я думал что можно пользоваться онлайн тестировщиками. в смысоле теми, кто просто рендерит страницу. напоролся с Safari так. Клиент - яростный поклонник Маков. соответственно Сафари... и вроде как все было красиво, но! один ньюанс, при наведении на ссылку, в одном случае курсор был нормальным пальцем, а в другом обычным курсором... верстальщик блин, постарался, при этом на виндовской сафаре, все было ок. проблемы были только под МакОС...
казалось бы, мелочь, она нет, уперся чертяка...
Ув. wecom, я только что сверстал под маком страницу. Есть у меня тег а и внутри img. В стилях я указал cursor: pointer и все замечательно работает.
ребята! как протестировать енто понятно...а как добиться кроссбраузерности???
дайте плз толковую сцылочку на статью какую-нить по ентому поводу.
Петр, а в чём проблема? Верстайте по стандартам прежде всего, если не выпендриваться особо, то в 90% случаев будет получаться кросс-браузерно.
Тормоз, не согласен. Верстаю по стандартам, а потом еще раза в 2 дольше под ИЕ подгоняю.
Петр Краснодар, а вот это для каждой проблемый свое целое обсуждение, хаки и прочее. Здесь если собрать воедино все решения - цены бы не было ресурсу.
p.s.: и тогда бы я написал скриптик, который бы подключался к страничке и для ИЕ исправлял баги (тоесть стандартный код куверкал под ИЕшный).
Ну я тоже с браузерами мучаюсь частенько :) Но я люблю поизвращаться. Значит, ты тоже. Если же странички без особого выпендрёжа, повторюсь - проблем быть не должно. Естественно, надо просто помнить, что IE, например не понимает position:fixed и псевдокласс hover понимает лишь для ссылок.
Кстати, это плохое решение. Гораздо лучше [if lte IE 6].
собсна проблема тривиальна-кодировка!!!
вот енту строчку вставил
ан нет, или стоит windows-1251???
верстальщик с меня никудышный, но хочется научиться уму-разуму.
пытался написать скрипт на проверку браузера, да хр-ен смог :(:( ламерище
собсна усе здесь
http://petr07-02.narod.ru/news.html
только идите конкретно посцылочке, остального просто пока нет (думаю что шаблон сначала один отладить надо).ставишь когда утф-8 ручками, то шрифт нормальный
зы пока про остальное не говорю, цсс -эт уже после :)
[meta http-equiv="Content-Type" content="text/html; charset=utf-8"]
Откуда doctype -DTD HTML 4.0 FINAL- такой?
и то криво, делаю в a {display: block;} и измение цвета фона и текста в a:hover - захватывает только при наведении на текст, а причем с фона не отпускает :)
спасибо за статью!
Очень интересная статья, а комментарии поучительны и полезны для практики.
Отличная подборка сервисов, респект!
Спасибо за статью. Очень полезная. Сам на локальном компе тестировал сайт в 3-х браузерах
Хорошая подборка, и в комментариях много интересного.
отличный обзор
Сохранил в закладки. Хорошая подборка ссылок и отличная статья. ) Спасибо!
Установил IE8b1 на WinXP SP2 с IE7, потом MultipleIE (IE5.5 и 6) в итоге перестали работать условные комментарии, юзер агент стринг стала иметь вид, например для IE7:
appName: Microsoft Internet ExplorerappCodeName: Mozilla
appVersion: 4.0 (compatible; MSIE 7.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
Для остальных версий тоже самое только цифра возле первого MSIE меняется. Пробовал вручную написать нормально через TuneUP Utilities, не помогло (
Может поскажет кто, как все в порядок привести... из условных комментариев работает во всех версиях только [if IE]
Octane, а как ставил? И в какой ОС работаешь? Под маком завести несколько ИЕ не удалось, а вот для Линукса есть прекрасная утилита ies4linux, при использовании которой ставятся любые версии ИЕ в любых сочетаниях, и юзерагент у всех нормальный.
Сорри за даблпостинг, но не могу не добавть: установленные на одну ос разные версии IE не дают 100% результата в тестировании из-за большого количества предустановленных шрифтов в современных ОС и технологии их сглаживания. И разработчики редко когда тестируют весь перечень перечисленных шрифтов в параметре font-family... Например если в WinXP с установленным MultipleIE открыть сайт в IE5.5 и посмотреть на новомодный Treburched MS, будет все отлично, даже ClearType отлично работает, НО в той ОС, где IE5.5 является родным браузером нет и небыло ни Treburched MS, ни ClearType, и будет выбран следующий найденный шрифт из списка, у которого возможна совсем другая ширина букв, да еще и ужасно коряво смотрится из-за древней технологии сглаживания шрифтов или ее отсутствия.
Вовторых нельзя забывать, что врятле пользователь того же IE5.5, а зачастую и IE6 будет просматривать сайт на мониторе со столь же хорошей матрицей и глубиной цвета 24-32bit, скорее всего это будет убогий выцвевший электронно лучевой монитор с разрешением 800*600 - хотя тогда появляются вопросы: а сколько таких динозавров осталось? будут ли они хоть сколько то полезной аудиторией для вашего сайта? сколько еще человек, кто просматривает сайты через IE4-5 при виде кривой странице говорят: "Что за дебилы делали, фсе криво!", а не осознает, что его браузер уже давно морально устарел?
Вообще считаю, что на данный момент актуально делать оптимизировать сайты для IE не ниже 6ой версии (в смысле просто сайты, не масштаба каких-нибудь поисковых систем и социальных сервисов) и не захламлять его кучей CSS-хаков и дополнительных таблиц стилей для всяких IE4, 5.01, 5.5...
2 Шильгия:
:)
Octane, а смысл держать целую винду ради тестирования в ИЕ? Можно же поставить ослика и в той ОС, в которой работаешь, меньше проблем будет.
я работаю в Windows XP sp2, а под линуксом тестирую сайты, используя Ubuntu Live CD
Извините, просто в последнее время люди, работающие в Windows, настолько редко встречаются, что сначала даже такая версия не выдвигалась в качестве возможной :)
Особенно это касается веб-разработчиков по вполне понятным причинам.
Octane, как исправить пробему с версией при нескольких установленных IE я писал в конце статьи условные комментарии.
Спасибо, Евгений.
Все заработало. Странно только почему после установки MultipleIE не произошло автоматического переименования ключа.
Вот так подборочка. Однозначно занесу в избранное.
Скажите пожалуйста, в IE из пакета MultipleIEs не работает Ajax?
Работает.
Но вообще я перестал доверять MultipleIE, поведение IE6 там несколько отличается от обычного с Flash проблемы, текст не выделяется, сейчас проверяя Ajax обнаружил, что в текстовые поля больше не работают.
Видимо причиной этих проблем послужили установка беты IE8 и SP3.
Теперь я использую VirtualBox, как и почему уже писал в посте о 5 используемых мной программах.
ие7 и ие8 можно без проблем портабл ставить. во время установки,
открыть архив удалить папку update и несколько файлов (точнее гугль поможет),и запускать установку.
я же поставил не портабл ИЕ8 бетку 2ую (очень понравился,особенно для разработчиков инструменты,был приятно удивлен не FIREFOX конечно но все же..), поставил ие7портабл но и в ие8,есть возможность тестировать и как ИЕ7.
Поставил так же IE Tester ну и мультипл ие, 5.5 и 6ю версию ИЕ.
так же пользую один из бесплатных сервисов скриншотов,
о котором писалось в статье.