Ручное тестирование По сравнению с Автоматизированным [закрытым] тестированием

18
задан James Z 25 June 2015 в 17:23
поделиться

6 ответов

Автоматическое тестирование - это любой тип тестирования, при котором вы используете один фрагмент кода / программу для тестирования другого фрагмента кода / программы. Это может быть модульное тестирование, как описано выше, или это может быть с помощью специального инструмента автоматизации, такого как TestComplete, QTP, Selenium и т. Д. Модульные тесты, как правило, создаются и выполняются разработчиком рассматриваемого кода, тогда как автоматизация GUI с большей вероятностью будет выполняться специалистом по контролю качества программного обеспечения. Некоторые типы тестирования, такие как тестирование производительности и регрессионное тестирование, хорошо подходят для автоматизации, тогда как другие, такие как тестирование удобства использования, не подходят.

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

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

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

15
ответ дан 30 November 2019 в 08:10
поделиться

Что ж, я могу говорить только о своем мнении и опыте, и я всего лишь разработчик, который немало поработал с тестировщиками и инженерами по обеспечению качества. Во всяком случае, мой 2c:

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

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

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

7
ответ дан 30 November 2019 в 08:10
поделиться

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

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

4
ответ дан 30 November 2019 в 08:10
поделиться

Основное различие заключается в том, как проверяется тест. Осуществляется ли это с помощью программной проверки или проводится проверка с участием человека?

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

Оба требуют внимания к деталям, терпения и организационных навыков, чтобы убедительно сказать: «Да, это высококачественный продукт / услуга.«Различия могут возникнуть там, где в автоматическом тестировании обычно используется специальное программное обеспечение.

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

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

1
ответ дан 30 November 2019 в 08:10
поделиться

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

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

-2
ответ дан 30 November 2019 в 08:10
поделиться

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

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

0
ответ дан 30 November 2019 в 08:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: