Ручное тестирование программного обеспечения

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


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

Содержание

Ручное тестирование (manualtesting) — это элемент всего тестирования, когда происходит оценка качества во время работы над созданием программного обеспечения. Это действие выполняют тестировщики или простые клиенты с помощью создания различных вариантов пользовательских манипуляций.

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

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

Пример этапа проведения тестирования.

  1. Дать на старт несколько целых чисел.
  2. Привести в действие тестирование.
  3. Посмотреть, получен ли ожидаемый результат.
  4. Полученная сопроводительная информация должна быть четкой и объективной.

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

Автоматизированное тестирование.

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

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

Методы ручного тестирования.

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

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

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

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

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

Сравнение ручного и автоматизированного подхода к тестированию.

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

Ручное (мануальное)Автоматизированное
Формулирование входных значенийГибкое задание данных. Дает возможность брать различные значения на различных этапах тестирования, делая покрытие ширеЧеткое и строгое задание данных входа
Проверка итогаГибкая, дает возможность тестировщикудавать оценку неяснообозначенным критериямСтрогая. Неясно обозначенные критерии можно проверить, лишь сравнивая с образцом
ПовторяемостьНевысокая. Так как процедуру проводит человек, то данные могут определяться неясно, что приводит к неповторяемости тестированияБольшая
НадежностьМалая. Внимание работника снижается из-за долгого времени тестированияБольшая, не связана со временем тестирования
Чувствительность к небольшим изменениям продуктаВозможна от вида течения работ. Как правило, тестирование выполняется при небольших измененияхСильная. Небольшие изменения в продукте почти всегда дают коррекцию образцов
Скорость выполнения тестаНизкаяБольшая
Генерация тестовНевозможна. Так как тестирование идет медленно, то   сгенерированное количество тестов не используетсяПроисходит

Инспекции и сквозные просмотры.

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

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

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

Инспекции исходного текста.

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

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

Собрание состоит из 2-х этапов:

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

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

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

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

Сквозной просмотр.

Сквозной просмотр – это действия, которые предпринимают люди во время просмотра программы для нахождения ошибок. Этот вариант схож с инспектированием, но их методика немного различна, и он предполагает отличные от инспектирования способы нахождения проблем.

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

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

Проверка за столом.

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

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

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

Курсы тестирования. QA курсы.

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

 


Оцените полезность статьи:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (1 оценок, среднее: 5,00 из 5)
Загрузка...

Ваш комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

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