【发布时间】:2019-02-04 16:05:30
【问题描述】:
我想使用 HTTP 客户端测试我们的应用 大量的数据。是否可以创建无限或几千兆字节的长度 使用 WireMock 输出而不分配具有该大小的字节数组或字符串?
据我所知ResponseDefinitionBuilder has three withBody* methods:
public ResponseDefinitionBuilder withBodyFile(String fileName)public ResponseDefinitionBuilder withBody(String body)public ResponseDefinitionBuilder withBody(byte[] body)
我尝试过withBodyFile("/dev/zero"),但出现以下异常:
WARN (ServletHandler.java:628) - /test.txt
com.github.tomakehurst.wiremock.security.NotAuthorisedException: Access to file /dev/zero is not permitted
at com.github.tomakehurst.wiremock.common.AbstractFileSource.assertFilePathIsUnderRoot(AbstractFileSource.java:160)
at com.github.tomakehurst.wiremock.common.AbstractFileSource.getBinaryFileNamed(AbstractFileSource.java:45)
at com.github.tomakehurst.wiremock.http.StubResponseRenderer.renderDirectly(StubResponseRenderer.java:115)
at com.github.tomakehurst.wiremock.http.StubResponseRenderer.buildResponse(StubResponseRenderer.java:64)
at com.github.tomakehurst.wiremock.http.StubResponseRenderer.render(StubResponseRenderer.java:56)
at com.github.tomakehurst.wiremock.http.AbstractRequestHandler.handle(AbstractRequestHandler.java:50)
at com.github.tomakehurst.wiremock.servlet.WireMockHandlerDispatchingServlet.service(WireMockHandlerDispatchingServlet.java:111)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
...
另外两个需要一个巨大的内存数组或字符串,我也想避免。
我也检查了Fault enum,但它似乎无法扩展。
【问题讨论】:
标签: wiremock