JMeter for Appian is a tool for Performance testing Appian using JMeter.
Using this plugin JMeter provides an "easy" way record and replay Appian processes.
To use JMeter on your project, please follow the steps identified below for setting up the testing framework and creating/executing test cases.
We ask that whenever possible, you contribute back to the repository and the Appian PS community by:
- adding any missing parameterization that's necessary
- fixing issues and defects
- implementing enhancements
As we work and contribute to make this tool better, we will take the greatest care to ensure that the next versions are backwards compatible. Rest assured that whatever changes are released in the future are NOT going to break your test cases.
If your team cannot directly enhance the framework, please make sure to contact the Appian CoE on Home or over email in order to provide your feedback.
We can help only if we know where the problems are!
- Download the newest version of JMeter.
- Unzip the release package and put the contents into JMETER_HOME which contains the following:
ApacheJMeter_http.jar
replaces the OOTB version with a few changesApacheJMeter_components.jar
version from OOTB 3.1 trunk with JSON fixesjmeter-for-appian-X.X.jar
contains Appian specific functionalityjmeter.properties
turns on cookie settings- Download the example template file
template.jmx
from the release.
- Start JMeter if it isn't already running:
- In a command prompt navigate to
JMETER_HOME\bin
. - Run
jmeter.bat
. - Open the
template.jmx
file included in the release. - Update the following in JMeter:
- User Defined Variables (Test Plan and WorkBench) - Change BASE_URL value to the correct site URL.
- HTTP Request Defaults (Test Plan and WorkBench) - Change Server Name or IP to the correct site URL.
- HTTP(S) Test Script Recorder - Change URL Patterns to Include to correct site URL. All periods in the middle of the URL must be escaped with a backslash ''. Leave the .* at the beginning and end of URL.
- Start recording - click Start on HTTP(S) Test Script Recorder.
- Install the JMeter certificate:
- Right click
JMETER_HOME\bin\ApacheJMeterTemporaryRootCA.crt
and click Install Certificate. - Follow Next > Place all certificates in the following store > Trusted Root Certification Authorities > Next > Finish > Yes > OK
- Configure browser to run through a proxy - Settings > Advanced > Change proxy settings >
LAN settings > Use a proxy server for your LAN
Address: localhost
Port: 8090 - At this point samples should be recorded if you navigate to the site URL.
- Take the following actions:
- Navigate to the login page.
- Login.
- Move all of the created samples in the Recording Controller into the Login (Test Fragment).
- Take the following actions:
- Navigate to the Actions tab.
- Click on an action.
- Complete the action.
- Stop Recording - click Stop on HTTP(S) Test Script Recorder.
- Move all of the created samples in the Recording Controller into the Action (Test Fragment).
- You can now run the performance test again by clicking the green run arrow.
- View the results by clicking on Graph Results, Summary Report, or View Results Tree.
- Download Maven.
- Configure
M2_HOME
environment variable to point to your Maven installation directory. - Add
%M2_HOME%\bin
to PATH environment variable. - Add Git to PATH environment variable.
- Clone the project repo to your local computer using
git clone [email protected]:mchirlin/JMeterForAppian.git
- Setup the
M2_REPO
variable in Eclipse by running:mvn eclipse:configure-workspace -Declipse.workspace="<your-eclipse-workspace>"
.
- If you don't know your eclipse workspace, open your Eclipse preferences and go to General > Startup and Shutdown > Workspaces.
- Cleanup any existing Eclipse project files
mvn eclipse:clean
- Generate new Eclipse project files by running the following from the root of the Labs repo working directory:
mvn eclipse:eclipse
. - Open Eclipse.
- Import the projects using File > Import > General > Existing Projects into Workspace.
- Select the repo folder and import the project.
- Update MAJOR version when you make incompatible API changes, e.g. removing methods, changing method names, or anything that would require updates to existing test cases.
- Update MINOR version when you add functionality in a backwards-compatible manner, e.g. adding new methods, updating drivers or jars.
- Update PATCH version when you make backwards-compatible bug fixes, e.g. fixing existing methods.
- Run
mvn verify
to run integration tests. - Run
mvn clean package
(add-DskipTests=true
to skip unit tests). - Final JAR and Package are placed in the
/target/
folder.