Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Санитарное тестирование или проверка согласованности/исправности или Sanity Testing

Лекция



Привет, Вы узнаете о том , что такое санитарное тестирование, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое санитарное тестирование, проверка согласованности, проверка исправности, sanity testing , настоятельно рекомендую прочитать все из категории Качество и тестирование программного обеспечения. Quality Assurance..

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

Отличие санитарного тестирования от дымового (Sanity vs Smoke testing)

В некоторых источниках ошибочно полагают, что санитарное и дымовое тестирование - это одно и тоже. Мы же полагаем, что эти виды тестирования имеют "вектора движения", направления в разные стороны. В отличии от дымового (Smoke testing), санитарное тестирование (Sanity testing)направлено вглубь проверяемой функции, в то время как дымовое направлено вширь, для покрытия тестами как можно большего функционала в кратчайшие сроки.

Санитарное тестирование или проверка согласованностиисправности или Sanity Testing

Дымовое и санитарное тестирование - самые непонятные темы в тестировании программного обеспечения. По этой теме существует огромное количество литературы, но большинство из них сбивает с толку.

Ключевые различия между Smoke и Sanity Testing можно понять с помощью следующей диаграммы:

Санитарное тестирование или проверка согласованностиисправности или Sanity Testing

Чтобы оценить приведенную выше диаграмму, позвольте сначала понять -

Что такое программная сборка?

Если вы разрабатываете простую компьютерную программу, которая состоит только из одного файла исходного кода, вам просто нужно скомпилировать и связать этот один файл, чтобы создать исполняемый файл. Это очень простой процесс.
Обычно это не так. Типичный программный проект состоит из сотен или даже тысяч файлов исходного кода. Создание исполняемой программы из этих исходных файлов - сложная и трудоемкая задача.
Для создания исполняемой программы необходимо использовать программное обеспечение «сборки», и этот процесс называется « Сборка программного обеспечения ».

Дымовое тестирование

Smoke Testing - это метод тестирования программного обеспечения, выполняемый после сборки программного обеспечения, чтобы убедиться, что критически важные функции программного обеспечения работают нормально. Он выполняется до выполнения каких-либо подробных функциональных или регрессионных тестов. Основная цель дымового тестирования - отклонить программное приложение с дефектами, чтобы команда QA не тратила время на тестирование сломанного программного приложения.

В Smoke Testing в тестовых примерах была выбрана наиболее важная функциональность или компонент системы. Цель состоит не в том, чтобы выполнить исчерпывающее тестирование, а в том, чтобы убедиться, что критически важные функции системы работают нормально.
Например, типичный дымовой тест: Убедитесь, что приложение запускается успешно, Убедитесь, что графический интерфейс реагирует ... и т. Д.

КЛЮЧЕВАЯ РАЗНИЦА

  • Smoke Testing имеет цель проверить «стабильность», в то время как Sanity Testing имеет цель проверить «рациональность».
  • Дымовое тестирование выполняется как разработчиками, так и тестировщиками, тогда как тестирование на работоспособность выполняется тестировщиками.
  • Smoke Testing проверяет критически важные функции системы, в то время как Sanity Testing проверяет новые функции, такие как исправления ошибок.
  • Дымовое тестирование - это часть приемочного тестирования, тогда как тестирование работоспособности - это часть регрессионного тестирования.
  • Дымовое тестирование задокументировано или написано по сценарию, а тестирование на работоспособность - нет.
  • Дымовое тестирование проверяет всю систему от начала до конца, тогда как проверка работоспособности проверяет только определенный компонент.

Что такое санитарное тестирование?

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

Целью является «не» тщательная проверка новой функциональности, а определение того, что разработчик применил некоторую рациональность (здравомыслие) при создании программного обеспечения. Об этом говорит сайт https://intellect.icu . Например, если ваш научный калькулятор дает результат 2 + 2 = 5! Тогда нет смысла тестировать расширенные функции, такие как sin 30 + cos 50.

Отличия дымового тестирования и санитарного тестирования

