Перейти к содержимому

Фотография

Базовый минимум для тестировщика WEB-приложений


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 22

#1 petroffcomm

petroffcomm

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Павел


Отправлено 03 января 2011 - 23:28

Имеется большая вероятность того, что в ближайшее время мне прийдётся сменить место работы, а следственно и специфику проверяемых продуктов в том смысле, что тестировать, скорее всего, прийдётся web-приложения, поск. бОльшая часть вакансий в моём городе именно для тестировщиков web-приложений. И хотя тексты вакансий содержат определённые требования, хотелось бы знать о некотором минимально допустимом уровне владения прикладными знаниями, как то HTML/CSS/JS(JS-framework)/какой-то язык програмиирования.
  • 0

#2 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 04 января 2011 - 00:46

Иногда бывает принципиально важно понимать, как хранятся данные, какими путями они с сервера к браузеру и обратно ходят, и каким образом данные трансформируются (если такое и происходит).

Если будете знать, как и из чего собирается страница сайта - хорошо. Если не будете знать - пофигу. Не в технологиях дело.

HTML/CSS/JS/какой-то язык програмиирования - это нужно знать программистами. Вам, как эмулятору конечного пользователю, какое дело до того, на чем написано приложение и как оно "внутри" работает?! :)

Иногда считается, что тестировщик должен знать SQL - просто так знать, без привязки к местности. Если в требованиях к кандидату знание SQL не указано - то и знать этот язык незачем, пользователи взаимодействуют с браузером без SELECT * where...
  • 0

Software Testing Glossary - простыми словами о непростых словах.


#3 petroffcomm

petroffcomm

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Павел


Отправлено 04 января 2011 - 09:00

HTML/CSS/JS/какой-то язык програмиирования - это нужно знать программистами

Да я и сам после поста понял, что некорректно сформулировал. Действительно, больше интересуют принципы, которые необходимо понимать.

Благодарю за ответ.
  • 0

#4 Natalya Rukol

Natalya Rukol

    Профессионал

  • Admin
  • PipPipPipPipPipPip
  • 2 001 сообщений
  • Город:Moscow


Отправлено 04 января 2011 - 11:24

HTML/CSS/JS/какой-то язык програмиирования - это нужно знать программистами. Вам, как эмулятору конечного пользователю, какое дело до того, на чем написано приложение и как оно "внутри" работает?! :)

Думается мне, что знание интернет-технологий существенно помогает проектировать тесты.
Конечно, глубокое знание синтаксиса HTML5 врядли является необходимым, но понимание базовых принципов, отличия сайтов HTML и PHP/ASP, работы с кукисами, кеширования js файлов разными браузерами и т.д. необходимы для грамотного тестирования веб-сайтов (ИМХО, конечно).
  • 2

#5 stmark

stmark

    Опытный участник

  • Members
  • PipPipPipPip
  • 404 сообщений
  • ФИО:Докучаев Сергей
  • Город:Ярославль


Отправлено 04 января 2011 - 12:48

Иногда бывает принципиально важно понимать, как хранятся данные, какими путями они с сервера к браузеру и обратно ходят, и каким образом данные трансформируются (если такое и происходит).

Если будете знать, как и из чего собирается страница сайта - хорошо. Если не будете знать - пофигу. Не в технологиях дело.

HTML/CSS/JS/какой-то язык програмиирования - это нужно знать программистами. Вам, как эмулятору конечного пользователю, какое дело до того, на чем написано приложение и как оно "внутри" работает?! :)

Иногда считается, что тестировщик должен знать SQL - просто так знать, без привязки к местности. Если в требованиях к кандидату знание SQL не указано - то и знать этот язык незачем, пользователи взаимодействуют с браузером без SELECT * where...


То, что можно спокойно всё тестировать и без дополнительных знаний - согласен. Только это будет пользовательское тестирование со всеми вытекающими. Ну почти пользовательское :)

2автор: минимального набора знаний нет, каждый его по своему представляет. К тому же - ручное тестирование web-приложений это одно, а нагрузочное\автоматизированное\тестирование БД\etc - это другое. Так что, я бы посоветовал разбираться с проблемами по мере их поступления. Что от вас во время работы потребуется, то и изучать.
  • 0

#6 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 04 января 2011 - 12:59

То, что можно спокойно всё тестировать и без дополнительных знаний - согласен. Только это будет пользовательское тестирование со всеми вытекающими. Ну почти пользовательское :)

Дык уточнений о профиле тестирования не было. Отсюда делаем вывод о том, что речь идет о "Здравствуйте, я просто тестировщик вашего сайта!"
  • 0

Software Testing Glossary - простыми словами о непростых словах.


#7 Natalya Rukol

Natalya Rukol

    Профессионал

  • Admin
  • PipPipPipPipPipPip
  • 2 001 сообщений
  • Город:Moscow


Отправлено 04 января 2011 - 21:31

То, что можно спокойно всё тестировать и без дополнительных знаний - согласен. Только это будет пользовательское тестирование со всеми вытекающими. Ну почти пользовательское :)

