Size: a a a

QA — Автоматизация

2020 September 30

S

Sergei in QA — Автоматизация
> перебор всех состояний А и Б вполне валидно
А разве случаи
А б
А не б
Не а б
Не делают перебор всех значений? Или нужно именно каждый с каждым? В случае 2 булевых, это не сложно, а если аргументов и их значений больше?) Даже вроде в тестировании стараются обходиться без всевозможных сочетаний через всякие пэар-вайсы
источник

O

Oleg in QA — Автоматизация
Sergei
> перебор всех состояний А и Б вполне валидно
А разве случаи
А б
А не б
Не а б
Не делают перебор всех значений? Или нужно именно каждый с каждым? В случае 2 булевых, это не сложно, а если аргументов и их значений больше?) Даже вроде в тестировании стараются обходиться без всевозможных сочетаний через всякие пэар-вайсы
Мы хотим протестировать в первую очередь логику работы, а не сам код.  Если вдруг код окажется не верным, но при этом покрыт тестами - тесты ничего не покажут.  Вполне может быть ситуация, когда a&&b и a&&!b возвращают одно и то же и программист решил сократить эту ветку.  А может быть они возвращают временно похожие значения, которые могут потом поменяться и тогда это логическая ошибка.
источник

R(

Roman (rpwheeler) in QA — Автоматизация
Sergei
> перебор всех состояний А и Б вполне валидно
А разве случаи
А б
А не б
Не а б
Не делают перебор всех значений? Или нужно именно каждый с каждым? В случае 2 булевых, это не сложно, а если аргументов и их значений больше?) Даже вроде в тестировании стараются обходиться без всевозможных сочетаний через всякие пэар-вайсы
Стараются-то стараются, но
1) это ж от необходимости стараются
2) обозначена валидная причина для +1 варианта -- вот на этом месте логика часто глючит
3) юнит-тесты дешевы по времени

По совокупности причин в этом месте можно не стараться всё обрезать.
источник

S

Sergei in QA — Автоматизация
> 3) юнит-тесты дешевы по времени

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

SO

Samvel Osipyan in QA — Автоматизация
Oleg
Мы хотим протестировать в первую очередь логику работы, а не сам код.  Если вдруг код окажется не верным, но при этом покрыт тестами - тесты ничего не покажут.  Вполне может быть ситуация, когда a&&b и a&&!b возвращают одно и то же и программист решил сократить эту ветку.  А может быть они возвращают временно похожие значения, которые могут потом поменяться и тогда это логическая ошибка.
если я правильно понял то логика в этом такая что эта стадия 4 может в жизни и не наступит никогда, но если, вдруг, случится такое что наступило, то программа должна уметь обрабатывать эту стадию иначе будет крахнута...у меня в работе часто такое тестируется
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
Sergei
> 3) юнит-тесты дешевы по времени

вряд ли юнит-тест бы упал и поймал синий экран смерти, если этот разраб действительно смотрел в нужное место в коде, когда решал что нужно 3 случая а не 4)
(Экран смерти поймал разраб!
От предположения существования других кейсов)
источник

S

Sergei in QA — Автоматизация
я про то что упал бы именно юнит-тест если бы туда добавили 4-ую проверку?
источник

S

Sergei in QA — Автоматизация
я правильно понял, что бага не было?
источник

B

Bola in QA — Автоматизация
посмотрел, почитал
и вот тут как раз проблема тестирования методом белого ящика
разработчик знает кишки софта - и хотел написать тест с учетом этого знания
а куа видит, что на вход подаются 2 параметра => 4 варианта исхода
источник

S

Sergei in QA — Автоматизация
уже пару раз вспомнил анекдот про тестировщика в баре :)
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
Sergei
я правильно понял, что бага не было?
Не было в этом месте, но по статистике этой команды разработки на среднюю фичу пять багов, так что я б не удивилась))
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
Есть для сравнения другая команда, где статистика - 1 баг на три жирных фичи, вот там да, там разрабам можно верить)))
источник

S

Sergei in QA — Автоматизация
вы искали 5-ый баг в этой фиче и поэтому добавили 4-ый кейс? :)
источник

B

Bola in QA — Автоматизация
жирная фича
источник

SM

Serheos Morello in QA — Автоматизация
Sergei
уже пару раз вспомнил анекдот про тестировщика в баре :)
шо за анекдот?)
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
Serheos Morello
шо за анекдот?)
Заходит тестировщик в бар
Вползает в бар
Забегает в бар
Влезает через окно
И заказывает 1 кружку пива
-1 кружку пива
Бесконечность кружек пива
Блаблабла
Заходит обычный посетитель, спрашивает где туалет, бар взрывается
источник

SO

Samvel Osipyan in QA — Автоматизация
Диана Верикова (Кудрявцева)
Заходит тестировщик в бар
Вползает в бар
Забегает в бар
Влезает через окно
И заказывает 1 кружку пива
-1 кружку пива
Бесконечность кружек пива
Блаблабла
Заходит обычный посетитель, спрашивает где туалет, бар взрывается
аахахах👍
источник

R(

Roman (rpwheeler) in QA — Автоматизация
Bola
посмотрел, почитал
и вот тут как раз проблема тестирования методом белого ящика
разработчик знает кишки софта - и хотел написать тест с учетом этого знания
а куа видит, что на вход подаются 2 параметра => 4 варианта исхода
https://en.wikipedia.org/wiki/Code_coverage#Multiple_condition_coverage

(8 вариантов, полный перебор)

и ниже
State coverage – Has each state in a finite-state machine been reached and explored?

про который я говорил.
____

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

B

Bola in QA — Автоматизация
Roman (rpwheeler)
https://en.wikipedia.org/wiki/Code_coverage#Multiple_condition_coverage

(8 вариантов, полный перебор)

и ниже
State coverage – Has each state in a finite-state machine been reached and explored?

про который я говорил.
____

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

R(

Roman (rpwheeler) in QA — Автоматизация
Bola
почему 8? если параметров 2?
Потому что их не 2, а 3, в википедийном примере

if (a or b) and c then
источник