26 декабря 2014 г. 22:00:14

Тестирование производительности – итоги первой недели обучения и не только

${myName}, вы  поиздевались над пользователями мобильных телефонов этой огромной картинкой в хедере.
Преподаватель веб-технологий и дизайна, проверяя лабораторную работу.
(с) Почему такой эпиграф? см. п. 1 из списка в ниже.



    Пятница – лучший день недели. К тому же служит удобной точкой отсчета и поводом подводить итоги обучения за неделю, т.к. по пятницам выкладывается очередной урок по тестированию производительности.

    Итак, закончилась первая неделя.

    Первое домашнее задание было совсем легким и в количестве всего 1 шт. Поэтому будущим участникам стоит взять на заметку, что нагрузка домашкой ощутимо вырастает на втором занятии. Также, кто себя неуверенно чувствует, точно не стоит бояться, что в домашках (кроме задания со звездочкой) спросят то, о чем не рассказывали и что не показывали.

   На этом маленькое подведение итогов закончено. Но я была б не я, не полезь куда-то еще. 

   Собственно, мне первой домашки на неделю оказалось мало, поэтому от скуки я опередила часть материала второго урока – как взять информацию для post-запросов из csv файла. И пересмотрела море презентаций о тестировании производительности. Сколько смогла найти и сколько смогла понять.  Часть в закладки.

    Понравилось.  
    Курс молодого бойца.
    Website Performance Optimization.


  Нашла видео "Learn JMeter in 60 minutes" (не верьте, длительность 01:23:42), развернула себе Ghost Blogging Platform, чтобы быть с автором на одной волне, и радостно создала пользователей. Я уже в предвкушении потирала ладошки, как я начну тестировать авторизацию пользователей...но столкнулась с пока непреодолимым препятствием. С марта 2014 года подход к авторизации на Ghost изменился, и я еще не знаю, как....  Все равно узнаю, что мне нужно сделать с токеном, так или иначе, рано или поздно.

  Во время всего этого мое представление о тестировании производительности, окутанном какой-то тайной и высоким порогом входа, крутилось на \pi- пополам то по часовой, то против часовой стрелки. 

   По часовой: "это круто!" "это ж такое можно сделать!". 
   Против часовой: "Как ни о чем не говорит?" "А я думала, что..?"
   
   В итоге, открыла для себя следующее:
 
    1. При плохо оптимизированном клиент-сайде хорошая производительность на стороне сервера не спасет. (Привет, эпиграф)

    2. Среднее время отклика ни о чем не говорит. Очень плохо и очень хорошо даст среднее арифметическое "нормально". Но это не устроит пользователей, которые непозволительно долго ждут результат. Другое дело, квантили. 

    3. Инструмент для тестирования производительности может собирать информацию медленнее, чем в состоянии ответить сервер.
 
    4. Пользователи с очень медленным соединением и тяжелыми запросами к серверу  зло. И с этим (а не пользователями) нужно что-то делать. 

     5. 100 запущенных одновременно тредов при пересчете на реальных пользователей, работающих одновременно, могут оказаться эквивалентны 1000+ пользователям.  Потому что быстрее реальных людей.

    6. Тестирование производительности не особождает от проверки окружения. Если от радикального изменения параметров у вас мало что меняется, может, "умерла" сетевая карта? 

    7. Эффект наблюдателя проявляется и здесь. Нужно удержать себя от тестирования инструмента для тестирования.

    8. Можно проиграть действиям в реальном браузере. Но тем приятнее становится победа.

Note: Узнаю терминологию лучше, осознаю убогость списка, может, перепишу.


 Комментарии доступны по линку на сам пост.



blog comments powered by Disqus