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

Фотография

Тестирование Поиска метадом All pairs testing - плюсы и минусы


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

#1 linki09

linki09

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

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

Отправлено 24 сентября 2009 - 16:20

Решила попробовать метод All pairs применительно к тестирвоанию Поиска. У меня 5 различных параметров:
Keyword (можно взять несколько вариантов, вроде: полное и неполное совпадение, поиск по одной букве, цифре, специяальному символу...), Date( начало и конец), Site (2 значения), Type (4 значения) и Global (true, false). PICT (простая тулза, которая определяет количество сочетаний) выдал 25 сочетаний.

На сколько это кажется целесообразным? Какие плюсы и минусы? может не стоит маяться этим?

Какие еще есть варианты для тестирования ПОИСКА?

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


Заранее спасибо всем ответившим!
  • 0

#2 rlabs

rlabs

    Специалист

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

Отправлено 24 сентября 2009 - 20:32

Возьмите первую строку из набора сгенеренных значений, скопируйте сюда и объясните этот тест-кейс.

Получится - надо продолжать этим заниматься, нет - надо сначала почитать что-нибудь из классиков.
  • 0

#3 Pryanik

Pryanik

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

  • Members
  • PipPipPip
  • 214 сообщений
  • Город:МОСКВА

Отправлено 25 сентября 2009 - 06:04

Решила попробовать метод All pairs применительно к тестирвоанию Поиска. У меня 5 различных параметров:
Keyword (можно взять несколько вариантов, вроде: полное и неполное совпадение, поиск по одной букве, цифре, специяальному символу...), Date( начало и конец), Site (2 значения), Type (4 значения) и Global (true, false). PICT (простая тулза, которая определяет количество сочетаний) выдал 25 сочетаний.

На сколько это кажется целесообразным? Какие плюсы и минусы? может не стоит маяться этим?


Какая у вас цель?

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

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

#4 SALar

SALar

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

  • Members
  • PipPipPipPipPipPip
  • 2 298 сообщений
  • Город:Москва


Отправлено 25 сентября 2009 - 07:13

Я бы выдвинул гипотезу, что эти параметры независимы. В этом случае метод All pairs избыточен. А вот правильный набор тестов - это очень интересная тема.
  • 0

-- 

Сергей Мартыненко

Блог 255 ступеней (байки для оруженосца)

facebook (Дети диаграммы Ганта)

ВебПосиделки клуба имени Френсиса Бэкона 

 


#5 linki09

linki09

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

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

Отправлено 25 сентября 2009 - 12:18

пожалуй, я соглашусь с предыдущим автором. All-pairs методология в данном случае излишняя.

Основными тестами в данном случаем не кажутся такими:

1. Проверить каждый из параметров отдельно, найти заранее созданный контент
2. Попробовать поикать с заданными только mandatory параметрами
3. побробовать поискать с заданными всеми параметрами
4. проверить что сортировку выдаваемых результов
5. проверить что все найденные записи содержат в себе все введенное в строку запроса
4. Проверить case-sensetive
5. Поискать по части слова, полному слову, по спецсимволу или строке со спецсимволом, по цифре(ам)
6. Наверное можно потестировать граничные значения дат
7. Если применяются специальные символы для поиска, типо * , not, or и т.д., тоже глянуть на них. (в моем случае этого нет)
.....

добавите?
  • 0

#6 Clauster

Clauster

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

  • Members
  • PipPipPipPipPipPip
  • 1 913 сообщений
  • ФИО:Худобородов Валерий
  • Город:Espoo

Отправлено 25 сентября 2009 - 13:56

пожалуй, я соглашусь с предыдущим автором. All-pairs методология в данном случае излишняя.

Основными тестами в данном случаем не кажутся такими:

1. Проверить каждый из параметров отдельно, найти заранее созданный контент
2. Попробовать поикать с заданными только mandatory параметрами
3. побробовать поискать с заданными всеми параметрами
4. проверить что сортировку выдаваемых результов
5. проверить что все найденные записи содержат в себе все введенное в строку запроса
4. Проверить case-sensetive
5. Поискать по части слова, полному слову, по спецсимволу или строке со спецсимволом, по цифре(ам)
6. Наверное можно потестировать граничные значения дат
7. Если применяются специальные символы для поиска, типо * , not, or и т.д., тоже глянуть на них. (в моем случае этого нет)
.....

добавите?

У вас тут в "тестах" намешано все подряд: и исходные состояния, и входные данные, и ожидаемый результат. Тест тут один - что-то вроде "нажать кнопку Поиск".
  • 0

#7 Clauster

Clauster

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

  • Members
  • PipPipPipPipPipPip
  • 1 913 сообщений
  • ФИО:Худобородов Валерий
  • Город:Espoo

Отправлено 26 сентября 2009 - 21:27

У вас тут в "тестах" намешано все подряд: и исходные состояния, и входные данные, и ожидаемый результат. Тест тут один - что-то вроде "нажать кнопку Поиск".

До сих пор никто не опроверг? Становится скучно...
  • 0

#8 DrVal

DrVal

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

  • Members
  • PipPipPip
  • 230 сообщений
  • ФИО:Drozdov V. V.

Отправлено 28 сентября 2009 - 06:44

А что тут обсуждать? Нет тестовой модели.

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

Я бы задачу поиска свел к задаче фильтрации выборки (возвращается все, а фильтр отсекает ненужное по заданному критерию).
Можно предположить, что разработчики системы разумные люди и искпользуют какой-нибудь рапространенный SQL сервер в качестве бэк-енда.

Т.к. образом задача распадается на 3:
- трансляция введеных значений с формы в SQL выражения
- получение выборки из базы
- отображение результатов

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

1-я подзадача - тестирование трансляции формы в SQL выражение.
Датасеты не нужны, pairwise не нужен (достаточно ортогональности).
Нужно знать SQL grammar, граничные условия для каждого поля, приведение типов данных, специальные символы, sql-injections.

3-я подзадача
Датасеты не нужны, pairwise не нужен.
Берем запросы из 1. и сравниваем выборку через SQL запрос с выводом.
Здесь зоны риска - объем буфера для передачи данных, трансляция результатов (если требуется).

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

До сих пор никто не опроверг? Становится скучно...


  • 0

#9 Radost_

Radost_

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

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

Отправлено 23 декабря 2011 - 06:47

сама решила вопрос

Сообщение отредактировал Radost_: 23 декабря 2011 - 07:46

  • 0

#10 Drag

Drag

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

  • Members
  • PipPip
  • 123 сообщений


Отправлено 26 декабря 2011 - 00:56

Можете почитать соседнюю тему
  • 0

#11 Molechka

Molechka

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

  • Members
  • PipPipPipPipPipPip
  • 1 224 сообщений
  • ФИО:Ольга Назина (Киселева)
  • Город:Москва


Отправлено 08 января 2012 - 20:06

Минус ???... как раз метод all pairs позволяет снизить число тестовых вариантов, по сравнению с переборов всевозможных.
К тому же данные можно создать автоматически... впрочем как и сами тесты.


Можно поподробнее?
Про создание тестов автоматически)))

У меня возник вопрос к читавшим Lee Copeland-а, он приводит сайт - http://www2.research...adir/index.html
И, как я поняла, он не ищет по числу строк, он ищет комбинацию колонок, которая удовлетворит требованиям его комбинации колонок :)

Только вот я не нашла там выбранной им матрицы. Где он ее взял тогда? :(
  • 0
Автор сайта для начинающих тестировщиков http://testbase.ru/
Автор портала проверки названий багов http://bugred.ru/
Веду блог http://okiseleva.blogspot.com/

#12 rpwheeler

rpwheeler

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Подолян Роман Николаевич

Отправлено 27 марта 2012 - 00:05


Минус ???... как раз метод all pairs позволяет снизить число тестовых вариантов, по сравнению с переборов всевозможных.
К тому же данные можно создать автоматически... впрочем как и сами тесты.


Можно поподробнее?
Про создание тестов автоматически)))

