将新蜜蜂撒到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 .
答案 0 :(得分:0)
我相信dateutil软件包可以从CPython中获取,因为它不需要Java的任何额外包装。
通常使用pip
来安装dateutil,例如:
pip install python-dateutil
将Python(不是Jython)安装的site-packages
文件夹添加到sys.path中,例如:
sys.path.append("C:\Python27\Lib\site-packages")
就是这样,现在您应该可以使用JSR223测试元素中的dateutil
模块功能了:
请注意,从性能的角度来看,通过Jython解释器调用Python脚本不是最好的主意,并且如果您仅要有限次数地和/或使用一个线程来调用Python代码,则可能最好选择OS Process Sampler。
如果您打算使用Python代码创建主要负载,请考虑使用Locust工具而不是JMeter。如果您不想更改JMeter,那么一种好的方法是用Groovy重写Python代码-从性能的角度来看会更好。
答案 1 :(得分:0)
嗨,请跟上
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文件