Здравствуйте, <Аноним>, Вы писали:
А>Здравствуйте
А>Написано приложение, необходимо его протестировать на работоспособность.
А>То есть хочеться добавить в приложение какие нибудь timerы которые бы симулировали периодические действия юзера. Что бы добавить такие процедурки в код проблем нет но когда необходимо будет отдавать заказчику необходимо будет все эти таймеры найти и удалить/отключить а ведь всегда можно что то и забыть.
А>Вопрос:
А>Как делают проффесионалы в данной ситуации?
посмотри
ConditionalAttribute... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Здравствуйте, Аноним, Вы писали:
А>Написано приложение, необходимо его протестировать на работоспособность.
А>То есть хочеться добавить в приложение какие нибудь timerы которые бы симулировали периодические действия юзера. Что бы добавить такие процедурки в код проблем нет но когда необходимо будет отдавать заказчику необходимо будет все эти таймеры найти и удалить/отключить а ведь всегда можно что то и забыть.
А>Вопрос:
А>Как делают проффесионалы в данной ситуации?
Профессионалы нанимают тестера и отдают это дело ему.
Советую вам излишне не лезть в код этими тестами. Если есть интерфейс, то тестировать можно и с помощью бесплатного инструмента AutoIt:
http://www.autoitscript.com/autoit3/ там еще где-то на сайте есть инструмент, который позволяет записывать скритпы. Вы запускаете этот инструмент, свою тестируемую программу, нажимаете там разные кнопочки/менюшки, при этом формируется сценарий для AutoIt. При запуске сценария все действия будут воспроизведены.
Есть также целая кучка платных инструментов для этого (ценой до $10.000).
Если интерфейса нет

, то можно обойтись модульными тестами.
Если все-таки непреодолимо

желание писать тесты в основном коде проекта с использование каких-нибудь таймеров, то могу порекомендовать пользоваться директивами условной компиляции и размещать код тестов внутри них.
Здравствуйте, ATsimbalistov, Вы писали:
AT>Профессионалы нанимают тестера и отдают это дело ему.
с тестером сразу проезжаем дальше...
AT>Советую вам излишне не лезть в код этими тестами. Если есть интерфейс, то тестировать можно и с помощью бесплатного инструмента AutoIt: http://www.autoitscript.com/autoit3/ там еще где-то на сайте есть инструмент, который позволяет записывать скритпы. Вы запускаете этот инструмент, свою тестируемую программу, нажимаете там разные кнопочки/менюшки, при этом формируется сценарий для AutoIt. При запуске сценария все действия будут воспроизведены.
не плохо но интерфейса мало для полного теста приложения во всяком случае этого
AT>Есть также целая кучка платных инструментов для этого (ценой до $10.000).
AT>Если интерфейса нет
, то можно обойтись модульными тестами.
а вот модульный тест очень даже ничего (если я правильно понял из названия)
пишшется dll которая динамически связывается через интерфейс с нужным объектом
и тестит его до посинения
AT>Если все-таки непреодолимо
желание писать тесты в основном коде проекта с использование каких-нибудь таймеров, то могу порекомендовать пользоваться директивами условной компиляции и размещать код тестов внутри них.
тоже вариант но лишний код в тексте плохо...
спасибо
Здравствуйте, Аноним, Вы писали:
[]
А>а вот модульный тест очень даже ничего (если я правильно понял из названия)
А>пишшется dll которая динамически связывается через интерфейс с нужным объектом
А>и тестит его до посинения
Для этого тоже есть инструментарии — различные клоны xxxUnit (
MbUnit,
NUint и т.п.)
Здравствуйте, Аноним, Вы писали:
AT>>Если интерфейса нет
, то можно обойтись модульными тестами.
А>а вот модульный тест очень даже ничего (если я правильно понял из названия)
А>пишшется dll которая динамически связывается через интерфейс с нужным объектом
А>и тестит его до посинения
Можно и dll писать. Но есть уже готовое, обратите внимание на библиотеки и инструменты для модульного тестирования. Тут уже зависит от того, на чем вы разрабатываете свой продукт. Если .NET, то в тему будет NUnit, если C/C++, то можно использовать CppUnit.
AT>>Если все-таки непреодолимо
желание писать тесты в основном коде проекта с использование каких-нибудь таймеров, то могу порекомендовать пользоваться директивами условной компиляции и размещать код тестов внутри них.
А>тоже вариант но лишний код в тексте плохо...
Это верно, тесты должны размещаться в другом проекте.