запуск тестов
#1
Отправлено 08 июня 2012 - 09:53
У меня все сделано так, на один тест - один Юнит.
потом этот юнит добавляется в главню функцию и запускается
пример:
//USEUNIT test1
//USEUNIT test2
//USEUNIT test3
testRunner = function(){
test1();
test2();
test3();
}
так вот хочу спросить, правильно ли это, или есть другие варианты запуска тестов.
#2
Отправлено 08 июня 2012 - 10:07
Кроме того, я бы не рекомендовал запускать все тесты из одной функции. Со временем кол-во тестов и время их работы увеличится, а у ТС есть неприятная особенность: при долгом запуске тестов он начинает непомерно жрать память.
Есть вариант использования Test Items (можно почитать в хэлпе).
Я в свое время остановился на таком подходе. Тесты группируются и их вызов делается из одной функции. Например, так:
//USEUNIT Tests1 //USEUNIT Tests2 // tests from unit Tests1 function testSuite1() { test1(); test2(); } // tests from unit Tests2 function testSuite2() { test3(); test4(); }
И запускать из командной строки, вызывая функции testSuite1, testSuite2 и т.п.
TestComplete для начинающих (видеозаписи курса)
Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)
Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest
#3
Отправлено 08 июня 2012 - 12:08
Как-то это накладно, по юниту на тест. Просто группируйте тесты по функциональности, например, в одном юните.
Кроме того, я бы не рекомендовал запускать все тесты из одной функции. Со временем кол-во тестов и время их работы увеличится, а у ТС есть неприятная особенность: при долгом запуске тестов он начинает непомерно жрать память.
Есть вариант использования Test Items (можно почитать в хэлпе).
Я в свое время остановился на таком подходе. Тесты группируются и их вызов делается из одной функции. Например, так://USEUNIT Tests1 //USEUNIT Tests2 // tests from unit Tests1 function testSuite1() { test1(); test2(); } // tests from unit Tests2 function testSuite2() { test3(); test4(); }
И запускать из командной строки, вызывая функции testSuite1, testSuite2 и т.п.
Так то оно так, что-то я не нашел как запускать тесты с командной строки при использовании Test Item
#4
Отправлено 08 июня 2012 - 12:12
Так то оно так, что-то я не нашел как запускать тесты с командной строки при использовании Test Item
Это невозможно. Либо Test Items, либо из командной строки
TestComplete для начинающих (видеозаписи курса)
Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)
Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest
#5
Отправлено 08 июня 2012 - 16:06
Дмитрий
#6
Отправлено 11 июня 2012 - 09:21
Тесты лучше не хранить в отдельных юнитах, а, как посоветовал Геннадий, группировать по какому либо признаку в общих юнитах. Запускать тесты лучше через test items - и управлять ими проще (включать/отключать и менять порядок тестов) и для памяти лучше (после выполнения каждого test item лог выгружается из памяти).
ну мне Test Items неподходят, из-за того что тесты ранаются на виртуалке через командную строку.
И могу сказать что эсли создавать тесты и фрейворк методикой функциональной декомпозиции - самое правильное это размещать один тест в отдельном юните,
это одна из практик.
к тому же у меня ТС синтегрирован с тимсити и походу выполнения всех тестов "на лету" генерируется отчет сколько прошло/упало.
#7
Отправлено 11 июня 2012 - 10:44
По поводу генерации отчётов - можно парсить лог проекта по завершении, т.к. там обычный XML.
Дмитрий
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных