В края на 2012 г. стратегът на мобилната платформа Peter-Paul Koch получи спонсорство за QuirksMode.org, което според него ще му позволи да отдели повече време за проучване на уеб стандарти и работа върху таблици за съвместимост, които ще бъдат споделени с webplatform.org.
През уикенда селектираха CSS селектори за мобилни маси. Koch също проучва допълнително CSS колони и открива, че има някакъв начин по отношение на изпълнението.
Говорихме с Кох за работата му, как се пишат тестовете му и защо разработчиците трябва да бъдат по-предпазливи по отношение на тестването на база на двигател.
.net: Полагате много усилия в мобилните си маси. Това нещо, което не се правеше до такава степен другаде?
PPK: Не, всъщност не се прави. Най-близките до моите таблици са тези на Max Firtman и те се фокусират върху API на HTML5.
Не вярвам в автоматизирането на тестването или резултатите на браузъра и затова наистина не броим тестове като теста HTML5. Тогава имаме Can I Use…, което е полезно, но понякога не дава правилна информация за браузъра.
Доколкото знам, все още съм този, който прави най-подробните тестове - и единственият, който публикува тестови страници, както и резултати.
.net: Как ще започнете да пишете тестовете?
PPK: Бавно! Понякога не е лесно да се разбере какво се има предвид в спецификацията, особено когато има само две реализации, които са фино (или диво) различни. За щастие имам голям опит в писането на тестове в браузъра и затова знам как да предотвратя често срещаните клопки.
Например първоначално изглеждаше така, сякаш Opera Mini не поддържа CSS класове, но това очевидно е глупост. Проблемът се оказа, че тествам за поддръжка на класове, като давам тестов елемент стил на шрифта: курсив. Много Opera Minis не поддържат този стил. Тъй като бях срещал това преди, знаех, че трябва да сменя тестовите стилове. И браузърът MeeGo не поддържа вариант на шрифта: малки букви. Същата история.
Между другото, JavaScript все още дава курсив когато попитате Opera Mini за стил на шрифта стойност. Това доказва, че не можете да автоматизирате тези тестове: трябва да погледнете страницата и да определите дали тя използва курсив шрифт.
.net: В скорошната си статия за селектори и колони посочвате, че браузърите, използващи една и съща компилация на WebKit, имат различна съвместимост. Това допълнително подчертава ли как разработчиците трябва да бъдат внимателни по отношение на авангардни техники и по-стриктно да тестват на различни устройства?
PPK: Да. На мобилно устройство няма WebKit. Има поне дванадесет различни браузъра (с изключение на версиите, които използват WebKit като техник за рендиране), но не е задължително да си приличат.
Най-добрият пример е -webkit-column-span декларация. Оказва се, че WebKit наскоро е отказал поддръжката. Това е най-странният проблем със съвместимостта, който някога съм срещал, защото не е възможно да се обвърже в подкрепа с конкретни версии на WebKit. Така че поддръжката за тази декларация е бъркотия и фактът, че браузърът използва WebKit, не казва точно нищо.