J метр с Python: как импортировать пакеты - PullRequest
0 голосов
/ 24 декабря 2018

Iam new bee to jmeter

Мой код работает в Python 2.7 с импортом дополнительных пакетов Dateutil, parser.

Проблема: Но когда я пытаюсь запустить тот же код в препроцессорах J Meter-JSR-223, возникает ошибка, в которой отсутствует модуль с именем dateutil.

Итак, я попробовал другой подход киспользовать Jython.

Установил Jython (скачал dateutil) и предоставил ссылку на пакеты в

import sys
sys.path.append('C:/Jython27/Lib/site-packages')
sys.path.append('C:/Jython27/Lib/site-packages/python_dateutil-2.4.2-py2.7/dateutil')
sys.path.append('C:/Jython27/Lib/site-packages/python_dateutil-2.4.2-py2.7/dateutil')

Теперь ошибка пакетов исчезла, но присутствует ошибка синтаксиса строки . java.sql.Date' object has no attribute .

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

привет, пожалуйста, найдите следующий:

import sys
sys.path.append('C:/Python27/Lib/site-packages')
sys.path.append('C:/Python27/Lib/site-packages/python_dateutil-2.4.2-py2.7/dateutil')

from dateutil.parser import *
sourceDateTimeOfEvent = ""
dateTimeOfEvent = ""

a=parse('2016-07-01 13:00:00')
sourceDateTimeOfEvent = a.isoformat()+"+05:30Z"
dateTimeOfEvent = a.isoformat()+ "Z"

vars.put("sourceDateTimeOfEvent", sourceDateTimeOfEvent)
vars.put("dateTimeOfEvent", dateTimeOfEvent)

Этот sourceDateTimeOfEvent и dateTimeOfEvent рассматривается как две переменные и передает его в файл json

0 голосов
/ 24 декабря 2018

Я полагаю, что пакет dateutil можно получить из CPython, поскольку он не требует никаких дополнительных оболочек для Java.

  1. Устанавливать dateutil обычно, используя pip как:

    pip install python-dateutil
    
  2. Добавить site-packages папку Python (не Jython) установка в sys.path как:

    sys.path.append("C:\Python27\Lib\site-packages")
    
  3. Вот и все, теперь вы должны иметь возможность использовать функции модуля dateutil из теста JSR223Элементы:

    enter image description here


Имейте в виду, что вызов скриптов Python через интерпретатор Jython не являетсялучшая идея с точки зрения производительности, и если вы собираетесь вызывать свой код Python только ограниченное количество раз и / или с помощью одного потока - может быть лучше пойти на OS Process Sampler .

Если вы планируете использовать код Python для создания основной нагрузки - рассмотрите возможность использования инструмента Locust вместо JMeter.Если вы не хотите менять JMeter, хорошим подходом будет переписать ваш код Python в Groovy - это будет намного лучше с точки зрения производительности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...