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

Фотография

задача - тестирование подсчета типа треугольника


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

#1 earx

earx

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

  • Members
  • Pip
  • 4 сообщений

Отправлено 12 октября 2004 - 23:38

Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.

Как и что будем тестить? :)
  • 0

#2 dlg99

dlg99

    Специалист

  • Members
  • PipPipPipPipPip
  • 609 сообщений
  • ФИО:Andrey Yegorov
  • Город:Redmond, WA

Отправлено 12 октября 2004 - 23:56

Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.

Как и что будем тестить? :)

Насколько я помню, это пример из "Искусство тестирования программ" г-на Майерса. Или очень похож Ж)

Автору вопроса - дальнейших успехов в чтении. :P
  • 1
Andrey Yegorov. Изображение

#3 Elena12

Elena12

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

  • Members
  • Pip
  • 12 сообщений
  • Город:Санкт-Петербург

Отправлено 13 октября 2004 - 07:03

Знаю, где это задание дают на собеседовании тестерам. :)
хотя возможно не только там.
  • 0

#4 barancev

barancev

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

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


Отправлено 13 октября 2004 - 07:06

Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.

Как и что будем тестить? :)

Очень похоже на учебный пример. Не хватает указания на то, какой ожидается ответ :)

Поэтому отвечу так, как будто это не учебный пример, а реальная задача.

Есть такой бородатый анекдот, заканчивающийся словами:
- "Сколько будет дважды два?"
- "А сколько вам надо?"

Так вот, хочется спросить, а Вам что нужно тестить? Что нужно, то и будем.

Какие характеристики качества будем проверять? Функционал? Производительность? Устойчивость? Качество документации (то есть удобство использования и соспровождения)? Переносимость? А может быть, для начала проанализируем качество требований (например, уточним, три каких числа -- целых или вещественных)?

Учебные примеры, которые предполагают контекст, должны даваться в этом контексте. Иначе они могут иметь далеко идущие последствия :)

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

#5 Green

Green

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

  • Members
  • PipPipPipPipPipPip
  • 1 233 сообщений
  • ФИО:Гринкевич Сергей
  • Город:Москва

Отправлено 13 октября 2004 - 09:24

To barancev,

Cool!!!
:P
  • 0
Гринкевич Сергей

#6 earx

earx

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

  • Members
  • Pip
  • 4 сообщений

Отправлено 13 октября 2004 - 19:18

Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.

Как и что будем тестить? :)

Насколько я помню, это пример из "Искусство тестирования программ" г-на Майерса. Или очень похож Ж)

Автору вопроса - дальнейших успехов в чтении. :P

нечестно :)
  • 0

#7 Selftest

Selftest

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

  • Members
  • Pip
  • 30 сообщений
  • Город:СПб

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

Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.

Как и что будем тестить? :)


я бы так порешал, возможно, неправильно
главное условие построения треугольника a < b+с, a<>0, b<>0, c<>0
соответственно надо протестировать a <= b+с и a = b+с
добавить тесты a=0, b=0, c=0
ну и тесты на a=b и a=b=c
  • 0

#8 ch_ip

ch_ip

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

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 20 сентября 2011 - 09:11


Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.

Как и что будем тестить? :)


я бы так порешал, возможно, неправильно
главное условие построения треугольника a < b+с, a<>0, b<>0, c<>0
соответственно надо протестировать a <= b+с и a = b+с
добавить тесты a=0, b=0, c=0
ну и тесты на a=b и a=b=c

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

#9 Zhu

Zhu

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

  • Members
  • PipPipPipPip
  • 288 сообщений
  • ФИО:Рина Ужевко
  • Город:Москва


Отправлено 20 сентября 2011 - 09:44

поддерживаю предыдущего оратора.
у меня получилось около 30 тестов.
но думаю что можно до 45-50 дойти легко.)и не факт что это конечный результат)
  • 0
Bugs@Feature
Не бывает совершенных программ, бывают недотестированные.

#10 ch_ip

ch_ip

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

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 20 сентября 2011 - 10:04

поддерживаю предыдущего оратора.
у меня получилось около 30 тестов.
но думаю что можно до 45-50 дойти легко.)и не факт что это конечный результат)

Да, 50 стоящих тестов там легко получается
  • 0

#11 Future

Future

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

  • Members
  • PipPipPipPip
  • 261 сообщений
  • Город:Москва

Отправлено 08 ноября 2012 - 19:26

Кстати, есть ли что-то типа сборника задач для тестировщиков? Я знаю что для разработчиков такая книга есть, которая предназначена именно для подготовки к собеседованиям.
  • 1

#12 ch_ip

ch_ip

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

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 11 ноября 2012 - 21:38

Кстати, есть ли что-то типа сборника задач для тестировщиков? Я знаю что для разработчиков такая книга есть, которая предназначена именно для подготовки к собеседованиям.

Сдается мне, что поиск по форуму и блогам легко предоставит такой список задачек :)
Ну и сходить на пяток собеседований в разные конторы тоже бывает полезно.
А вообще, подготова к собеседованию, кажется, имеет смысл только для джуниоров на текущем рынке.

P.S. Вопрос может в отдельную тему вынести, а то сильный оффтопик получается
  • 0

#13 negro

negro

    Активный участник

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Себастьян Переро
  • Город:Скотопригоньевск

Отправлено 16 ноября 2012 - 14:37

Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.
Как и что будем тестить? :)

Начнём:
1) имеет место математическая безграмотность сформулировавших данную задачу. Заметим, равносторонний треугольник является равнобедренным, следовательно на выходе программы могут быть только два типа треугольника - равнобедренный и простой!
2) очевидно, но невероятно: как при странной постановке задачи некоторые выдали десятки "стоящих" тестов!?

