Читайте также: |
|
1. Оценка риска (risk estimate).
2. Эквивалентные классы (equivalent classes).
3. Пограничные значения (boundary values).
Общая вещь: методы отбора тестов применяются во время или после генерирования тестов.
1. ОЦЕНКА РИСКА (risk estimate)
Представьте, что вы только что прикупили отель где-нибудь в горах Сьерра-Невада в Северной Калифорнии. У вас нет опыта работы менеджером отеля, но вы чувствуете себя абсолютно уверенным в своей новой роли, так как у вас есть высшее образование в области физики твердого тела и такую фигню, как управление отелем, вы, конечно, осилите на раз.
К вашему отелю ведут три дороги:
• первая соединяет отель и ответвление скоростной магистрали,
• вторая соединяет отель и дорогу, ведущую к горнолыжным курортам,
• третья соединяет отель и небольшую проселочную дорогу,. по которой ездят в основном местные жители.
Все три дороги имеют одинаковую протяженность.
10 человек уже приехали и 30 человек должны приехать сегодня.
Всю ночь шел снег, и все три дороги замело так, что ни один джип не проедет ни по одной из них.
У вас есть только одна снегоуборочная машина, и на уборку любой из дорог уйдет полдня. Так что нужно выбирать, с какой из них начать.
Можно подойти к решению этой задачи чисто субъективно.
Нигилистический настрой и практическая методология
Абсолютно очевидно, что по дороге номер 3 могут приехать только ваши местные кореша
• для игры в покер (но сегодня не день покера — пятница) или
• на барбекю (но сегодня не суббота).
Значит, дорога 3 остается в снегу.
Абсолютно очевидно, что дорога номер 2 также не является приоритетной в расчистке, так как абсолютно очевидно, что 10 меньше 30.
Таким образом, наш план:
• посадить отельского "жнеца, швеца и на дуде игреца" за руль снегоуборочной машины расчищать роад намбер уан: дорогу к скоростной магистрали;
• вывесить в лобби отеля большой плакат "Дорог на гор закрыт. Не ходи, а то хана" для уже вселившихся;
• накормить уже вселившихся бесплатным завтраком (в качестве извинения).
Запомним, с какой уверенностью мы говорили себе: "Абсолютно очевидно".
Давайте перед тем как реализовывать наш гениальный план, основанный на очевидных вещах, остановимся на минутку у стойки регистрации и поговорим с менеджером отеля, который проработал в нем 20 лет.
Первый вариант разговора
Вопрос: "Что делать, Джеймс?"
Ответ: "Босс, все очень просто. Все, кто уже вселился в отель, приехали играть в снежки, кататься на беговых лыжах или просто дышать свежим воздухом. Я это знаю потому, что переговорил с каждым из них и знаю большинство из них, так как они приезжают каждый год. Поэтому нет никакого смысла в расчистке дороги номер 2, все остаются в отеле или развлекаются в его окрестностях.
Я также знаю, что 16 человек из 30 — это компания, которая выедет к нам рано утром из Рино (я вчера говорил по телефону с одним из них) по этой дороге (показывает на карте), которая пересекается с дорогой номер 3. Соответственно они прибудут к нам по дороге номер 3.
Тестирование Дот Ком. Часть 3
Далее, посмотрите на монитор. Где живут 12 из 14 оставшихся клиентов? Они все живут в Сан-Франциско и окрестностях. Только что передали по радио, что на единственной скоростной дороге, ведущей из Сан-Франциско, из-за снегопада уже образовались страшные пробки. Кроме того, скорее всего большинство членов сан-францисской команды поедут после работы, т.е. в 4 часа, а значит, будут здесь не раньше 8.
Следовательно, нам нужно сначала расчистить дорогу 3 и после этого заняться дорогой 1.
Кстати, остаются еще двое, едущие из Техаса. Вот их мобильный телефон. Я собираюсь им позвонить, рассказать о ситуации со снегом, наших планах по расчистке и скоординироваться с ними, как им лучше до нас добраться".
Второй вариант разговора
Вопрос: "Что делать, Джеймс?"
Ответ: "Босс, надо сначала расчищать дорогу 2, ведущую к горнолыжным курортам. Все наши постояльцы — это горнолыжники. Кроме того, оставшиеся 30 человек скорее всего сначала заедут на курорт, покатаются там до вечера и вечером поедут к нам — не будут же они терять сегодняшний день, я сам заказывал им пропуска со скидкой на подъемники, а пропуска начинают действовать сегодня".
Третий вариант разговора
Вопрос: "Что делать, Джеймс?"
Ответ: "Босс, нет проблем. Нам нужно расчистить и дорогу 1, и
дорогу 2. Я не знаю, что важнее. Но знаю номер телефона моего приятеля — владельца снегоочистительной компании, он даст нам хорошую цену, и двумя машинами мы сможем к полудню расчистить обе дороги. Ну, потратим немного денег, зато сохраним репутацию отеля, ставящего заботу о клиенте выше всего".
Мораль:
субъективные суждения, основанные на тупосамонадеянном "Абсолютно очевидно", могут элементарно завести нас в ситуацию, когда ресурсы потрачены впустую, так как не учитывают реальности. В то же время выводы, сделанные исходя из достоверной информации, ведут к эффективным решениям даже при нехватке ресурсов.
Нигилистический настрой и практическая методология
То, что сделал для нас мистер Джеймс, было оценкой риска. Он смог сделать оценку риска, так как
• владел информацией и
• знал, как этой информацией распорядиться.
Обратно к тестированию ПО.
Наша задача — это
• получить информацию,
• если возможно, узнать мнение человека, владеющего вопросом, и
• оценить риск по каждой из функциональностей, которые предстоит протестировать.
Людьми, которые владеют вопросом, могут быть продюсер, главный бухгалтер, финансовый директор, бизнес-аналитик. Информацию можно получить также из статистики или других источников.
Поверьте, что такой подход даст удивительные результаты.
Допустим, у нас есть небольшой проектик, где нужно протестировать новый (переписанный и оптимизированный) код для уже давно существующих функциональностей:
а) сделки купли-продажи между пользователями внутри Аме
рики;
б) сделки купли-продажи между пользователями в Японии;
в) сделки купли-продажи между пользователями в Японии
и США.
Разложим эти функциональности:
Таблица 1
Индекс_эл_001 | Индекс_эл_002 | Индекс_эл_003 | Индекс_эл_004 | |
Продавец | ||||
Американец | X | |||
Японец | X | |||
Покупатель | ||||
Американец | X | |||
Японец | X |
Тестирование Дот Ком. Часть 3
Таблица 2
Индекс_эл_001 | Индекс_эл_002 | Индекс_эл_003 | Индекс_эл_004 | |
Продавец американец —> Покупатель американец | X | |||
Продавец американец —» Покупатель японец | X | |||
Продавец японец — > Покупатель американец | X | |||
Продавец японец — > Покупатель японец | X |
Помните, я говорил, что применение методов генерирования тестов дает вам более глубокое понимание спека? Вот и теперь, делая матричную раскладку, мы увидели, что на самом деле у нас не три, а четыре направления для тестирования. Разложим их на блок-схеме.
Блок-схема по спеку #1123
Дата добавления: 2015-12-07; просмотров: 68 | Нарушение авторских прав