#java #jython #robotframework
#java #jython #robotframework
Вопрос:
Я унаследовал платформу robot framework, которая использует jython и определяет все его ключевые слова на Java.
Он работает в темпе, который я мог бы описать как, ну, «величественный».
Подключив yourkit к шоу, я вижу — какой сюрприз — интерпретатор python от jython.
Существует ли какое-либо профилирование для jython или технологии роботов, которое позволило бы мне увидеть, что именно заставляет фреймворк так загружаться?
Ответ №1:
Вы могли бы проверить, определяют ли ваши наборы / тесты ненужные тайм-ауты. Недавно мы заметили, что использование тайм-аутов вызывает довольно большие накладные расходы (в основном потому, что тайм-ауты довольно грубо реализованы в самом RF.)
Кроме того, я думаю, что требуется некоторое дальнейшее профилирование. Пара предложений:
- Собственный репортер времени Robot Framework [1]. Используя это, вы можете увидеть, какие наборы / тесты / ключевые слова занимают больше всего времени, и, возможно, также, какие ключевые слова библиотеки неоправданно медленные.
- Вы также можете попробовать профилирование с помощью профилировщика Python [2], который также реализован в Jython. Теоретически, вы должны быть в состоянии хотя бы видеть, тратится ли большая часть времени на код фреймворка или библиотечный код.
[1] http://robotframework.googlecode.com/hg/tools/times2csv/doc/times2csv.html?r=2.6.3