Проблематика: Один проект, но разные текущие ветки-релизы (обычно тестируются одновременно 4 ветки, последняя trunk) + некоторые особые тестовые ситуации. Время выпуска релиза колеблется от 1 до 2 месяцев. Есть 6 тестировщиков (общая численность команды разработки 35). Тестовая группа делится на две условные подгруппы: тест-программисты (3) - разработчики автоматизированных тестовых процедур, и тест-аналитики аля дизайнеры + руководитель (3). Тест-программисты иногда усиливаются руководителем в качестве тест-программиста. Количество тестовых процедур от релиза к релизу увеличивается. Например в настоящее время на trunk - около 300 тестов.
Одной из задач тестовой группы разбор логов после прогона тестов (т.е. практически исследуются 4 разных лога). Количество проблем на рекомендованных релизах в целом не велико (не более 5 %). На trunk этот процент гораздо больше - до 40-50%. Причины падения тестов можно разделить на: 1 - некий глюк системы автоматизации тестов (используется TestComplete) 2 - реальная ошибка в тестируемом приложении 3 - изменение интерфеса и алгоритмов работы тестируемого приложения 4 - некий глюк всей платформы интеграции
Время, затрачиваемое на анализ логов, включая понимание причины падения теста, устранение проблемы, написания сообщения об ошибке в системе управления работами может занимать почти все рабочее время. Таким образом скорость ввода новых тестов существенно снизилась. Частично проблема снимается ручным тестированием.
Однако со временем количество тестов будет увеличиваться и проблема нехватки времени и ресурсов только усугубляться
В связи с этим вопрос: возникают ли у вас подобные ситуации? как вы из решаете? каким образом можно решить проблему охвата меньшим числом и без потери качества контроля?
СПАСИБО
Hewlett-Packard (Mercury) - Quality Center -> Проверка максимально допустимой длины контрола WinEdit
2009-10-09 13:50 GipsySh
Кажется, совсем пустяковая вещь, но что-то я в ступоре... В тестируемом приложении есть текстовое поле (контрол WinEdit), в который максимум можно ввести 1024 символа. И вот мне нужно проверить, что в поле действительно можно ввести только это количество символов, не больше. Попробовала сделать так: ##### Код { ##### strText = "..." ' здесь задаю строку длиной 1024 сивола Window("MyApp").WinEdit("MyWinEdit").Set strText ##### Код } ##### Надеялась, что QTP затолкает в контрол столько символов, сколько сможет... Но надежда не оправдалась :( Потом решила установить Set-ом строку нужной длины (в моем случае 1024), попробовать вбить еще один символ с помощью WinEdit("MyWinEdit").Type и сравнить строку до Type-а и после... но когда в строке уже максимум символов, QTP опять-таки даже пробовать не хочет ничего туда добавлять :( Не сталкивался ли кто-нибудь с такой задачей? Интуиция подсказывает, что "истина где-то рядом"...
Hewlett-Packard (Mercury) - Quality Center -> QTP10. Пропали менюшки
2009-10-09 13:53 Nafig
Всем доброго времени суток. Столкнулся с такой проблемой: пропали менюшки QTP после установки add-in для синхронизации с QC. Теперь имею следующий вид меню: - File - QualityCenterVersionControl; - Edit (empty); - View (empty); - Insert: - Checkpoint (DatabaseCheckpoint, XMLCheckpoint); - OutputValue (DatabaseOutputValue, XMLOutputValue); - Automation: - LowLevelRecording (disabled); - AnalogRecording (disabled); - Resources (empty); - Debug (empty); - Tools (empty); - Windows (empty); - Help (empty)
Может у кого то были подобные проблемы. Данная история повторялась трижды. Заранее благодарен за любую помощь
Появилась проблема - TestComplete 7.10 не хочет приостанавливать выполнение тестов на точках останова(breakpoints). Причём если написать небольшую функцию(например фукция сложения чисел), то всё хорошо - точки останова работают, а если их ставить в более сложной функции,то выполнение тестов происходит без остановок. Вроде Enable Debugging включен,а в чём проблема не пойму.Функция,в которой стоят точки останова 100% вызывается в ходе выполнения тестов(часть её кстати предсталена на скриншоте ниже).
Тестирование производительности -> Чем записать запросы с вин приложения.
2009-10-09 16:30 Atomic_A@ukr.net
Доброго времени суток. Есть такая задача. Есть вин приложение которое шлет запросы на веб сервер. Сервер обрабатывает запросы и ложит их в базу. Задача состоит в том, чтоб пощитать за какое время сервер обработет N-запросов. Проблема заключается, в том, что я не знаю чем можно записать эти запросы, чтоб отправлять их. Да и чем слать эти запросы в N-ом количестве, мне тоже пока не ясно. Подскажите, может кто сталкивался.
Что такое открытые тренинги Happy PM? Это уникальные образовательные мероприятия для руководителей программных проектов и команд, а также HR и других специалистов ИТ компаний.
Расписание тренингов проекта Happy PM до конца 2009 года:
24-25 октября, Минск. «Управление командой» и «Карьера менеджера»
31 октября, Харьков. «Управление командой»
14-15 ноября, Санкт-Петербург. «Управление командой» и «Карьера менеджера»
21-22 ноября, Москва. «Управление командой» и «Карьера менеджера»
28-29 ноября, Новосибирск. «Управление командой» и «Карьера менеджера»
6-7 декабря, Киев. «Управление командой» и «Карьера менеджера»
IBM DB2 -> Форматирование десятичных чисел
2009-10-10 17:54 LKhiger
Чтобы улучшить чтение (особо важно для больших чисел) делим целую часть числа на тройки, начиная от десятичной точки, разделяя тройки цифр запятыми.
Для этого я написал монопрограмму, которую вы можете использовать в своей повседневной практике:
##### Код { ##### with input (number) as (select -123456789.012 from sysibm.sysdummy1 union all select -6789.012256 from sysibm.sysdummy1 union all select 1000 from sysibm.sysdummy1 union all select 126789.01 from sysibm.sysdummy1 ) , transform_1 (num, part, rem, trans, fract, k, dum, Mdum ) as (select min(number), int(0), int(abs(min(number))), varchar('', 150), abs(min(number)) - int(abs(min(number))), int(12), int(1), 5 * count(*) from input
union all
Select num, int(rem / power(10, k - 3)) , mod(rem, power(10, k - 3)), strip(case when int(rem / power(10, k - 3)) = 0 and trans <= ' ' then '' when int(rem / power(10, k - 3)) > 0 and trans <= ' ' then case when num < 0 then '-' else '' end || strip(digits(int(rem / power(10, k - 3))), l, '0') else trans || ',' || substr(digits(int(rem / power(10, k - 3))), 8, 3) end || case when k - 3 = 0 and fract > 0 then strip(varchar(fract), b, '0') else '' end, l, '0') , fract, k - 3, dum + 1, Mdum from transform_1 where k - 3 >= 0 and dum + 1 <= Mdum
union all
Select mnum, 0, anum, '', frct, 12, dum + 1, Mdum from transform_1, table (select min(number) mnum, 0, abs(min(number)) anum, abs(min(number)) - int(abs(min(number))) frct from Input where number > num ) ii where k - 3 < 0 and mnum is not null and dum + 1 <= Mdum ) select varchar(num) "Decimal.................", trans "Formatted" from transform_1 tr where k = 0 ##### Код } #####
AutomatedQA - Functional Testing -> Как получить перечень существующих папок лога?
2009-10-11 22:56 alex_kart
Как можно проверить, существуюет ли уже папка в логе с данным именем? Необходимо для теста, который пишет информацию в лог для нескольких форм. Хотелось бы для каждой формочки свою папочку, а ввиду того, что одна и таже форма может вызываться многократно по ходу теста PushLogFolder/PopLogFolder применять затруднительно. Понимаю конечно что можно создавать массив имен уже созданных папочек, в котором хранить FolderID и имя папки, но это извращение.