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

Фотография

Помогите


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

#21 rlabs

rlabs

    Специалист

  • Members
  • PipPipPipPipPip
  • 660 сообщений
  • Город:Россия, Санкт-Петербург

Отправлено 09 октября 2007 - 12:05

Следующее упражнение. Никогда не слушайте, если вас просят "убедиться в том, что программа работает". Ваша цель как тестировщика - доказать, что программа не работает, или работает плохо, или просто она противная и бяка.

Тут я тоже подключусь, с вашего позволения.

Используя этот подход прошу вас набросать тесты для проверки следующей функциональности:
  • Форма проверки валидности введённого в editbox значения
  • Валидные значения от 0 до 9 целочисленные, включительно
  • Проверка только этого одного условия

Думаю, начал бы со следующего. Обычно бывает два вида проверки валидности: на стадии ввода и на стадии обработки. Допустим, в данном случае проверки на стадии ввода нет (можно вводить всё, что угодно). Тогда проверки следующие:
  • любое валидное значение - работает ли хоть что-то
  • пустой ввод
  • граничные значения
  • нецифровые символы
  • специальные символы, в частности '/', ':', '\', кавычки, пробельные символы (может влиять конкретный язык реализации)
  • смешанный ввод
  • попытка переполнения
  • ввод валидного значения после проверки невалидного
  • ввод невалидного (в т.ч. пустого) значения после проверки валидного
Если рассматриваемое значение имеет смысл не как диапазон, а как перечисление (например, если вводимое значение - ответ на вопрос типа "Укажите номер варианта"), имеет смысл проверить реакцию на каждое валидное значение.
Если есть проверка на стадии ввода (фильтрация вводимых символов), рассматриваем дополнительно его слабые места:
  • хитрый порядок ввода
  • неклавиатурный ввод (буфер обмена, альтернативные устройства ввода)
  • изменение скорости ввода
Примерно так.
  • 0

#22 Case

Case

    Основатель

  • Members
  • PipPipPipPipPipPip
  • 7 071 сообщений
  • ФИО:Панкратов Вячеслав
  • Город:Украина, Киев.

Отправлено 10 октября 2007 - 10:43

Думаю, начал бы со следующего... любое валидное значение - работает ли хоть что-то

А почему вы начинаете с валидного значения (это, конечно, правильно) а учите "поломать"? Вы себе нигде не противоречите, коллега? :acute:
  • 0
Слава Панкратов
Редактор портала www.it4business.ru

#23 rlabs

rlabs

    Специалист

  • Members
  • PipPipPipPipPip
  • 660 сообщений
  • Город:Россия, Санкт-Петербург

Отправлено 10 октября 2007 - 11:59

Думаю, начал бы со следующего... любое валидное значение - работает ли хоть что-то

А почему вы начинаете с валидного значения (это, конечно, правильно) а учите "поломать"? Вы себе нигде не противоречите, коллега? :acute:

Начнем с того, что я не учу "ломать". Я только предупреждаю о неправильности подхода "убедись, что программа работает".

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

Какие-то более конкретные возражения есть?
  • 0

#24 Case

Case

    Основатель

  • Members
  • PipPipPipPipPipPip
  • 7 071 сообщений
  • ФИО:Панкратов Вячеслав
  • Город:Украина, Киев.

Отправлено 11 октября 2007 - 07:35

Вопрос именно в этих "неконкретных"(?) противоречиях.

Пример их жизни, раз уж я не донёс мысль напрямую. Если ставить задачу "надо поломать" то 70-80% аудитории семинаров и тренингов (это моя оценка после 2-3 лет чтения профильных тренингов) начинает усиленно ломать и диктовать мне тесты (а я прошу это сделать именно на этой задачке) с отрицательными значениями, двумя запятыми и ещё чёрти-чем :) После чего у кого-то таки закрадывается мысль что надо бы и на работающих значениях проверить и тут я подвожу черту красным фломастером под списком предложенных тестов и говорю что время отведённое на тестирование истекло. После чего прошу дать ответ "работает ли программа" и получаю очень удивлённую аудиторию. Хотя задачка детсадовская, верно?

Так вот, мой вывод: нет такой задачи "поломать", есть задача "убедиться в работоспособности ПО" как подзадача "обеспечить качество ПО". Критических подход и внутренний настрой тестировщика по отношению к тестируемому продукту мы сейчас (прошу заметить!) не говорим. Мы говорим про постановку задачи и то с чего надо начинать, а начинать надо с проверки работоспособности, валидных значений (и не только в качестве пойдёт или не пойдёт дым), после чего границы, потом негативные тесты.
  • 0
Слава Панкратов
Редактор портала www.it4business.ru

#25 padonich

padonich

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

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

Отправлено 20 февраля 2008 - 17:24

Доброе время суток.
Спрошу здесь, чтоб не плодить темы. Задача таже, что и у топикстартера-тестовое задание. Программа над БД MS SQL. Несколько вопросов:
1) Какие особенности тестирования подобных приложений (может подскажете особенные строки из спецсимволов, которыми при введении можно уронить бд)
2)Имеется панель, назовём ее для примера "шарики" (естественно, в тестовом прилажении речь не про шарики))) В виде таблицы расположены сведения о шариках(ну дляя примера размер, цвет, номер полки на которой лежит шарик, магазин в котором куплен шарик) В инструкции указано: Пользователь в режиме просмотра перечня шариков может выполнять следующие действия:
• Добавление шариков.
• Просмотр и редактирование шариков
• Удаление информации о шариках, КУПЛЕННЫХ В МАГАЗИНЕ №1
в процессе тестирования выесняется что действительно можно удалять шарики только , купленные в магазине №1
Баг ли это? С одной стороны требования, описанные в инструкции выполнены, с другой сталкиваемся с проблемой удаления ошибочно введённых шариков.
3) В принципе вытекает из второго. Отправляя результаты тестирования следует отнестись с осторожностью к перечню багов или наоборот заносить в список всё что мне кажется неправильным или спорным?
  • 0

#26 padonich

padonich

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

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

Отправлено 20 февраля 2008 - 17:24

Доброе время суток.
Спрошу здесь, чтоб не плодить темы. Задача таже, что и у топикстартера-тестовое задание. Программа над БД MS SQL. Несколько вопросов:
1) Какие особенности тестирования подобных приложений (может подскажете особенные строки из спецсимволов, которыми при введении можно уронить бд)
2)Имеется панель, назовём ее для примера "шарики" (естественно, в тестовом прилажении речь не про шарики))) В виде таблицы расположены сведения о шариках(ну дляя примера размер, цвет, номер полки на которой лежит шарик, магазин в котором куплен шарик) В инструкции указано: Пользователь в режиме просмотра перечня шариков может выполнять следующие действия:
• Добавление шариков.
• Просмотр и редактирование шариков
• Удаление информации о шариках, КУПЛЕННЫХ В МАГАЗИНЕ №1
в процессе тестирования выесняется что действительно можно удалять шарики только , купленные в магазине №1
Баг ли это? С одной стороны требования, описанные в инструкции выполнены, с другой сталкиваемся с проблемой удаления ошибочно введённых шариков.
3) В принципе вытекает из второго. Отправляя результаты тестирования следует отнестись с осторожностью к перечню багов или наоборот заносить в список всё что мне кажется неправильным или спорным?
  • 0

#27 rlabs

rlabs

    Специалист

  • Members
  • PipPipPipPipPip
  • 660 сообщений
  • Город:Россия, Санкт-Петербург

Отправлено 20 февраля 2008 - 18:51

1) Какие особенности тестирования подобных приложений (может подскажете особенные строки из спецсимволов, которыми при введении можно уронить бд)

Смотрите в поисковике по запросу "sql injection". Но это только на "уронить". С базами еще многое случается. В частности, тот уровень в приложении, который по данным, введенным в интерфейсе, генерирует запросы, может генерить их неправильно.

• Удаление информации о шариках, КУПЛЕННЫХ В МАГАЗИНЕ №1
в процессе тестирования выесняется что действительно можно удалять шарики только , купленные в магазине №1
Баг ли это? С одной стороны требования, описанные в инструкции выполнены, с другой сталкиваемся с проблемой удаления ошибочно введённых шариков.

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