Дык уточнений о профиле тестирования не было. Отсюда делаем вывод о том, что речь идет о "Здравствуйте, я просто тестировщик вашего сайта!"

Неоднократно вижу проблемы, связанные с "просто тестированием". Чаще всего они проявляются в избыточном, неоправданном тестировании (а ведь это не значит, что тестирование становится лучше - это значит, что не остаётся времени на более важные проверки!).

Применительно к веб: в одной крупной компании тестировщики меряли производительность сайта "по-взрослому": 20 раз перезапускали 1 и тот же тест и считали среднее значение. УмнО, но на сайте были проблемы с загрузкой скриптов: первый раз качалось ОЧЕНЬ долго, 19 последующих операции выполнялись быстро. "Среднее значение в пределах нормы, а пользователи почему-то жалуются!"

Если бы они знали, как отключить кеширование скриптов, то не пропустили бы слонячьи скрипты, узкий канал и вытекающие проблемы с производительностью.
ИМХО, знание архитектуры ПО и используемых технологий НЕОБХОДИМЫ для эффективного тестирования.
  • 2

#8 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 04 января 2011 - 22:03

ИМХО, знание архитектуры ПО и используемых технологий НЕОБХОДИМЫ для эффективного тестирования.

Ну дык!

Если бы они знали, как отключить кеширование скриптов, то не пропустили бы слонячьи скрипты, узкий канал и вытекающие проблемы с производительностью.

А если бы они занимались проверкой сценариев реальных пользователей (вышел в соседнее здание и протестировал что было надо с чужого компьютера с согласия владельца компьютера, молчаливо лежащим под столом с кляпом во рту), и если бы рассуждали о тестировании сайта вообще, а не "узконаправленно", то вероятно, потратили бы время с толком, а не как было указано.
  • 0

Software Testing Glossary - простыми словами о непростых словах.


#9 Natalya Rukol

Natalya Rukol

    Профессионал

  • Admin
  • PipPipPipPipPipPip
  • 2 001 сообщений
  • Город:Moscow


Отправлено 05 января 2011 - 06:14

А если бы они занимались проверкой сценариев реальных пользователей (вышел в соседнее здание и протестировал что было надо с чужого компьютера с согласия владельца компьютера, молчаливо лежащим под столом с кляпом во рту), и если бы рассуждали о тестировании сайта вообще, а не "узконаправленно", то вероятно, потратили бы время с толком, а не как было указано.


Если тратить всё рабочее время на походы в соседние здания, то бит и кляпов не запасёшься. Учесть кеширование как отдельный фактор, влияющий на производительность - знаааачительно эффективнее, чем изображать тупого пользователя и проверять всё что влиять может и не может и не должно и не будет.

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


  • 0

#10 frei_by

frei_by

    Постоянный участник

  • Members
  • PipPipPip
  • 177 сообщений
  • ФИО:Дмитрий

Отправлено 05 января 2011 - 07:43

Если бы они знали, как отключить кеширование скриптов, то не пропустили бы слонячьи скрипты, узкий канал и вытекающие проблемы с производительностью.
ИМХО, знание архитектуры ПО и используемых технологий НЕОБХОДИМЫ для эффективного тестирования.

...исполняемые скрипты со стороны сервера не кешируются....
...а если, например, кеш хранится в течении года без изменений, и задача нагрузочного тестирования было проверить именно как работает механизм оттдачи кешированных страниц?
  • 0

#11 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 05 января 2011 - 09:33


Если бы они знали, как отключить кеширование скриптов, то не пропустили бы слонячьи скрипты, узкий канал и вытекающие проблемы с производительностью.

...исполняемые скрипты со стороны сервера не кешируются....

Во-первых, иногда таки кешируются (отдача статики из кеша может работать на порядок быстрее, чем с диска).
Во-вторых, где в процитированном предложении было написано про кеширование на сервере? ;)
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#12 frei_by

frei_by

    Постоянный участник

  • Members
  • PipPipPip
  • 177 сообщений
  • ФИО:Дмитрий

Отправлено 05 января 2011 - 11:48

но на сайте были проблемы с загрузкой скриптов: первый раз качалось ОЧЕНЬ долго, 19 последующих операции выполнялись быстро.

Перечитал. Да. Вы правы. Если например это js скрипты которые подгружаются в броузер - то они в броузере кешируются.
Но с точки зрения сервера js - это не скрипт а просто текст. Мерять прозиводительность броузером сомневаюсь что лучшее решение.

отдача статики из кеша может работать на порядок быстрее, чем с диска.

опять-же со стороны сервера статика - это результат работы скрипта. Можеть быть вариант когда например какой-нибудь cgi.exe кешируется где-нибудь в памяти процессора...

Мне стыдно за то что писал раньше. Подумав понял, что я очень плохо разибраюсь в кешировании...
  • 0

#13 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 05 января 2011 - 12:18

