Как выбрать тесты для автоматизации? Быстрый Тест На Беременность – Критерии Выбора И Механизм Действия




Катерина протягом тривалого часу працювала в Україні та Новій Зеландії. Вона – QA з понад десятьма роками досвіду в ІТ та сертифікована Full Advanced ISTQB. Одним із напрямів її роботи є покращення процесів тестування в командах. Тож ми запитали в неї, які ключові проблеми трапляються в роботі команди та як їх можна уникнути чи мінімізувати.


Найперша й найголовніша проблема в тому, що люди не вміють спілкуватися. Я проаналізувала матеріали декількох конференцій та мітапів, аби зрозуміти, що ж нам заважає й що необхідно змінити. Так з’ясувалося, що найчастіше – це проблеми спілкування. Не нестача певних технічних знань, не те, що люди не знають мови програмування тощо, а саме спілкування.

Непорозуміння, невміння домовлятися з девелоперами, із замовниками, між собою спричинюють серйозні проблеми в командах. На жаль, у нас це відбувається скрізь. Це специфіка не тільки ІТ-сфери, а загальна проблема будь-якої спільноти, будь-якої команди. Це пов’язано з дуже багатьма речами. Одна з найважливіших – це відсутність довіри між членами команди. Тобто найбільші проблеми в спілкуванні трапляються, коли люди одне одному не довіряють і їм потрібно якось себе захищати. Тоді затягується процес, збільшуються об’єми документації та бюрократія. Численні ж дослідження та курси для менеджерів доводять: коли в колективі високий ступінь довіри, працювати набагато краще. Процеси забирають менше часу.

Друга дуже серйозна проблема (і вона не технічна, знову-таки) – люди бояться робити помилки. Їх жахає те, які наслідки для них можуть мати ці помилки. Деякі люди бояться розповідати про свої проблеми команді або керівникові та намагаються все вирішити самотужки. Це призводить до того, що проблеми лишаються прихованими майже до точки дедлайна. А коли вони таки виринають на поверхню, то щось вдіяти вже важко.

Саме тому, коли в команді високий ступінь довіри, люди не бояться помилятися та відповідати за свої помилки. Відтак гарному менеджеру в цій команді лишається тільки мінімізувати наслідки цих помилок. У мене є дуже гарний приклад, як саме це працює в нашій компанії. Коли я тільки перейшла в PricewaterhouseCoopers (PwC), у нас був дуже специфічний керівник відділу: для нього завжди було дві точки зору – його та неправильна. І хоч загалом людина була непогана, але дуже вперта. Ступінь довіри в команді був не надто високий, а от people turn over якраз навпаки – люди йшли з команди часто. Після зміни начальства нас зібрали і сказали: «Ми трансформуємося, наше завдання – трансформувати бізнес. Але ми не можемо трансформувати бізнес, не трансформувавши водночас себе. А щоби трансформувати себе, ми маємо вчитися, ми повинні помилятися. Інакше нічого не вийде».

Третя проблема – невміння давати фідбек. Коли ти даєш фідбек, то найперше, що ти повинен розуміти, – яка мета цього фідбеку. Мета фідбеку – це підтримати «правильну» поведінку чи змінити «неправильну».

На жаль, люди дуже рідко надають фідбек на «правильну» поведінку та на «хороші вчинки». Якщо хтось щось зробив добре, то його треба похвалити, треба сказати «ти дуже добре це зробив, дякую, це мені допомогло», можливо, навіть написати листа вдячності. Однак (незрозуміло чому) у нас так не заведено. Якщо ти робиш щось добре, то це просто сприймається як належне. Але коли ти десь схибиш, тобі скажуть все, що про тебе думають. Тоді в людини виникає думка: «Ага, я, виходить, нічого гарного не роблю, я тільки помиляюся, я поганий». Тому, по-перше, фідбек мусить мати коригувальний вплив. Коли ти даєш коригувальний фідбек, треба розуміти, що людина не є поганою. Можливо, щось було зроблено не так, але людина не погана сама по собі. Це як із дітьми: коли дитина вчинить погано, то треба пояснити, що погана не вона, а лише її вчинок. Усі хороші люди можуть помилитися і зробити щось не дуже правильне. Але разом можна виправити це.