У меня возник вопрос к читавшим Lee Copeland-а, он приводит сайт - http://www2.research...adir/index.html
И, как я поняла, он не ищет по числу строк, он ищет комбинацию колонок, которая удовлетворит требованиям его комбинации колонок :)

Только вот я не нашла там выбранной им матрицы. Где он ее взял тогда? :(


Не знаю, насколько актуален еще ответ, но попробую.

Подробно - блестящая статья Майкла Болтона.

http://www.developse...iseTesting.html
"Pairwise Testing" by Michael Bolton

На сайте, посвященном методике, есть ссылки и на и другие статьи по теме:
http://www.pairwise.org/articles.asp
"Articles and Other Resources" on topic

http://www.pairwise.org/tools.asp
"Pairwise Testing - Available Tools"
- здесь ссылки на инструменты. Есть устаревшие, есть рабочие.

Jenny - один из рабочих.
http://burtleburtle....math/jenny.html
- ссылка на описание и на скачивание.

Список комбинаций от Jenny можно легко превращать в текстовый какой-нибудь программой для множественной замены.



Ранее подымавшиеся по вопросу темы на форуме:

http://software-test...rum/topic/2113/
Сайты посвящённые Pairwise Testing

http://software-test...rum/topic/1599/
Зависимые тесты как сократить число тестов

http://software-test...forum/topic/90/
Ортогональные матрицы для тестирования

http://software-test...forum/topic/91/
Пример ортогональной матрицы
  • 0

#13 oleg_m

oleg_m

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

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


Отправлено 28 марта 2012 - 09:05

Любой способ минимизации - это уже минус. Будь то ортогональный массив, метод всех пар, выбор граничных значений (разбиение на классы эквивалентности) или подбор тестов на основании кода и способов валидации. Только не надо на меня набрасываться, я все прекрасно понимаю, что должен быть здравый смысл, что никто никогда не проводит полного тестирования (даже если диапазоны допустимых данных достаточно узкие (0-5)), что это избыточно, нецелесобразно, неэффективно и так далее. Да, я и сам активный преверженец эффективной минимизации. И даже если можно где-то автоматизировать полный перебор всех допустимых/недопустимых данных, я все равно этого не стану делать.

Но если мы говорим про отход от полного тестирования и обсуждаем его минусы, то это и есть самый главный минус - уход от полного тестирования. Это риск потерять комбинацию данных, это риск ошибки в анализе того, что можно выкинуть, а что - нет. Но, наверно, это единственный минус отхода от полной проверки. Если что-то неожиданное выстрелит, то сделает это один раз. В следующий раз мы это уже учтем (если не уволят, то там же; если уволят, то на новом месте).
  • 0

#14 Tony Fry

Tony Fry

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

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Антон Фрай


Отправлено 28 марта 2012 - 09:44

У меня лопнул глаз от слова "метадом", извините.
  • 0

#15 astenix

astenix

    Специалист

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


Отправлено 28 марта 2012 - 12:41

У меня лопнул глаз от слова "метадом", извините.

Автор хотел написать "метадон" :victory:
  • 0

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


#16 oleg_m

oleg_m

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

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


Отправлено 28 марта 2012 - 15:26

У меня лопнул глаз от слова "метадом", извините.


(сорри за спам) то есть на аве последний оставшийся?
  • 0

#17 Tony Fry

Tony Fry

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

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Антон Фрай


Отправлено 29 марта 2012 - 03:05


У меня лопнул глаз от слова "метадом", извините.


(сорри за спам) то есть на аве последний оставшийся?

следующая мысль после того как отправил пост - "кто-нибудь обязательно спросит об этом" :)
  • 0


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

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