Search code examples
jmeterssl-certificateclient-certificatesdistributed-testing

Jmeter: Distributed Testing with client certificates


We set up Jmeter for performance testing over HTTPS with client certificates (via SSL Manager). It works like a charm if we run it from GUI. But, if we start distributed testing we get a bad certificate error.

How to pass the certificates & password to the slaves?


Solution

  • You can configure the certificates using Java SSL System Properties

    I.e. add the following lines to system.properties file on each remote slave machine:

    javax.net.ssl.keyStore=certificate.p12
    javax.net.ssl.keyStorePassword=secr3t
    javax.net.ssl.keyStoreType=pkcs12
    
    • amend above values to match your settings
    • JMeter restart will be required to pick the properties up.

    You can also pass the values via -D command-line arguments like:

    jmeter -Djavax.net.ssl.keyStore=certificate.p12 -Djavax.net.ssl.keyStorePassword=secr3t -s ...
    

    See How to Set Your JMeter Load Test to Use Client Side Certificates article for more detailed explanation.