JSR223 采样器,用于测试启用了 AJAX 的基于 Kerberos 的服务

JSR223 Sampler to test Kerberos enabled AJAX based services

我们在 RESTful 服务上启用了基于 kerberos 的身份验证。目前我正在对这些服务支持的网站进行负载测试,需要一种调用这些服务的方法。我按照官方网站指南,使用普通的 HTTP 请求采样器和授权管理器调用 Kerberos 支持的服务,它工作正常。但现在我需要从 JSR223 Sampler 调用一些服务来模拟并行 AJAX 调用。有人知道如何去做吗?

假设您使用 Apache HTTPClient 4 implementation(默认),例如:

import org.apache.http.client.CredentialsProvider;
import org.apache.http.impl.client.AbstractHttpClient;
import org.apache.jmeter.protocol.http.control.AuthManager;
import org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy;
import org.apache.jmeter.util.JMeterUtils;
import java.net.URL;

AuthManager authManager = ((HTTPSamplerProxy) ctx.getPreviousSampler()).getAuthManager();
CredentialsProvider credentialsProvider = ((AbstractHttpClient) client).getCredentialsProvider();
String localhost = JMeterUtils.getPropDefault("httpclient.localaddress", "");
authManager.setupCredentials(client, new URL("http://your.url"), credentialsProvider, localhost);

参考文献: