понедельник, 19 ноября 2012 г.

Что такое тестирование ПО?

Тестирование ПО - Процесс проверки соответствия заявленных к продукту требований и реально реализованной функциональности, осуществляемый путем наблюдения за его работой в искусственно созданных ситуациях и на ограниченном наборе тестов, выбранных определенным образом.

Два важных вопроса на собеседовании

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

Как тестировать карандаш?

Тестирование прежде всего начинается с анализа требований/спецификации/документации к продукту.
Если требований нет, то первое, что должен сделать тестировщик - проверить, что продукт выполняют тот функционал для которого он создавался.
Следующее - негативное тестирование.

Необходимо протестировать:
функциональность, ui, usability (удобно ли), совместимости...


суббота, 17 ноября 2012 г.

Bug's life cycle

Жизненный цикл бага:
  1. Баг найдет и занесен в Bug Tracking Systems 
  2. Менеджер или сам тестер назначает держателя бага - тот кто будет чинить
  3. Программист смотрит bug report и чинит, отмечает как "исправленный"
  4. Баг направляется к тестировщику на проверку исправленности

in english:
  1. Bug gets reported
  2. It goes to Development Manager to get Assigned To and Priority
  3. Developer sees the report, fixes the bug, marks it as Fixed
  4. It goes to Tester for verification of the fix

пятница, 16 ноября 2012 г.

Release Acceptance Test

Release Acceptance Test
The release acceptance test (RAT), also referred to as a build acceptance or smoke test, is run on each development release to check that each build is stable enough for further testing. Typically, this test suite consists of entrance and exit test cases plus test cases that check mainstream functions of the program with mainstream data. Copies of the RAT can be distributed to developers so that they can run the tests before submitting builds to the testing group. If a build does not pass a RAT test, it is reasonable to do the following:
  • Suspend testing on the new build and resume testing on the prior build until another build is received.
  • Report the failing criteria to the development team.
  • Request a new build.

среда, 14 ноября 2012 г.

Онлайн курсы/школа тестировщиков программного обеспечения

Онлайн школа тестировщиков Михаила Портнова

Лекция первая, ссылка

Exsploratiry testing - изучательное тестирование. Подумали, сделали, осмыслили и пошли дальше с учетом уже полученных знаний.
- планирование
 - исполнение
  - изучение

Ad Hoc testing - одновременное планирование, исполнение и изучение происходят одновременно. По типу стихийного придумывания тестовых случаев, интуитивное тестирование.

Test Case - описывают как нам делать тестирование. Описание тестовых случаев.

Quality можно рассмотривать и как степень удовлетворенности пользователей (customer satisfaction) и как соответствует продукт изначальной задумке, требованиям.

Software Quality - соответствие требованиям и с точки зрения менеджеров и пользователей - насколько нравится пользователю. Обнаружение ошибок в коде.

Software Quality Assurance - оценка процесса разработки программного продукта на предмет улучшения.

Классификация видов тестирования (один из возможных вариантов):
  1. Positive vs. Negative Testing
  2. Black Box vs. White Box Testing
  3. Unit – Integration – System Testing
  4. Functional – Regression – Acceptance
  5. Validation vs. Verification Testing
  6. Ad hoc – Exploratory – Structured(?)
Integration testing со стороны white box testing - когда программист тестирует какой-то код и взаимодействие модулей, как они работают вместе.

Acceptance testing - приемочное тестирование.
User acceptance - тестирование ПО в интерес пользователя.

Verification testing - тестирование насколько соответствует требования.
Validation testing - правильно ли программа пишется.