BSF PreProcessor/BSF Sampler and Jython

Привіт!

Суть проблеми: python скрипт працює тільки в BSF PreProcessor, BSF Sampler викидає помилку (скрипт той самий).

В JMeter створена одна ThreadGroup з BSF PreProcessor (PreProcessor), BSF Sampler(Sampler) і View Result Tree (Listener).

Додані нові jar-ки:

bsf.jar(http://commons.apache.org/proper/commons-bsf/download_bsf.cgi) і jython.jar  в папку JMETER_HOME\lib

Код для виконання:

import _csv
csvfile = open('c:\\test\\eggs.csv', 'wb')
_csv.writer(csvfile).writerow(['Spam Spam', 'Lovely Spam', 'Wonderful Spam'])
csvfile.close()

Код нормально працює (створює цсв-файл) тільки на BSF PreProcessor (вибрано jython для Script Language)

 

 

 

При спробі вставити код в BSF Sampler викидає помилку:

2013/05/07 14:29:20 WARN  - jmeter.protocol.java.sampler.BSFSampler: BSF error org.apache.bsf.BSFException: exception from Jython:
SyntaxError: ("no viable alternative at input 'import'", ('<string>', 1, 0, 'import _csv\n'))

    at org.apache.bsf.engines.jython.JythonEngine.eval(JythonEngine.java:133)
    at org.apache.jmeter.protocol.java.sampler.BSFSampler.sample(BSFSampler.java:114)
    at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:428)
    at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256)
    at java.lang.Thread.run(Unknown Source)
 

 

 

 

Хтось стикався з даною проблемою? Шляхи вирішення?

 

нет, с такой ошибкой не сталикивался

но по ошибке говорится что есть ошибка в синтаксисе

что может означать, что BSF Sampler + jython может иметь какой-то дефект, когда транслирует когда на выполнение

а можете в BSF Sampler выполнить какой-то простой print()

чтобы убедиться, что это проблема впринципе а не в модуле

результати з print() ідентичні:

 

 

 

ну значит это тогда дефект BSF Sampler

попробуйте еще другой какой-то язык, или принципиально использовать jython?

Вам принципиально использовать jython? Взгляните на приложение, версия 2.7, язык groovy

Дякую за допомогу!

Використовувати Jython мені не принципово, просто спершу була думка, що в мене щось не так з настройками/скриптом.

Але так виглядає що дійсно є баг в самому BSF Sampler.

Груві нормальний варіант, тим більше що це - Джава, як і Джмітер, то багів з ним має бути менше :)

для тех кто нагуглит эту тему по сообщению об ошибке, как и я
Как оказалось, jython в jmeter нужно использовать не через BSF PreProcessor/BSF Sampler (они, похоже, для очень старых версий jython) а с JSR223* нодами, в них надо выбирать Script language - jython (python 2.7 / jython 2.7.0)

в папку JMETER_HOME\lib положил последний jar с jython.org
Работает как часы)

1 лайк