Про фідбеки дуже гарно розповідається на manager-tolls.com . Там є хороші безплатні подкасти про стосунки, про те, як їх налагоджувати. Я дуже раджу всім послухати про фідбеки. Там йдеться про те, як їх правильно структурувати та давати. Дуже гарна штука, яка дійсно працює.

З усього вищезгаданого випливає четверта проблема – невміння людей пояснити свою точку зору. Один із прикладів – це різниця контекстів: якщо ти зараз у певному контексті, то це не означає, що всі автоматично мають розуміти цей контекст. Саме тому, коли ти починаєш щось пояснювати (особливо коли ти захоплюєшся), треба обов’язково перевіряти, чи співрозмовники тебе зрозуміли. Треба не забувати наводити приклади.

Ще один дуже важливий аспект цієї проблеми – це неефективні мітинги, неефективні зустрічі. Знову нетехнічна проблема. Я впевнена, що будь-яку технічну проблему можна розв’язати, коли ти працюєш разом із командою: чи то написання автотестів, чи розробка якоїсь дуже хитрої стратегії тестування… – немає жодної різниці. Коли проблему вирішує команда, це вже не проблема, а лише невеличкий технічний челендж.

Що ж до неефективних мітингів – це дуже важка річ, яка з’їдає надто багато часу. Люди, коли там сидять, не завжди розуміють, що вони там роблять. Але чомусь вважається, якщо вони були на тому мітингу, з усім були згодні та не ставили жодних питань, то вони все зрозуміли і все буде добре. Ні.

На тому ж manager-tolls.com є гарна добірка подкастів про ефективні мітинги. Я у своїй компанії нещодавно робила невеличкий тренінг про ефективність мітингів. Там я проводила експеримент про те, що на мітингах треба слухати й аналізувати. Найперше я розбила групу на 4 підгрупи:

Першій групі було поставлено просте питання. В одного з членів команди були ручка та аркуш паперу, куди він міг записувати. У другої групи допоміжних матеріалів не було. Ми обговорювали питання, що вимагало запам’ятовування деталей. Ми провели опитування: інтервʼюери мали розповісти мені те, що їм розповіли їхні партнери. Звісно, ті, хто записував, розповіли більше, ніж ті, хто не записував.

Але далі експеримент був ще цікавішим. Це інші дві групи. Третій групі дозволили записувати чи не записувати – за бажанням інтервʼюера. У четвертій групі цій людині дозволено було гортати FB чи телефон під час питань. Запитання були дуже прості. Типу «Що позавчора ви їли на вечерю?», «Де ви провели вихідні?» тощо. У тих, хто не відволікався на телефон, середній відгук був 5-10 секунд. Але в тих, хто відволікався, відгук був майже 30-40 секунд. Лише порівняйте – 5 секунд і 30 секунд!

Це пов’язано з тим, як працює наш мозок. Це називається behavior economics. У нашого мозку дуже мало ресурсу й коли ти його витрачаєш на різні дрібниці (… як пам’ять процесора чи ЦПУ), то в тебе залишається менше ресурсу на обробку важливих задач. Тож коли ти відволікаєшся, аби відповісти на мейл, почитати FB і т. ін, то уваги й ресурсів твого «процесора» не вистачає на важливу задачу. Відтак дуже важливо, щоби на мітингах не було телефонів, а лептопи були тільки для нотаток. І тут важливо зазначити: краще мати на лептопі програмку скетчінгу, щоби писати прямо на екрані як на папері. Якщо ж у лептопі немає такої крутої опції, то звичайний аркуш паперу завжди згодиться. Адже цікаве свідчення: коли ми записуємо інформацію, ми її запам’ятовуємо краще, бо в нас працює інший відділ мозку.

П’ята проблема так само належить до так званих софт скілс. Вона теж пов’язана з контекстом, але трохи в іншому сенсі. Часто люди намагаються робити все так, як раніше, і не беруть до уваги певний локальний контекст: навички конкретної команди, як побудовано спілкування з девелоперами, бізнес-аналітиками, замовником, з ким завгодно… які є доступні технології, і найголовніше – якою є мета.

