【发布时间】:2015-12-23 14:31:27
【问题描述】:
我正在使用 JMeter 来测试我们的 API,但是(我认为)当字符串太大时,JMeter 会引发错误。我得到一个普通文本的结果,但是当我在结果树中选择 JSON 格式时,我得到了这个错误,我无法再查看响应。当我尝试使用不太大的字符串的不同响应时,我可以毫无问题地查看结果。
2015/12/23 15:25:22 ERROR - jmeter.JMeter: Uncaught exception: java.lang.StackOverflowError
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)
at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
等
采样器结果
Thread Name: Thread Group 3-1
Sample Start: 2015-12-23 15:07:54 CET
Load time: 383
Connect Time: 0
Latency: 382
Size in bytes: 16835
Headers size in bytes: 185
Body size in bytes: 16650
Sample Count: 1
Error Count: 0
Response code: 200
Response message: OK
Response headers:
HTTP/1.1 200 OK
Connection: keep-alive
X-Powered-By: Undertow/1
Server: WildFly/9
Transfer-Encoding: chunked
Content-Type: application/json
Date: Wed, 23 Dec 2015 14:07:54 GMT
HTTPSampleResult fields:
ContentType: application/json
DataEncoding: null
这是我发送给服务器的请求
{
"event_id":"592929"
}
这就是响应
{
"status": 1,
"message": "Success",
"result": {
"data": [
{
"Event": {
"event_id": 592929,
"name": "",
"description": "",
"time": "2016-01-02 22:00:00",
"venue_address": "",
}
},
{
"Venue": {
"id": 1022,
"name": "",
"street": "",
"postcode": "",
"region": "",
"Latitude": "",
"Longitude": "",
"short_description": "",
"description": "",
"facilities": ""
}
},
{
"Ticket": {
"ticket_id": 567828,
"ticket_price": "10.00",
"sold_out": 0,
"ticket_url": "",
"available": 1
}
}
]
}
}
现在,取决于我发送的值(以及我得到的结果),它要么正常工作,我可以查看 JSON 响应,要么不正常,当在结果树上选择 JSON 时,它给了我这个大错误.
这仅在使用 JMeter 时。我尝试使用 Postman,查看结果没有问题。
【问题讨论】: