2014-10-07 2 views
0

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

Теперь руководство предоставило нам несколько недель для стабилизации продукта, включая автоматизацию тестирования.

Чтобы получить максимальную отдачу от этих X недель, мы можем потратить на автоматическое тестирование, мне нужно знать, какие классы/методы следует тестировать в первую очередь.

Как определить приоритетность усилий по тестированию (решить, какой класс/метод проверить сейчас, а затем), помимо подходов, перечисленных ниже?

  1. Рассчитать иждивенцы для каждого класса (сколько других классов использует класс, включая транзитивные зависимости). Сначала должны быть проверены классы с наибольшим числом зависимых классов.
  2. Узнайте, какие классы чаще всего меняются (в соответствии с системой контроля версий). Частые изменения могут быть симптомом либо множества ошибок, либо активного развития в этих классах. В обоих случаях имеет смысл написать для них единичные тесты.
  3. Узнайте, какие классы участвуют в отчетах об ошибках от тестеров и/или клиентов.

ответ

1

Все ваши идеи кажутся вам полезными. This article может помочь вам в определении приоритетов и автоматизации.

Это формула, как сделать Сметы Testing усилия:

метод для тестирования процесса (на основе прецедентов ведомого подходе).

Step 1 : count number of use cases (NUC) of system 

step 2 : Set Avg Time Test Cases(ATTC) as per test plan 

step 3 : Estimate total number of test cases (NTC) 

Общее количество тестов = Количество usecases X Среднее testcases на прецеденте

Step 4 : Set Avg Execution Time (AET) per a test case (idelly 15 min depends on your system) 

Step 5 : Calculate Total Execution Time (TET) 

TET = Total number of test cases * AET 

Step 6 : Calculate Test Case Creation Time (TCCT) 

обычно мы будем принимать в 1,5 раза ТЕТ, как TCCT

TCCT = 1,5 * TET

Step 7 : Time for ReTest Case Execution (RTCE) this is for retesting 

Обычно мы принимаем 0,5 раза ТЕТ

RTCE = 0.5 * TET 

Step 8 : Set Report generation Time (RGT 

обычно мы берем 0,2 раза ТЕТ

RGT = 0.2 * TET 

Step 9 : Set Test Environment Setup Time (TEST) 

это также зависит от плана тестирования

Step 10 : Total Estimation time = TET + TCCT+ RTCE + RGT + TEST + some buffer...;) 

Вот пример, как это работает:

Итого Нет (NUC): 227

Средние Тестовые на Прецеденты (AET): 10

Оценочные Тестовые (NTC): 227 * 10 = 2270

Время выполнения оценки (ТЕТ): 2270/4 = 567.5 ч

Время для создания testcases (TCCT): 567,5 * 4/3 = 756,6 ч

Время для повторного тестирования (RTCE): 567,5/2 = 283,75 ч

генерации отчетов (РТГ) = 100 hr

Время установки испытательной среды (TEST) = 20 час.

Итого ч 1727,85 + буфер

4 означает количество тестовых случаев, выполненных в час

т.е. 15 мин потребуется для выполнения каждого теста

И так как вы собираетесь автоматизировать почти из поцарапать

до сих пор почти не было автоматических тестов

Я думаю, вы можете рассмотреть не только преимущество, но Мифов о автоматизированном тестировании тоже:

  • автоматизация не может заменить человек

  • После автоматизировано, экономии является данностью

  • Каждый тестовый пример может быть автоматизирован

  • Тестирование может быть полностью автоматизировано

  • Один тест инструмент подходит для всех задач

  • Автоматизированное тестирование не означает автоматического

    После всех испытаний ... Это означает, что Computer Aided тестирование.

0

Другие, чем выше ответ, я хотел бы добавить ещё несколько пунктов пересортицы приоритет и покрытие для автоматизации: 1. Перед тем, как начать любое кодирование, понять, что все тестовые случаи могут дать вам максимальный охват как полный потокового или сквозного сценария тестирования. 2. Всегда поддерживайте удобство использования набора для автоматизации - как обычно, эти те тесты, которые могут использоваться все время, и могут охватывать большую часть регрессионной части, а не концентрировать конкретную функцию приложения. 3. Когда у вас есть ограниченное время, старайтесь избегать реализации таких необычных вещей, как журнал, сводный отчет электронной почты, отчет html и т. Д. 4. Лучше иметь структуру данных, ориентированную на данные, а не иметь ключевое слово или гибридную структуру, потому что вы можете охватывают многие тестовые примеры, просто изменяя ваши тестовые данные в течение ограниченного времени. 5. Поддерживайте листы excel или csv для тестовых данных, результаты тестов, вы можете использовать JXL Lib для обработки листа excel в java. 6. Читайте листы excel, напишите листы excel - наиболее распространенный метод, который вы можете использовать в своем коде автоматизации. Об этом можно прочитать в блоге: http://testingmindzz.blogspot.in/