Порівняймо: сьогодні ви розробляєте веб-сайт для того, щоби випустити якийсь новий вид супер-ламп і їх треба швидко продати. А назавтра ви, наприклад, розробляєте медичне програмне забезпечення, яке буде відповідати за операцію на серці… Мета та підходи будуть різними. Це головне. Коли ти починаєш працювати, треба розуміти, яка в тебе мета, та її постійно перевіряти: чи вона не змінилася, чи ви працюєте так, аби її досягти. Це, знов-таки, стосується не лише програмістів чи тестувальників. Це застосовно взагалі до всього. Треба чітко обговорювати й розуміти цілі: важливо, аби вони були спільними. Бо в команді дуже часто буває таке, що в усіх вони різні. Хтось із девелоперів прийшов вивчити нові підходи до програмування, хтось прийшов відсидіти свої 8 годин та щось за це отримати… А мета має бути одна – зробити класний продукт, який буде допомагати людям.

Коли в тебе є мета, ти і працюєш краще, бо розумієш, чого тобі треба досягти. Ти ліпше розумієш, як тобі співпрацювати з іншими. Ти можеш чітко пояснити, що тобі потрібно від цих інших. Як бачимо, усе переплітається: якщо у вас усіх одна мета, вам простіше працювати в команді, ви довіряєте одне одному, ваші мітинги стають ефективними, ви в одному контексті. Тож виходить, що все починається з визначення спільної мети. А від неї вже залежить, як працювати над рештою складників. Мету я невипадково лишила наостанок, адже треба було до цього дійти. Як говорила моя вчителька англійської: the last but not the least. Тобто остання лише в списку, але не на останньому місці.

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

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

Все тесты на беременность распознают беременность путём определения уровня хорионического гонадотропина человека (ХГЧ) в моче. Хорионический гонадотропин начинает выделяться с момента, когда оплодотворённая яйцеклетка прикрепляется к стенке матки. Изначально показатели ХГЧ являются мизерными, но далее, начиная со второй и до пятой недели беременности, показатели ХГЧ удваиваются каждые 1,5 суток. Через пару недель от момента зачатия уровень ХГЧ в моче женщины может достигать 100 единиц.

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

Большинство тестов на беременность могут определить её наличие с первого дня задержки менструации. Чувствительность таких тестов к ХГЧ составляет 25 Мме/мл. Именно на чувствительность теста нужно обращать внимание тем женщинам, которые хотят узнать о наличии или отсутствии беременности как можно раньше. И если ждать две недели после дня возможного зачатия не представляется возможным, нужно выбирать те тесты, чувствительность которых составляет менее 25 Мме/мл.

Быстрые тесты, которые также называют экспресс — тестами могут говорить о произошедшем зачатии с момента, когда содержание ХГЧ в моче женщины едва превысило 10 Мме/мл, то есть после 7-8 дня после предполагаемого зачатия. Чувствительность теста должна быть указана на упаковке изделия, более чувствительные тесты могут стоить дороже, чем тесты с меньшей степенью чувствительности.

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

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

С помощью анализа крови на ХГЧ о наступившей беременности возможно узнать уже через несколько дней после зачатия, но более информативным результат будет спустя 9-11 дней после дня возможного зачатия. Пусть результат теста не разочарует вас и оправдает ожидания.

Тестирование информационных систем

1.2. Критерии тестирования.

Можно выделить требования к идеальному критерию тестирования:

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

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

· Критерий должен быть надежным, т.е. любые два множества тестов, удовлетворяющих ему, одновременно должны раскрывать или не раскрывать ошибки программы.

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

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

Классы критериев:

· Структурные критерии используют информацию о структуре программы (критерии так называемого «белого ящика»).

· Функциональные критерии формулируются в описании требований к программному изделию (критерии так называемого «черного ящика»).

· Критерии стохастического тестирования формулируются в терминах проверки наличия заданных свойств у тестируемого приложения, средствами проверки некоторой статистической теории.

· Мутационные критерии ориентированы на проверку свойств программного изделия на основе подхода Монте-Карло.

Структурные критерии (класс I).

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

Структурные критерии базируются на основных элементах УГП, операторах, ветвях и путях.

· Условие критерия тестирования команд (критерий С0) - набор тестов в совокупности должен обеспечить прохождение каждой команды не менее одного раза. Это слабый критерий, используется в больших программных системах, где другие критерии применить невозможно.

· Условие критерия тестирования ветвей (критерий С1) - набор тестов в совокупности должен обеспечить прохождение каждой ветви не менее одного раза. Это достаточно сильный и при этом экономичный критерий. Данный критерий часто используется в системах автоматизации тестирования.

· Условие критерия тестирования путей (критерий С2) - набор тестов в совокупности должен обеспечить прохождение каждого пути не менее одного раза. Если программа содержит цикл (в особенности с неявно заданным числом итераций), то число итераций ограничивается константой (часто - 2, или числом классов выходных путей).

Структурные критерии не проверяют соответствие спецификации, если

оно не отражено в структуре программы.

Функциональные критерии (класс II).

Функциональный критерий - важнейший для программной индустрии критерий тестирования. Он обеспечивает, прежде всего, контроль степени выполнения требований заказчика в программном продукте. Поскольку требования формулируются к продукту в целом, они отражают взаимодействие тестируемого приложения с окружением. При функциональном тестировании преимущественно используется модель «черного ящика». Проблема функционального тестирования - это, прежде всего, трудоемкость; дело в том, что документы, фиксирующие требования к программному изделию (Software requirement specification, Functional specification и т.п.), как правило, достаточно объемны, тем не менее, соответствующая проверка должна быть всеобъемлющей.

Ниже приведены частные виды функциональных критериев.

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

· Тестирование классов входных данных - набор тестов в совокупности должен обеспечить проверку представителя каждого класса входных данных не менее одного раза. при создании тестов классы входных данных сопоставляются с режимами использования тестируемого компонента или подсистемы приложения, что заметно сокращает варианты перебора, учитываемые при разработке тестовых наборов. Следует заметить, что, перебирая в соответствии с критерием величины входных переменных (например, различные файлы - источники входных данных), мы вынуждены применять мощные тестовые наборы. Действительно, наряду с ограничениями на величины входных данных, существуют ограничения на величины входных данных во всевозможных комбинациях, в том числе проверка реакций системы на появление ошибок в значениях или структурах входных данных. Учет этого многообразия - процесс трудоемкий, что создает сложности для применения критерия.

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

· Тестирование классов выходных данных - набор тестов в совокупности должен обеспечить проверку представителя каждого выходного класса, при условии, что выходные результаты заранее расклассифицированы, причем отдельные классы результатов указывают, в том числе ограничения на ресурсы или на время (time out).
При создании тестов классы выходных данных сопоставляются с режимами использования тестируемого компонента или подсистемы, что заметно сокращает варианты перебора, учитываемые при разработке тестовых наборов.

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

Критерий тестирования функций объединяет отчасти особенности структурных и функциональных критериев. Он базируется на модели «полупрозрачного ящика», где явно указаны не только входы и выходы тестируемого компонента, но также состав и структура используемых методов (функций, процедур) и классов.

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

Стохастические критерии (класс III).

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

· Разработать программы-имитаторы случайных последовательных входных сигналов {x}.

· Вычислить независимым способом значения {y} для соответствующих входных сигналов {y} и получить тестовый набор {X,Y}.

· Протестировать приложение на тестовом наборе {X,Y}, используя два способа контроля результатов:

1. Детерминированный контроль - проверка соответствия вычисленного значения значению y, полученному в результате прогона теста на наборе {x} - случайной последовательности входных сигналов, сгенерированной имитатором.

2. Стохастический контроль - проверка соответствия множества {}, полученного в результате прогона тестов на наборе значений {x}, заранее известному распределению результатов F(Y). В этом случае множество y неизвестно (его вычисление невозможно), но известен закон распределения данного множества.

Критерии стохастического тестирования:

· Статистические методы окончания тестирования - стохастические методы принятия решений о совпадении гипотез о распределении случайных величин. К ним принадлежат широко известные: метод Стьюдента (St), метод Хи-квадрат (x 2) и т.п.

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

Мутационный критерий (класс IV).

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

Подход базируется на следующих понятиях:

Мутации - мелкие ошибки в программе.

Мутанты - программы, отличающиеся друг от друга мутациями.

Метод мутационного тестирования - в разрабатываемую программу P вносят мутации, т.е. искусственно создают программы-мутанты P1, P2…Затем программа P и ее мутанты тестируются на одном и том же наборе тестов {X,Y}.

Если на наборе {X,Y} подтверждается правильность программы P и, кроме того, выделяются все внесенные в программы-мутанты ошибки, то набор тестов (X,Y) соответствует мутационному критерию, а тестируемая программа объявляется правильной.

Если некоторые мутанты не выявили всех мутаций, то надо расширять набор тестов (X,Y) и продолжать тестирование.

Автоматизированная WEB-система тестирования студентов

Процесс тестирования данного программного продукта был разделен на 2 этапа: · тестирование пользовательской страницы представлено в таблице №11. Таблица №11...

Автоматизированная кроссплатформенная система тестирования студентов

Процесс тестирования данного программного продукта был разделен на 2 этапа: · тестирование пользовательского продукта представлено в таблице №11. Таблица №11...

Исследование алгоритмов управления ресурсами однопроцессорных серверов при оперативной обработке задач (алгоритмы SPT и RR)

Используются следующие критерии, позволяющие сравнивать алгоритмы краткосрочных планировщиков: 1. утилизация CPU (использование) CPU utilization. утилизация CPU теоретически может находиться в пределах от 0 до 100%...

Классификация автоматизированных систем управления

Классификация АСУ существенным образом зависит от критериев классификации...

Концепция построения дистрибутива

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

Обоснование выбора самого престижного ВУЗа г. Перми

Определим критерии, по которым я буду оценивать предложенные альтернативы. Я выделил 7 основных критериев: 1. Мнение общественности. Это самый важный критерий, на котором основывается имидж ВУЗа. 2. Узнаваемость. Известность ВУЗа также важна...

Проект локальной вычислительной сети второго этажа школы № 19

Основным критерием приемки является соответствие готового проекта требованиям заказчика, а также качество выполняемых работ...

Разработка web-сайта "Магазин детских игрушек"

5. Подсистема вывода на экран справочной системы для пользователя; 6. Подсистема вывода на экран сведений о программе. 2...

Разработка мультимедийного электронного учебника

Размещено на http://www.allbest...

Разработка мультимедийного электронного учебника по дисциплине "Компьютерные сети"

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

Тестирование ЛВС АКБ

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

Виды и правила использования

Т ест для определения беременности – это полоска или резервуар с чувствительной средой, которая реагирует на гормон, содержащийся в моче женщин (ХГЧ). Количество ХГЧ во время беременности стремительно растет с самых ранних сроков, поэтому его уровень считается неоспоримым доказательством оплодотворения. Как правило, к домашним тестам прибегают в первые дни задержки менструации, еще до посещения врача.

Критерии выбора

Покупать тесты следует только в надежных аптеках, чтобы избежать подделки.

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

Если с момента предполагаемого зачатия прошло меньше двух недель, постарайтесь купить тест с чувствительностью 10 мМЕ/мл: цифра означает концентрацию ХГЧ в моче, которую возможно определить. Соответственно, маркировка 15, 20, 25 или 30 говорит о том же: чем меньше срок, тем меньшее число должно быть на упаковке.

Многие женщины уверены, что достоверны только тесты с чувствительностью от 20 мМЕ/мл, потому что определить беременность до задержки почти невозможно, и в этом есть рациональное зерно.

Виды тестов

Сейчас в магазинах и аптеках города можно найти четыре типа теста:

  • стрип-тест (традиционная и известная многим полоска),
  • планшетный (кассетный),
  • струйный,
  • электронный.

Каждый из видов подходит для разных ситуаций и имеет свои плюсы и минусы.

Как использовать тест


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