Знаю, где это задание дают на собеседовании тестерам. :)

Передайте, пожалуйста, туда, где эти задания дают, чтобы они не позорились (а то тестеры, получив такое на собеседовании, будут сразу вставать и уходить искать работу в другой компании) и исправили своё задание:
на выходе следует ожидать одно из 5 значений:
1 - невырожденный треугольник, у которого все 3 стороны равны;
2 - невырожденный, у которого только 2 стороны равны;
3 - невырожденный, у которого нет равных сторон;
4 - вырожденный треугольник;
5 - в случае ошибки ввода/обработки.
  • 1

#14 ch_ip

ch_ip

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

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 17 ноября 2012 - 21:23


Есть пример программы - на вход даются 3 числа, на выходе - тип треугольника - равнобедренный, равносторонний, простой.
Как и что будем тестить? :)

Начнём:
1) имеет место математическая безграмотность сформулировавших данную задачу. Заметим, равносторонний треугольник является равнобедренным, следовательно на выходе программы могут быть только два типа треугольника - равнобедренный и простой!

Равносторонний треугольник, безусловно, является равнобедренным. А вот обратное утверждение неверно, так что типов остается три.

2) очевидно, но невероятно: как при странной постановке задачи некоторые выдали десятки "стоящих" тестов!?

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


Знаю, где это задание дают на собеседовании тестерам. :)

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

Ну вот я даю такое задание. Именно в приведенной формулировке. Готов выслушать, почему кандидаты должны вставать и уходить.
Сразу выдам спойлер: за все время ни один из кандидатов не привел даже 50% ейсов, которые стоит проверить. Обычно я считаю 30% хорошим результатом, говорщим о том, что кандидат владеет навыками тест-дизайна.

исправили своё задание:
на выходе следует ожидать одно из 5 значений:
1 - невырожденный треугольник, у которого все 3 стороны равны;
2 - невырожденный, у которого только 2 стороны равны;
3 - невырожденный, у которого нет равных сторон;
4 - вырожденный треугольник;
5 - в случае ошибки ввода/обработки.

А почему так, если я ожидаю на выходе увидеть тип треугольника, а не 1,2,3,4,5?
  • 1

#15 negro

negro

    Активный участник

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Себастьян Переро
  • Город:Скотопригоньевск

Отправлено 17 ноября 2012 - 22:47

Равносторонний треугольник, безусловно, является равнобедренным. А вот обратное утверждение неверно, так что типов остается три.

Это из разряда - Проблемы с логикой:
во-первых, в задаче длины сторон на входе и на выходе - тип, а не обратное утверждение.
во-вторых, почему обратное утверждение неверно, если у равнобедренного треугольника углы при основании по 60 градусов, он что, не равносторонний?

Ну вот я даю такое задание. Именно в приведенной формулировке.
А почему так,


на выходе следует ожидать одно из 5 значений:
1 - невырожденный треугольник, у которого все 3 стороны равны;
2 - невырожденный, у которого только 2 стороны равны;
3 - невырожденный, у которого нет равных сторон;
4 - вырожденный треугольник;
5 - в случае ошибки ввода/обработки.

если я ожидаю на выходе увидеть тип треугольника, а не 1,2,3,4,5?

Это из разряда - Заказчик сам толком не понимает, чего хочет.
  • 0

#16 ch_ip

ch_ip

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

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 18 ноября 2012 - 06:58


Равносторонний треугольник, безусловно, является равнобедренным. А вот обратное утверждение неверно, так что типов остается три.

Это из разряда - Проблемы с логикой:
во-первых, в задаче длины сторон на входе и на выходе - тип, а не обратное утверждение.
во-вторых, почему обратное утверждение неверно, если у равнобедренного треугольника углы при основании по 60 градусов, он что, не равносторонний?

Учитывая, что даже вы сами признаете, то равенство двух сторон и трех сторон - это разные случаи:

на выходе следует ожидать одно из 5 значений:
1 - невырожденный треугольник, у которого все 3 стороны равны;
2 - невырожденный, у которого только 2 стороны равны;

засим дискуссию о количестве типов предлагаю завершить и дальше не троллить.

Это из разряда - Заказчик сам толком не понимает, чего хочет.

Так большинство реальных требований как раз таки из разряда "Заказчик сам толком не понимает, чего хочет."
И умение задавать правильные вопросы как раз можно проверить.
  • 0

#17 negro

negro

    Активный участник

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Себастьян Переро
  • Город:Скотопригоньевск

Отправлено 18 ноября 2012 - 13:01

засим дискуссию о количестве типов предлагаю завершить и дальше не троллить

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

#18 Freiman

Freiman

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

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 18 ноября 2012 - 17:42

За несколько минут накидал 20+ наборов данных.
Есессно, в них есть повторы вида:
10, 10, 12
10, 12, 10
12, 10, 10
  • 0

#19 negro

negro

    Активный участник

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Себастьян Переро
  • Город:Скотопригоньевск

Отправлено 18 ноября 2012 - 19:44

---

Сообщение отредактировал Drag: 19 ноября 2012 - 07:18
Сообщение отредактировано модератором в связи с тем, что не несет никакой смысловой нагрузки кроме эмоциональной.

  • 0

#20 nhuber

nhuber

    Активный участник

  • Members
  • PipPip
  • 97 сообщений
  • ФИО:Николай
  • Город:Новосибирск

Отправлено 19 ноября 2012 - 04:59

выявление несостоятельности (надеюсь, это все увидели) постановки задачи

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

Сообщение отредактировал nhuber: 19 ноября 2012 - 08:27

  • 2


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

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