3) В принципе вытекает из второго. Отправляя результаты тестирования следует отнестись с осторожностью к перечню багов или наоборот заносить в список всё что мне кажется неправильным или спорным?

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

#28 LeshaL

LeshaL

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

  • Members
  • PipPipPipPipPipPip
  • 1 094 сообщений
  • ФИО:Алексей Лянгузов
  • Город:Saint-Petersburg


Отправлено 20 февраля 2008 - 19:46

1) Какие особенности тестирования подобных приложений (может подскажете особенные строки из спецсимволов, которыми при введении можно уронить бд)

Мне кажется, что таких спецсимволов быть не должно. Даже, если то, во что вы хотите ввести такие данные пропускает все подряд без верификации - то сама БД не должна падать. Падать может то, во что ввели неправильные данные.
Иначе бы хакеры по всему миру роняли бы БД одну за другой.

2)Имеется панель, назовём ее для примера "шарики" (естественно, в тестовом прилажении речь не про шарики))) В виде таблицы расположены сведения о шариках(ну дляя примера размер, цвет, номер полки на которой лежит шарик, магазин в котором куплен шарик) В инструкции указано: Пользователь в режиме просмотра перечня шариков может выполнять следующие действия:
• Добавление шариков.
• Просмотр и редактирование шариков
• Удаление информации о шариках, КУПЛЕННЫХ В МАГАЗИНЕ №1
в процессе тестирования выесняется что действительно можно удалять шарики только , купленные в магазине №1
Баг ли это? С одной стороны требования, описанные в инструкции выполнены, с другой сталкиваемся с проблемой удаления ошибочно введённых шариков.

Отлично! Это замечательно, когда человек, занимающийся тестированием не просто слепо следует инструкциям, а думает и сомневается в нечетких, непонятных или нелогичных инструкциях. Так держать.
Я бы в таком случае пошел бы и поговорил с человеком который такие инструкции написал, чтобы прояснить ситуацию. Если этого невозможно сделать - то с человеком, который разрабатывал код. А если и этого не возможно сделать - то написал бы письмо всем заинтересованным людям - пусть думают.
Иной вариант - проконсультироваться у начальника.

3) В принципе вытекает из второго. Отправляя результаты тестирования следует отнестись с осторожностью к перечню багов или наоборот заносить в список всё что мне кажется неправильным или спорным?

К существующему списку багов надо, конечно же, отнестись насторожено. Если вы хотите добавить новый баг, то сперва, надо поискать - а не написал ли кто-нибудь уже такой баг.
Если нет, то есть два варианта - либо все подряд регистрировать. Либо, то в чем вы сомневаетесь, сначала обсудить с коллегами - устно или с помощью писем. Я предпочитаю второй вариант.
То в чем не сомневаетесь - заносить в дефект-трэкер самостоятельно.
  • 0
Regards,
Alexey

#29 padonich

padonich

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

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

Отправлено 20 февраля 2008 - 19:51

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

Удалить данные можно только по принципу : открываем панель редактирования описания шариков- изменяем место покупки на магазин №1-сохраняем изменения-удаляем шарик

Спасибо за ответы
  • 0

#30 Yuliana

Yuliana

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

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

Отправлено 21 февраля 2008 - 14:36

Я бы в таком случае пошел бы и поговорил с человеком который такие инструкции написал, чтобы прояснить ситуацию. Если этого невозможно сделать - то с человеком, который разрабатывал код. А если и этого не возможно сделать - то написал бы письмо всем заинтересованным людям - пусть думают.
Иной вариант - проконсультироваться у начальника.

Есть еще вариант – записать багу по документации. Описание такой–то части функционала не содержит полноценной информации и порождает такие–то вопросы. И список вопросов.
  • 0
Regards,
Yuliana

#31 Yuliana

Yuliana

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

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

Отправлено 21 февраля 2008 - 14:43

Если есть поля для ввода значений, которые должны сохраняться в базе, можно проверить ввод недопустимых значений, ввод значений с недопустимой длиной, недопустимого типа и т.п.
  • 0
Regards,
Yuliana

#32 padonich

padonich

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

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

Отправлено 23 февраля 2008 - 10:07

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


Ну это я сразу, после проверки функциональности и сделал.
Всем спасибо за ответы!
  • 0


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

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