Стоит обратить внимание на то, как тот или иной тест показывает реакцию: в одних появляется вторая полоска, а в некоторых (редко) единственная полоска меняет цвет.

Планшетный тест прост в использовании и более чувствителен, чем полоска. Представляет собой пластиковый контейнер с двумя окошками: в первое с помощью пипетки помещается моча, а во втором через 5-10 минут появляется результат.

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


Электронный – самый точный. Вместо полосок будет надпись «pregnancy» (беременна) или «no pregnancy» (не беременна). Некоторые тесты могут показывать не только сам факт оплодотворения, но и примерный срок беременности.

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

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

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

Все типы, за исключением электронного, показывают результат примерно одинаково: одна полоска – нет беременности, две полоски – есть.

Чтобы тест показал достоверные данные, нужно:

  1. Дождаться вероятной даты наступления месячных: пытаться определить беременность раньше практически бессмысленно из-за низкой концентрации ХГЧ.
  2. Проводить тестирование утром, до завтрака.

Топ-5 тестов на беременность

На рынке представлено большое разнообразие тестов для женщин с разными потребностями и возможностями. Как правило, основная разница между продуктами заключается в чувствительности, цене и репутации производителя.


Основные плюсы: недорогая, но эффективная тест-полоска. Можно использовать как за пару дней до задержки менструации, так и спустя несколько дней после ее предполагаемого начала. Заявленная точность на упаковке – 99%, что говорит о достоверности проверки. Результат нужно ждать от 3 до 5 минут – если беременность есть, появится 2 полоски (вторая полоска может быть бледной).

Достоинства: стоимость, точность, простота применения, доступность в магазинах.

Минусы: нужно создать бытовые условия для тестирования.

Основные плюсы: точный результат показывает в первый день задержки цикла. Заявленная точность на упаковке – 98%. Процедура тестирования такая же, как при использовании любых других полосок.


Достоинства: стоимость, неплохая достоверность, простота применения.

Минусы: нужно создать бытовые условия для тестирования; подойдет только утренняя моча.


Основные плюсы: отличный электронный тест, который покажет не только наличие беременности, но и примерный срок с момента зачатия. Результат дает уже за пять дней до предполагаемого начала месячных. Точность определения беременности выше 99%, срока – до 92%.

Достоинства: точность, чувствительность, определение срока, определение беременности до задержки.

Минусы: стоимость; обязательно соблюдение инструкции.

Основные плюсы: планшетный, намного достовернее полосок из-за ровного распределения мочи. Пипетка в комплекте – значит, процесс тестирования гигиеничен. Точность выше 99%.

Достоинства: простота применения, точность, чувствительность, доступность.

Минусы: не обнаружены.

KNOW NOW OPTIMA

Основные плюсы: кассетный, определяет беременность при любых обстоятельствах. Подходит не только для домашнего использования, но и для стационара.


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

Минусы: результат можно ждать очень долго.

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

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


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

Классы критериев
Структурные
Функциональные
Критерии стохастического тестирования формулируются в терминах проверки наличия заданных свойств у тестируемого приложения, средствами проверки некоторой статистической гипотезы.
Мутационные критерии ориентированы на проверку свойств программного изделия на основе подхода Монте-Карло.

Структурные критерии
- используют модель программы в виде "белого ящика", что предполагает знание исходного текста программы или спецификации программы в виде потокового графа управления. Данный класс критериев часто используется на этапах модульного и интеграционного тестирования (Unit testing, Integration testing)

Структурные критерии базируются на основных элементах УГП, операторах, ветвях и путях.
Условие критерия тестирования команд (критерий С0) - набор тестов в совокупности должен обеспечить прохождение каждой команды не менее одного раза. Это слабый критерий, он, как правило, используется в больших программных системах, где другие критерии применить невозможно.
Условие критерия тестирования ветвей (критерий С1) - набор тестов в совокупности должен обеспечить прохождение каждой ветви не менее одного раза. Это достаточно сильный и при этом экономичный критерий, поскольку множество ветвей в тестируемом приложении конечно и не так уж велико. Данный критерий часто используется в системах автоматизации тестирования.
Условие критерия тестирования путей (критерий С2) - набор тестов в совокупности должен обеспечить прохождение каждого пути не менее 1 раз. Если программа содержит цикл (в особенности с неявно заданным числом итераций), то число итераций ограничивается константой (часто - 2, или числом классов выходных путей)..

Функциональные критерии
- важнейший для программной индустрии критерий тестирования. Он обеспечивает, прежде всего, контроль степени выполнения требований заказчика в программном продукте. Отражают взаимодействие тестируемого приложения с окружением. Используется модель "черного ящика". Проблема:трудоемкость; дело в том, что документы, фиксирующие требования к программному изделию (Software requirement specification, Functional specification и т.п.), достаточно объемны.

Тестирование пунктов спецификации - набор тестов в совокупности должен обеспечить проверку каждого тестируемого пункта не менее одного раза.
Тестирование классов входных данных - набор тестов в совокупности должен обеспечить проверку представителя каждого класса входных данных не менее одного раза. При создании тестов классы входных данных сопоставляются с режимами использования тестируемого компонента или подсистемы приложения, что заметно сокращает варианты перебора, учитываемые при разработке тестовых наборов. Следует заметить, что мы вынуждены применять мощные тестовые наборы. Действительно, наряду с ограничениями на величины входных данных, существуют ограничения на величины входных данных во всевозможных комбинациях, в том числе проверка реакций системы на появление ошибок в значениях или структурах входных данных. Учет этого многообразия - процесс трудоемкий, что создает сложности для применения критерия
Тестирование правил - набор тестов в совокупности должен обеспечить проверку каждого правила, если входные и выходные значения описываются набором правил некоторой грамматики.
Тестирование классов выходных данных - набор тестов в совокупности должен обеспечить проверку представителя каждого выходного класса, при условии, что выходные результаты заранее расклассифицированы, причем отдельные классы результатов учитывают, в том числе, ограничения на ресурсы или на время (time out). При создании тестов классы выходных данных сопоставляются с режимами использования тестируемого компонента или подсистемы, что заметно сокращает варианты перебора, учитываемые при разработке тестовых наборов.
Тестирование функций - набор тестов в совокупности должен обеспечить проверку каждого действия, реализуемого тестируемым модулем, не менее одного раза. Не обеспечивает покрытия части функциональности тестируемого компонента, связанной со структурными и поведенческими свойствами, описание которых не сосредоточено в отдельных функциях (т.е. описание рассредоточено по компоненту). Критерий тестирования функций объединяет отчасти особенности структурных и функциональных критериев. Он базируется на модели "полупрозрачного ящика", где явно указаны не только входы и выходы тестируемого компонента, но также состав и структура используемых методов (функций, процедур) и классов.
Комбинированные критерии для программ и спецификаций - набор тестов в совокупности должен обеспечить проверку всех комбинаций непротиворечивых условий программ и спецификаций не менее одного раза.

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

Необходимо разработать программы - имитаторы случайных последовательностей входных сигналов{x}. Вычислить независимым способом значения {y} для соответствующих входных сигналов {x} и получить тестовый набор (X,Y). Протестировать приложение на тестовом наборе (X,Y), используя два способа контроля результатов:
Детерминированный контроль - проверка соответствия вычисленного значения y значению y, полученному в результате прогона теста на наборе {x} - случайной последовательности входных сигналов, сгенерированной имитатором.
Стохастический контроль - проверка соответствия множества значений {y}, полученного в результате прогона тестов на наборе входных значений {x}, заранее известному распределению результатов F(Y).

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

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

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

Мутации - мелкие ошибки в программе.
Мутанты - программы, отличающиеся друг от друга мутациями.

Метод мутационного тестирования - в разрабатываемую программу P вносят мутации, т.е. искусственно создают программы-мутанты P1, P2... Затем программа P и ее мутанты тестируются на одном и том же наборе тестов (X,Y).
Если на наборе (X,Y) подтверждается правильность программы P и, кроме того, выявляются все внесенные в программы-мутанты ошибки, то набор тестов (X,Y) соответствует мутационному критерию, а тестируемая программа объявляется правильной.