Автоматизация тестирования "по-китайски" |
Автор: Баранцев Алексей |
08.11.2008 00:26 |
Наверняка многие слышали анекдоты про китайцев. Кто не слышал -- приведу пару типичных примеров: Китайский противотанковый взвод численностью 3000 чел. состоит из 3 отделений по 1000 чел. Задача отделения - разобрать танк противника на части, пока он не выстрелил. или вот такой: Сегодня в провинции Шаньдунь сдана в эксплуатацию новая мощная электростанция. Принцип действия: три миллиона китайцев бегают по эбонитовому полу в шерстяных носках. Однако, сказка ложь, да в ней намёк. Некоторое время тому назад мне попались на глаза две интересные заметки:
Такой способ организации работы получил название краудсорсинга, и спектр применения его становится всё шире. Наш мир превращается в огромный распределённый супербиокомпьютер, в котором роль процессоров выполняют люди. Это очень хорошие процессоры, они могут решать такие задачи, которые обычным компьютерам пока не под силу, а роль традиционных информационных систем сводится к тому, чтобы обеспечить связь между этими человеко-процессорами. И вот с того времени меня неотступно стала терзать мысль, что автоматизация некоторых видов тестирования -- это вполне подходящая задача для такого супербиокомпьютера. Функциональное тестирование, конечно, не получится так автоматизировать, потому что хорошего распараллеливания сложной задачи на много "процессоров" добиться непросто. Но есть же нагрузочное и конфигурационное тестирование, там распараллеливание происходит естественным образом. Да, есть такие сервисы! uTest предлагает услуги по функциональному и нагрузочному тестированию приложений. А появившийся чуть позже Litmus нацелен на конфигурационное тестирование веб-сайтов. Я не знаю, как в действительности работает Litmus, но вот как мне это представляется. Поступает на тестирование сайт, он отправляется на первый, ведущий, человеко-процессор, который в каком-то одном браузере, скажем, IE 7, проходит по сайту, строит и записывает цепочки, сохраняет эталоонные скриншоты. После этого сайт раздаётся одновременно на много других процессоров, каждый из которых проходит те же самые цепочки и сравнивает наблюдаемый результат с эталонными скриншотами. При этом в полной мере задействуется способность человека к нечёткому сравнению картинок, ведь абсолютно точного попиксельного соответствия отображения страниц в разных браузерах добиться не удастся, да это и не нужно. Ну и в конце результаты собираются со всех процессоров и клиент получает общий отчёт. Вуаля! Супербиокомпьютер в действии. |