Дымовое тестирование Санитарное тестирование
Дымовое тестирование выполняется, чтобы убедиться, что критически важные функции программы работают нормально. Тестирование работоспособности проводится для проверки новой функциональности / исправления ошибок.
Целью этого тестирования является проверка «стабильности» системы, чтобы продолжить более тщательное тестирование. Цель тестирования - проверить «рациональность» системы, чтобы продолжить более тщательное тестирование.
Это тестирование проводят разработчики или тестировщики. Проверка работоспособности обычно выполняется тестировщиками.
Дымовые тестирование обычно документируются или создаются по сценарию. Тестирование работоспособности обычно не документируется и не требует написания сценария.
Дымовое тестирование - это часть приемочного тестирования. Тестирование работоспособности - это разновидность регрессионного тестирования.
Дымовое тестирование проверяет всю систему от начала до конца Проверка работоспособности проверяет только конкретный компонент всей системы
Дымовое тестирование похоже на общий осмотр здоровья Проверка работоспособности похожа на специализированную проверку здоровья

На заметку.

  • И тесты работоспособности, и дымовые тесты - это способы избежать потери времени и усилий, быстро определив, является ли приложение слишком ущербным, чтобы заслужить какое-либо тщательное тестирование.
  • Тестирование работоспособности также называется приемочным тестированием тестера.
  • Дымовое тестирование, выполняемое для конкретной сборки, также известно как тест проверки сборки .
  • Одна из лучших отраслевых практик - проводить ежедневную сборку и дымовое тестирование программных проектов.
  • Тесты на дымность и работоспособность можно выполнять вручную или с помощью средств автоматизации . Когда используются автоматизированные инструменты, тесты часто инициируются тем же процессом, который генерирует саму сборку.
  • В соответствии с потребностями тестирования вам может потребоваться выполнить тесты на работоспособность и дымность в сборке программного обеспечения. В таких случаях вы сначала выполните Smoke-тесты, а затем продолжите Sanity Testing. В промышленности тестовые примеры для тестирования работоспособности обычно объединяются с тестовыми примерами для дымовых тестов, чтобы ускорить выполнение тестов. Следовательно, термины часто путают и используют как синонимы.

Санитарное тестирование или проверка согласованностиисправности или Sanity Testing

Sanity check

Короче, нет никакого санитарного тестирования.

Само слово Sanity переводится на русский язык проще:

  • вменяемость,
  • здравомыслие,
  • нормальная психика.

Нет там никаких санитаров. То, что вы называете Sanity, по-сути есть Smoke testing.

Я еще не знаю, когда эти термины появились, но уже давно ясно, что это два разных названия одного и того же феномена. Просто тестировщики называют это Smoke, а программисты называют это Sanity. Так они привыкли, так оно укрепилось в их литературе.

Судя по моему опыту чтения старых книг для программистов, sanity было первым.

Канер в своей книге Testing Computer Software (1988, у меня второе издание, 1999-го) не упоминает ни про smoke, ни про sanity. Самое близкое к ним есть в главе 3 ‘Test types & Software development‘ на стр. 51, и ВНЕЗАПНО оно там называется «Acceptance testing»:

Each time you receive a new version of the program, check whether it’s stable enough to be tested. If it crashes at the slightest provocation, don’t waste your time on it. This first bit of testing is called acceptance or qualification testing.

На стр. 54 та же тема с уточнениями в разделе ‘Final acceptance testing and certification‘:

If your company developed the program on contract, the customer will ran an acceptance test when you deliver it. In small projects, this test may be informal. For most projects, however, test details are agreed to in advance, in writing. Make sure the program passes the test before trying to deliver it to the customer. An acceptance test usually lasts less than a day. It is not a thorough system test. Beizer (1984) describes the preparation and execution of formal customer acceptance tests. Perry (1986) is, in effect, a customer’s guide to creating acceptance tests. Consider using Perry (1986) to structure your negotiations with the customer when you jointly design the acceptance test.

Цитата на books.google.com

Для тех, кто не может прочитать больше одного предложения в абзаце перевожу:

заранее и письменно согласуйте с заказчиком набор приемочных тестов. Убедитесь сами в том, что релиз на них не завалится. Ранее об этом писали Бейзер (1984) и Перри (1986).

Это воспринимается странно, бо в наше время «Acceptance testing» объясняется как «Заказчик сам тестирует, как хочет». И да, вероятно, он будет основываться на наших смоук-тестах. Предполагаю, что в наше время этот термин просто истолковывается неверно, но это уже не существенно.

А вот в 2001-ом Канер уже упоминает Smoke testing в «Lessons Learned in Software Testing: A Context-Driven Approach» на страницах xxvi (это предисловие, там сходу заявлены определения ключевых терминов), 41, 121, 162, 163, 169, 141 и 144. И ни разу не упоминается sanity testing.

Рекс Блэк в «Ключевые процессы тестирования» (2004) упоминает эти два термина одновременно. В русскоязычном издании «Лори» 2006-го года они на стр. 532:

Приемочное тестирование, тестирование на исправность (Smoke Test, Sanity Test). Тестирование, проверяющее, насколько стабильная предлагаемая на тестирование версия, чтобы можно было начинать штатное тестирование. Обычно это подмножество всего комплекта тестов, как правило, автоматизированное, затрагивающее все части системы, по крайней мере, поверхностно. Качественные приемочные тесты обычно довольно долго проверяют работу системы, чтобы проявились серьезные проблемы надежности и работоспособности. Термин “smoke test” (тест на задымленность) взят из электротехники: когда инженер включает цепь, первичный тест проверяет, не дымятся ли компоненты.

Википедия

ВНЕЗАПНО сообщает о том, что сэнити — даже не из мира тестирования, термин существует сам по себе, и применим ко всем аспектам человекодеятельности, от сервировки обеденного стола до запуска ядренной атомной бомбы на головы мирных жапонцев.

In computer science, a sanity test is a very brief run-through of the functionality of a computer program, system, calculation, or other analysis, to assure that part of the system or methodology works roughly as expected. This is often prior to a more exhaustive round of testing.

Огромное, гигантское отличие от smoke test, да?!

ISTQB (скачать файл Glossary all terms 3.1.pdf).

Sanity test объявлен синонимом smoke test (стр. 61).

В канонах ISTQB вы не сомневаетесь, не так ли?!

Толковалка ISTQB

It is a kind of software testing which is done by the testers to ensure that the functionality is working as expected.

Огромная разница со smoke test, да?!

Кто-то сделал почти тот же обзор книг в поисках тех же терминов, что и я: almeln.github.io, и пришел к тем же выводам.

О переводах: «Да, но ведь гугл переводит это слово именно так!»

Санитарное тестирование или проверка согласованностиисправности или Sanity Testing

Google переводит слово Sanity

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

И напоследок. Я предполагал, что ебалайтунг с терминологией присущ нашему, русскоязычному сектору. Например, вон чего на protesting.ru пишут:

В некоторых источниках ошибочно полагают, что санитарное и дымовое тестирование — это одно и тоже. Мы же полагаем, что эти виды тестирования имеют «вектора движения», направления в разные стороны.

Но он процветает и на английской стороне. Быстро нагуглилась статья на эту тему с сайта h2kinfosys.com — оба термина представлены как нечто обособленное. Понятия не имею, что это за контора из штата Джорджия (США), но о себе они говорят «H2k Infosys provides world class IT Training, Real-time Live Project to gain hands on experience, and IT Staffing services».

Вау!! 😲 Ты еще не читал? Это зря!

тестирование сборки , build verification test ,

дымовое тестирование , smoke testing ,

Выводы из данной статьи про санитарное тестирование указывают на необходимость использования современных методов для оптимизации любых систем. Надеюсь, что теперь ты понял что такое санитарное тестирование, проверка согласованности, проверка исправности, sanity testing и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Качество и тестирование программного обеспечения. Quality Assurance.

создано: 2016-04-02
обновлено: 2021-03-13
132737



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей



Комментарии


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

Качество и тестирование программного обеспечения. Quality Assurance.

Термины: Качество и тестирование программного обеспечения. Quality Assurance.