опять-же со стороны сервера статика - это результат работы скрипта. Можеть быть вариант когда например какой-нибудь cgi.exe кешируется где-нибудь в памяти процессора...

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

Но я имел в виду то, что даже "настоящую" статику -- js-код, css-файлы, картинки и другие медиа-данные -- тоже кешировать иногда выгодно, потому что из кеша контент отдаётся быстрее. Операции чтения данных с диска крайне медленные, поэтому если пользователи часто загружают какую-то картинку (например, на главной странице новостного сайта, в топ-ньюс) -- её выгодно закешировать на серверной стороне, держать в памяти постоянно и отдавать непосредственно из памяти, не перечитывая каждый раз с диска.

Но я не стану утверждать, что знание таких деталей относится к "базовому минимуму" для тестировщика веб-приложений :)
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#14 ShortLegged

ShortLegged

    Постоянный участник

  • Members
  • PipPipPip
  • 155 сообщений
  • Город:Moscow

Отправлено 09 января 2011 - 16:06

Если это "настоящая" статика, то выгодно использовать сервер созданный для отдачи статики, например nginx или lighttpd. В этом случае конечно же будет кэширование, например файловый кэш.
Для динамических данных получаемых от сервера лучше использовать специальный кэш, информация в котором "портится" достаточно быстро.
  • 0

#15 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 09 января 2011 - 19:33

Если это "настоящая" статика, то выгодно использовать сервер созданный для отдачи статики, например nginx или lighttpd. В этом случае конечно же будет кэширование, например файловый кэш.

Я тоже так думал до недавнего времени :) Но оказывается, что иногда и этого недостаточно. За последнее время мне попались на тестирование два проекта, где были специальные CDN для отдачи статики. Причём в одном проекте это были тысячи мелких картинок-аватарок, а в другом -- фильмы. И в обоих использовалось кеширование наиболее часто запрашиваемого контента в памяти, в первом проекте для мелких картинок использовался memcaсhed, а во втором был сделан самописный кеш, в котором хранились в памяти порезанные на куски фильмы-"бестселлеры".
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#16 ShortLegged

ShortLegged

    Постоянный участник

  • Members
  • PipPipPip
  • 155 сообщений
  • Город:Moscow

Отправлено 10 января 2011 - 07:31

Возможно, использование мемкэша сделали для шаринга данных между fe, без знания архитектуры сказать сложно. Какие сервера использовались в качестве fe?
  • 0

#17 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 10 января 2011 - 12:44

Возможно, использование мемкэша сделали для шаринга данных между fe, без знания архитектуры сказать сложно. Какие сервера использовались в качестве fe?

nginx. Шарить можно и через файловую систему. Но там дело было не в шаринге, все аватарки отдавались с одного сервера, а именно в том, что часто используемые картинки дешевле считать один раз с диска и потом в памяти держать. Чистой воды кеширование.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#18 ShortLegged

ShortLegged

    Постоянный участник

  • Members
  • PipPipPip
  • 155 сообщений
  • Город:Moscow

Отправлено 10 января 2011 - 17:08


Возможно, использование мемкэша сделали для шаринга данных между fe, без знания архитектуры сказать сложно. Какие сервера использовались в качестве fe?

nginx. Шарить можно и через файловую систему. Но там дело было не в шаринге, все аватарки отдавались с одного сервера, а именно в том, что часто используемые картинки дешевле считать один раз с диска и потом в памяти держать. Чистой воды кеширование.

Надо думать, мемкэш работал на одной машине с nginx-ом. Интересно, этот вариант сравнивался с вариантом использования только дискового кэша, насколько я понимаю, разницы в производительности практически не будет, при правильной настройке этого самого кэша, естественно :).
  • 0

#19 petroffcomm

petroffcomm

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Павел


Отправлено 10 января 2011 - 18:11

Доброго времени суток, коллеги! :) Ну и баталии разгорелись :biggrin:
Далековато от базового минимума, как по мне. Хочется, чтоб эта тема была полезна для кого-то ещё, кроме меня.
  • 0

#20 OVA

OVA

    Опытный участник

  • Members
  • PipPipPipPip
  • 405 сообщений
  • ФИО:Высоцкий Сергей Павлович
  • Город:Новосибирск

Отправлено 11 января 2011 - 07:23

HTML/CSS/JS/какой-то язык програмиирования - это нужно знать программистами. Вам, как эмулятору конечного пользователю, какое дело до того, на чем написано приложение и как оно "внутри" работает?! :)

Зависит от специфики, но протоколы и какие-то базовые вещи вроде HTML знать все же стоит. Гражданин Виттакер давно уже написал что между вами как эмулятором конечного пользователя и собственно продуктом стоит куча всякого добра в котором неплохо было бы хоть как-то разбираться чтобы понимать что вообще может случиться с продуктом. Опять же какой-то человеческий фидбек разработчикам поставить можно будет и избежать бесполезной работы потому что кеш почистить забыли приступив к тестированию новой версии.
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных