Overview
Using this plug-in JMeter provides an easy way record and replay Appian processes.
JMeter for Appian accomplishes this by hooking into JMeter's Test Script Recorder mechanism. It alters the behavior of most HTTP requests so that additional logic runs when the test is recorded. This logic extracts the standard dynamic values that are passed back and forth when a user interacts with Appian.
Key Features & Functionality
This JMeter plug-in will add post processing to Appian requests/responses to:
The plug-in does not attempt to parameterize end user entered data. This could however be added to the generated test script.
The version of JMeter (4.0) required is no longer working with the latest browsers when recording. Version 5.2.1 will record, but the plugin need updating. I was trying to find the source so I could update it myself, but I can find nothing. How do we proceed?
Hi Michael,
What's the behind the scene logic to capture dynamic values, how does the tool ensure correct values are passed to the subsequent requests?
Thanks Michael. Any ETA when the update would be available?
I see, that is likely due to some changes in the structure of the payload Appian passes back and forth with the browser. I'll submit an updated version that should work better with Appian 20.3 and later. Look for the update AppianJsonParser jar when the updated version appears.
Thank you for replying, passing values through a CSV is not an issue, our script is failing as many of the correlated values are not resolving to a value. There are so many of those that we aren't sure which variable is coming from which response.
Is there any way you can help?
Thanks,
Akshay
The tool is trying to maintain all the backend correlating variables, like the SAVE_INTO and CID fields. For dynamic values that would be entered by a user, ideally those would be set dynamically while the test cases are running, so you aren't just entering the same data over and over. For example, use a CSV where each row corresponds to values of all the fields on a form, and put those values into variables in the POSTs that correspond to the saveIntos.
I used jmeter for appian to record a flow, the dynamic variables have been automatically correlated but there are so many of them and many are not being resolved to a value, due to which our script is failing.
Can you please help?
Thank you Michael, I will look into this between cycles. Thanks for the heads up.
Dan
Yes, The certificate in 4.0 I could not get to work until I made the change above, while the 5.2.1 certificate worked regardless. I do not have time to capture traffic for analysis, but this most likely means that 4.0 Responds with TLS3, while 5.2.1 responds with TLS4.
Here is the source code for JMeterForAppian: https://github.com/appianps/ps-ext-JMeterForAppian
I haven't investigated what it would take to update it to JMeter 5, but it would involve two things:
1. Making sure the plugin framework for SampleCreator(s) is the same
2. Modification to the base code of JMeter 5 to allow the SampleCreator type to be determined by either the ContentType header OR the Accept header (JMeter only uses ContentType out of the box in JMeter 4) - see JMeter change here: https://github.com/appianps/ps-ext-JMeterForAppian/commit/44a72948f316a9fadefdacd8b3f4e6d31caf37ec
Did you encounter this same issue even after installing the JMeter certificate?