RobotFramework и Jython: как исследовать производительность - PullRequest
1 голос
/ 25 октября 2011

Я унаследовал установку фреймворка робота, которая использует jython и определяет все его ключевые слова в Java.

Он работает в темпе, который я мог бы описать как «величественный».

Прикрепляя свой набор к шоу, я вижу - какой сюрприз - интерпретатор python из jython.

Существует ли какое-либо профилирование для jython или технологии роботов, которое позволило бы мне увидеть, что же делает фреймворк таким занятым?

1 Ответ

1 голос
/ 26 октября 2011

Одна вещь, которую вы можете проверить, - определяют ли ваши наборы / тесты ненужные тайм-ауты. Недавно мы заметили, что использование тайм-аутов приводит к небольшим накладным расходам (в основном потому, что тайм-ауты реализованы довольно хакерски в самой RF).

Кроме того, я думаю, что требуется дополнительное профилирование. Пара предложений:

  • Собственный репортер Robot Framework [1]. Используя это, вы можете увидеть, какие наборы / тесты / ключевые слова занимают больше всего времени, а также, возможно, какие ключевые слова библиотеки неоправданно медленны.

  • Вы также можете попробовать профилирование с помощью профилировщика Python [2], который также реализован в Jython. Теоретически, вы должны по крайней мере увидеть, тратится ли большая часть времени в коде фреймворка или библиотеке.

[1] http://robotframework.googlecode.com/hg/tools/times2csv/doc/times2csv.html?r=2.6.3

[2] http://docs.python.org/library/profile.html

...