AppSuite:Load Tests: Difference between revisions
From Open-Xchange
No edit summary |
No edit summary |
||
Line 46: | Line 46: | ||
; pimObjects: How many PIM Objects, for example contacts, should be created. ''Relevant only for PIM-Simulations like '''QAPerfContacts''' or '''QAPerfAppointments'''. Default value: '''"5"'''.'' | ; pimObjects: How many PIM Objects, for example contacts, should be created. ''Relevant only for PIM-Simulations like '''QAPerfContacts''' or '''QAPerfAppointments'''. Default value: '''"5"'''.'' | ||
=== Snippet from the <properties>-section in the pom.xml === | |||
* List of all available System-Properties: | |||
<properties> | |||
<protocol>http</protocol> | |||
<host>localhost</host> | |||
<port>80</port> | |||
<users>5</users> | |||
<durationTime>30</durationTime> | |||
<durationUnit>SECONDS</durationUnit> | |||
<successpercent>100</successpercent> | |||
<reqpersec>0</reqpersec> | |||
<resptime>0</resptime> | |||
<csv_users>ox_user_credentials.csv</csv_users> | |||
<syncmsgmax>50</syncmsgmax> | |||
<pimObjects>5</pimObjects> | |||
</properties> | |||
=== Snippet from the <jvmArgs>-section in the pom.xml === | |||
* List of all available JVM-Arguments: | |||
<jvmArgs> | |||
<jvmArg>-Dprotocol=${protocol}</jvmArg> | |||
<jvmArg>-Dhost=${host}</jvmArg> | |||
<jvmArg>-Dport=${port}</jvmArg> | |||
<jvmArg>-Dcsv_users=${csv_users}</jvmArg> | |||
<jvmArg>-Dusers=${users}</jvmArg> | |||
<jvmArg>-DdurationTime=${durationTime}</jvmArg> | |||
<jvmArg>-DdurationUnit=${durationUnit}</jvmArg> | |||
<jvmArg>-Dsuccesspercent=${successpercent}</jvmArg> | |||
<jvmArg>-Dreqpersec=${reqpersec}</jvmArg> | |||
<jvmArg>-Dresptime=${resptime}</jvmArg> | |||
<jvmArg>-Dsyncmsgmax=${syncmsgmax}</jvmArg> | |||
<jvmArg>-DpimObjects=${pimObjects}}</jvmArg> | |||
</jvmArgs> | |||
== Test Execution == | == Test Execution == |
Revision as of 12:07, 11 April 2014
Software Requirements
- Java SE JDK6 or JDK7
- Git
Getting Performance Repository
- Cloning Repository
$ git clone https://git.open-xchange.com/git/wd/testing/performance
- Checkout a branch, for example develop
$ git checkout develop
Development Environment
If you want to execute the tests via an IDE like Eclipse then you will also need to install the following software:
- Eclipse 4.2 or later
- Scala IDE plugin
- Maven integration from the default update site m2e
- m2e-scala
- Apache Maven
Importing Project into Eclipse
- Open Eclipse
- Click on File -> Import... -> Maven -> Existing Maven Project
- Select the gatling folder within the performance repository
Configurable Parameters
- protocol
- Which protocol to use. Possible values are: "http" or "https". Default value: "http".
- host
- Which host to use. Possible values are: "localhost", "10.0.0.1" or if you want to stress several groupware servers, to bypass a loadbalancer for example, then you can use comma-separated IPs or hostnames "10.0.0.1,10.0.0.2,localhost". Default value: "localhost".
- users
- How many concurrent users to simulate. Default value: "5".
- durationTime
- Duration time of the simulation. Default value: "30".
- durationUnit
- The Unit of the durationTime. Possible values are: "SECONDS", "MINUTES", "HOURS" or "DAYS". Default value: "SECONDS".
- successpercent
- Successful responses in percentage. Default value: "100".
- reqpersec
- Mean number of requests per second (lower bound). Default value: "0".
- resptime
- Mean response time (lower bound). Default value: "0".
- csv_users
- Name of the CSV-File for feeding the requests. Default value: "ox_user_credentials.csv".
- syncmsgmax
- How many objects to synchronize. Relevant only for QAPerfUSM. Default value: "50".
- pimObjects
- How many PIM Objects, for example contacts, should be created. Relevant only for PIM-Simulations like QAPerfContacts or QAPerfAppointments. Default value: "5".
Snippet from the <properties>-section in the pom.xml
- List of all available System-Properties:
<properties> <protocol>http</protocol> <host>localhost</host> <port>80</port> <users>5</users> <durationTime>30</durationTime> <durationUnit>SECONDS</durationUnit> <successpercent>100</successpercent> <reqpersec>0</reqpersec> <resptime>0</resptime> <csv_users>ox_user_credentials.csv</csv_users> <syncmsgmax>50</syncmsgmax> <pimObjects>5</pimObjects> </properties>
Snippet from the <jvmArgs>-section in the pom.xml
- List of all available JVM-Arguments:
<jvmArgs> <jvmArg>-Dprotocol=${protocol}</jvmArg> <jvmArg>-Dhost=${host}</jvmArg> <jvmArg>-Dport=${port}</jvmArg> <jvmArg>-Dcsv_users=${csv_users}</jvmArg> <jvmArg>-Dusers=${users}</jvmArg> <jvmArg>-DdurationTime=${durationTime}</jvmArg> <jvmArg>-DdurationUnit=${durationUnit}</jvmArg> <jvmArg>-Dsuccesspercent=${successpercent}</jvmArg> <jvmArg>-Dreqpersec=${reqpersec}</jvmArg> <jvmArg>-Dresptime=${resptime}</jvmArg> <jvmArg>-Dsyncmsgmax=${syncmsgmax}</jvmArg> <jvmArg>-DpimObjects=${pimObjects}}</jvmArg> </jvmArgs>