у кого-нибудь есть parasoft .test или jtest опыт - PullRequest
3 голосов
/ 12 ноября 2010

Во-первых, у меня нет опыта в parasoft .test или jtest. Я прочитал таблицу данных, что продукт может автоматически генерировать модульный тест.

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

любой обмен опытом приветствуется.

Большое спасибо!

Ответы [ 4 ]

6 голосов
/ 28 июля 2011

Недавно мы использовали JTest для нашего продукта.Мы не использовали стандартный продукт, мы использовали Eclipse Plugin.Стандартный продукт построен на платформе OSGI (читай: это как Eclipse), но вы должны импортировать и создавать свои проекты.Мы уже использовали Eclipse, поэтому для нас имело смысл просто использовать плагин, который имеет все те же возможности.

Хотя есть много вещей, которые JTest может сделать для вас, есть и много раздражающих вещейоб этом.Например, инструмент статического анализа Jtest - это то, что действительно стоит, IMHO.Он может искать множество ошибок и имеет довольно хорошую систему отчетов.Но, хотя генерация модульных тестов в порядке, но я думаю, что потратил столько же или больше времени на исправление и улучшение сгенерированных тестов, чем просто на их создание.Администрирование Jtest также несколько сложное и сложное.

Встроенные механизмы для создания модульных тестов, объектов-заглушек, параметризованных модульных тестов и т. Д. Плохо документированы.По крайней мере, мой маленький мозг не мог их использовать в течение двух лет, когда мы использовали продукт.Тем не менее, многие из их супер удивительных функций (таких как трассировка графического интерфейса пользователя, интерфейс командной строки, детектор ошибок, система отчетов и т. Д.) Требуют дополнительных очень дорогих лицензий.

Действительно, Jtest просто дает вам простоеспособ управления выполнением статического и модульного тестирования.Но это действительно дорого.Я не могу поверить, что они взимают тысячи долларов за лицензию этого материала.Вы также обнаружите, что они захотят обучить вас, что вам почти нужно, потому что документация довольно плохая.Что странно, потому что руководство пользователя имеет длину около 900 страниц.

Но вот большой совет: вы можете сделать это бесплатно.Если бы мне пришлось сделать это заново, я бы настаивал на использовании этих продуктов (которые, как ни странно, выглядят и чувствуют очень похож на Jtest) http://code.google.com/javadevtools/codepro/doc/index.html

Я бы не сталзаставьте Jtest подумать, что это будет небольшим дополнением к рутине вашего разработчика.Jtest может стать огромным временем и процессом.

2 голосов
/ 11 апреля 2012

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

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

Охват кода.

Отладка во время тестирования.

0 голосов
/ 13 ноября 2010

Увы, никогда не будет серебряной пули, которая отвечала бы всем требованиям модульного тестирования, но JTest & .Test (& C ++ Test в этом отношении) примерно настолько близки, насколько это возможно. Uggwar прав, что разработчику все равно нужно будет проверять результаты для базовых автоматически сгенерированных тестов, однако есть еще много чего.

Эти инструменты могут использоваться для создания базовых регрессионных тестов, они предназначены для того, чтобы сообщать вам, когда что-то меняется, а не в том, правильно ли оно тестирует или нет. Вы также можете отследить работающее приложение и затем сгенерировать тесты JUnit / NUnit / CPPUnit, которые воссоздают то, что происходило в приложении. Как правило, это гораздо более полезные тесты, которые используются в качестве регрессионных тестов для элементов функциональности.

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

Дайте им попытку.

http://www.parasoft.com

0 голосов
/ 12 ноября 2010

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

...