branch feature/testsEnMass created (now 891d0060)
This is an automated email from the git hooks/post-receive script. New change to branch feature/testsEnMass in repository pollen. See https://gitlab.nuiton.org/chorem/pollen.git at 891d0060 debut de mise en place de test en mass This branch includes the following new commits: new 891d0060 debut de mise en place de test en mass The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 891d006061b328c1786272b1d835cb8c06f0ce8a Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Fri Dec 1 09:57:52 2017 +0100 debut de mise en place de test en mass -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/testsEnMass in repository pollen. See https://gitlab.nuiton.org/chorem/pollen.git commit 891d006061b328c1786272b1d835cb8c06f0ce8a Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Fri Dec 1 09:57:52 2017 +0100 debut de mise en place de test en mass --- pollen-rest-api/pom.xml | 6 + .../chorem/pollen/rest/api/VoteSimulation.scala | 127 ++++++++++++++ pollen-rest-api/src/test/resources/tsung.xml | 168 ++++++++++++++++++ pollen-rest-api/src/test/resources/tsung2.xml | 188 +++++++++++++++++++++ pollen-rest-api/src/test/resources/votes.csv | 5 + pom.xml | 6 + 6 files changed, 500 insertions(+) diff --git a/pollen-rest-api/pom.xml b/pollen-rest-api/pom.xml index 2527e5c7..455f51b6 100644 --- a/pollen-rest-api/pom.xml +++ b/pollen-rest-api/pom.xml @@ -260,6 +260,12 @@ <artifactId>log4j</artifactId> <scope>compile</scope> </dependency> + + <dependency> + <groupId>io.gatling.highcharts</groupId> + <artifactId>gatling-charts-highcharts</artifactId> + <scope>test</scope> + </dependency> </dependencies> diff --git a/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/VoteSimulation.scala b/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/VoteSimulation.scala new file mode 100644 index 00000000..901ef360 --- /dev/null +++ b/pollen-rest-api/src/test/java/org/chorem/pollen/rest/api/VoteSimulation.scala @@ -0,0 +1,127 @@ +package org.chorem.pollen.rest.api + +import scala.concurrent.duration._ + +import io.gatling.core.Predef._ +import io.gatling.http.Predef._ +import io.gatling.jdbc.Predef._ + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +class VoteSimulation extends Simulation { + + val httpProtocol = http + .baseURL("http://felteu:8888") + .inferHtmlResources() + .acceptHeader("*/*") + .acceptEncodingHeader("gzip, deflate") + .acceptLanguageHeader("fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3") + .userAgentHeader("Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0") + + val headers_1 = Map( + "Accept" -> "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", + "Access-Control-Request-Headers" -> "content-type,x-pollen-ui-context", + "Access-Control-Request-Method" -> "GET", + "Origin" -> "http://felteu:8080") + + val headers_2 = Map( + "content-language" -> "fr", + "content-type" -> "application/json;charset=UTF-8", + "origin" -> "http://felteu:8080", + "x-pollen-ui-context" -> """{"uiEndPoint":"http://felteu:8080","userValidateUrl":"http://felteu:8080/#signcheck/{userId}/{token}","pollVoteUrl":"http://felteu:8080/#poll/{pollId}/vote/{token}","pollVoteEditUrl":"http://felteu:8080/#poll/{pollId}/vote/{voteId}/{token}","pollEditUrl":"http://felteu:8080/#poll/{pollId}/summary/{token}","resourceUrl":"http://felteu:8888/pollen-rest-api/v1/resources/{resourceId}","resourceDownloadUrl":"http://felteu:8888/pollen-rest-api/v1/resources/{reso [...] + + val headers_12 = Map( + "Accept" -> "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", + "Access-Control-Request-Headers" -> "content-type,x-pollen-ui-context", + "Access-Control-Request-Method" -> "POST", + "Origin" -> "http://felteu:8080") + + val uri1 = "felteu" + + val scn = scenario("RecordedSimulation") + .exec(http("request_0") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ?") + .headers(headers_1), + http("request_2") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ?") + .headers(headers_2), + http("request_3") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/choices?") + .headers(headers_1), + http("request_4") + .options("/pollen-rest-api/v1/voteCountingTypes/3") + .headers(headers_1), + http("request_5") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/votes/new?") + .headers(headers_1), + http("request_6") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/results?") + .headers(headers_1), + http("request_7") + .get("/pollen-rest-api/v1/voteCountingTypes/3") + .headers(headers_2), + http("request_8") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/choices?") + .headers(headers_2), + http("request_9") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/votes/new?") + .headers(headers_2), + http("request_10") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/results?") + .headers(headers_2))) + .pause(7) + .exec(http("request_12") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/votes?") + .headers(headers_12) + .resources(http("request_13") + .post("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/votes?") + .headers(headers_2) + .body(RawFileBody("RecordedSimulation_0013_request.txt")), + http("request_14") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1), + http("request_15") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2), + http("request_16") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/choices?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1), + http("request_17") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/results?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1), + http("request_18") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/choices?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2), + http("request_19") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/results?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2), + http("request_20") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/votes?order=topiaCreateDate&desc=true&pageSize=20&permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1), + http("request_21") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/votes?order=topiaCreateDate&desc=true&pageSize=20&permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2))) + .pause(6) + .exec(http("request_22") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1) + .resources(http("request_23") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2), + http("request_24") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/choices?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1), + http("request_25") + .options("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/results?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_1), + http("request_26") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/choices?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2), + http("request_27") + .get("/pollen-rest-api/v1/polls/jFDstObUSYu1kP332cHFLQ/results?permission=CKuvdMXnRiOfEU1mOX03cQ") + .headers(headers_2))) + + setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol) + +} diff --git a/pollen-rest-api/src/test/resources/tsung.xml b/pollen-rest-api/src/test/resources/tsung.xml new file mode 100644 index 00000000..6fc7d091 --- /dev/null +++ b/pollen-rest-api/src/test/resources/tsung.xml @@ -0,0 +1,168 @@ +<?xml version="1.0"?> +<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd"> +<!--<tsung loglevel="debug" dumptraffic="true" version="1.0">--> +<tsung loglevel="info" version="1.0"> + + <!-- Configuration du client --> + <clients> + <client host="localhost" use_controller_vm="true" maxusers="15000"/> + </clients> + + <!-- Configuration du serveur --> + <servers> + <server host="localhost" port="8888" type="tcp"></server> + </servers> + + <load> + <arrivalphase phase="1" duration="10" unit="minute"> + <users arrivalrate="1" unit="second"></users> + </arrivalphase> + <!-- <arrivalphase phase="2" duration="5" unit="minute"> + <users arrivalrate="10" unit="second"></users> + </arrivalphase> + <arrivalphase phase="3" duration="1" unit="minute"> + <users arrivalrate="30" unit="second"></users> + </arrivalphase>--> + </load> + + <!-- Les scénarios --> + <sessions> + <session name="scenario1" probability="100" type="ts_http"> + <request> + <http url='/pollen-rest-api/v1/configuration' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/gtu/define' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/loginproviders/active' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/configuration' version='1.1' content_type='application/json;charset=UTF-8' + method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/gtu/define' version='1.1' content_type='application/json;charset=UTF-8' + method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/loginproviders/active' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg?' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg?' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/choices?' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/voteCountingTypes/3' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/results?' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes/new?' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/voteCountingTypes/3' version='1.1' content_type='application/json;charset=UTF-8' + method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes/new?' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/choices?' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/results?' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes?order=topiacreatedate&desc=true&pagesize=20' + version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes?order=topiacreatedate&desc=true&pagesize=20' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + + <thinktime random='true' value='23'/> + + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes?' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes?' version='1.1' + contents='{"id":null,"voterName":"azerty","choice":[{"choiceId":"7XhoOGPQTViBWdnqiymiBQ","voteValue":"1"},{"choiceId":"SKC7aJdKTtyVf_AD_kRzMA","voteValue":"2"},{"choiceId":"rB1-M5nYTCePE4aeASvb6w","voteValue":"3"},{"choiceId":"LN4Eg4fhQY25WGVhKBkRrQ","voteValue":"4"},{"cho [...] + content_type='application/json;charset=UTF-8' method='POST'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg?permission=cmw4cyg5spoweeqyevxx-g' version='1.1' + method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg?permission=cmw4cyg5spoweeqyevxx-g' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes?order=topiacreatedate&desc=true&pagesize=20&permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/results?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/choices?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/votes?order=topiacreatedate&desc=true&pagesize=20&permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/results?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/choices?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + + <thinktime random='true' value='3'/> + + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg?permission=cmw4cyg5spoweeqyevxx-g' version='1.1' + method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg?permission=cmw4cyg5spoweeqyevxx-g' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/choices?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/results?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/choices?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/polls/2sn_2l0es02ylrdd2woagg/results?permission=cmw4cyg5spoweeqyevxx-g' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + + </session> + </sessions> +</tsung> diff --git a/pollen-rest-api/src/test/resources/tsung2.xml b/pollen-rest-api/src/test/resources/tsung2.xml new file mode 100644 index 00000000..53283982 --- /dev/null +++ b/pollen-rest-api/src/test/resources/tsung2.xml @@ -0,0 +1,188 @@ +<?xml version="1.0"?> +<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd"> +<tsung loglevel="notice" version="1.0"> + + <!-- Client side setup --> + <clients> + <client host="localhost" use_controller_vm="true"/> + </clients> + + <!-- Server side setup --> + <servers> + <server host="localhost" port="8888" type="tcp"></server> + </servers> + + <!-- to start os monitoring (cpu, network, memory). Use an erlang + agent on the remote machine or SNMP. erlang is the default --> + <!--<monitoring>--> + <!--<monitor host="localhost" type="snmp"></monitor>--> + <!--</monitoring>--> + + <load> + <!-- several arrival phases can be set: for each phase, you can set + the mean inter-arrival time between new clients and the phase + duration --> + <arrivalphase phase="1" duration="1" unit="minute"> + <users interarrival="2" unit="second"></users> + </arrivalphase> + </load> + + <options> + <option type="ts_http" name="user_agent"> + <user_agent probability="80">Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050513 Galeon/1.3.21</user_agent> + <user_agent probability="20">Mozilla/5.0 (Windows; U; Windows NT 5.2; fr-FR; rv:1.7.8) Gecko/20050511 Firefox/1.0.4</user_agent> + </option> + <option name="file_server" id="votes" value="votes.csv"></option> + </options> + + <!-- start a session for a http user. the probability is the + frequency of this type os session. The sum of all session's + probabilities must be 100 --> + + <sessions> + <session name="http-example" probability="100" type="ts_http"> + <setdynvars sourcetype="file" fileid="votes" delimiter=";" order="iter"> + <var name="poll_id" /> + <var name="vote" /> + </setdynvars> + + <request> + <http url='/pollen-rest-api/v1/configuration' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/gtu/define' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/loginproviders/active' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/configuration' version='1.1' content_type='application/json;charset=UTF-8' + method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/gtu/define' version='1.1' content_type='application/json;charset=UTF-8' + method='GET'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/loginproviders/active' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%' version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/choices' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/voteCountingTypes/3' version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/results' version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes/new' version='1.1' method='OPTIONS'></http> + </request> + <request> + <http url='/pollen-rest-api/v1/voteCountingTypes/3' version='1.1' content_type='application/json;charset=UTF-8' + method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes/new' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/choices' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/results' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes?order=topiaCreateDate&desc=true&pageSize=20' + version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes?order=topiaCreateDate&desc=true&pageSize=20' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + + <thinktime random='true' value='23'/> + + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes?' version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes?' version='1.1' + contents='%%_vote%%' + content_type='application/json;charset=UTF-8' method='POST'> + <http_header name="X-Pollen-UI-context" value="{"uiEndPoint":"http://localhost:8080","userValidateUrl":"http://localhost:8080/#signcheck/{userId}/{token}","pollVoteUrl":"http://localhost:8080/#poll/{pollId}/vote/{token}","pollVoteEditUrl":"http://localhost:8080/#poll/{pollId}/vote/{voteId}/{token}","pollEditUrl":"http://localhost:8080/#poll/{pollId}/summary/{token}","resourc [...] + </http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%' version='1.1' + method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes?order=topiaCreateDate&desc=true&pageSize=20' + version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/results' + version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/choices' + version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/votes?order=topiaCreateDate&desc=true&pageSize=20' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/results' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/choices' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + + <thinktime random='true' value='3'/> + + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%' version='1.1' + method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%' version='1.1' + content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/choices' + version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/results' + version='1.1' method='OPTIONS'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/choices' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + <request subst="true"> + <http url='/pollen-rest-api/v1/polls/%%_poll_id%%/results' + version='1.1' content_type='application/json;charset=UTF-8' method='GET'></http> + </request> + + </session> + </sessions> +</tsung> \ No newline at end of file diff --git a/pollen-rest-api/src/test/resources/votes.csv b/pollen-rest-api/src/test/resources/votes.csv new file mode 100644 index 00000000..c886c35b --- /dev/null +++ b/pollen-rest-api/src/test/resources/votes.csv @@ -0,0 +1,5 @@ +2sn_2l0eS02YLRDD2WOAGg;{"id":null,"voterName":"Nom1","choice":[{"choiceId":"7XhoOGPQTViBWdnqiymiBQ","voteValue":"1"},{"choiceId":"SKC7aJdKTtyVf_AD_kRzMA","voteValue":"2"},{"choiceId":"rB1-M5nYTCePE4aeASvb6w","voteValue":"3"},{"choiceId":"LN4Eg4fhQY25WGVhKBkRrQ","voteValue":"4"},{"choiceId":"kxDZO5MDRmWtHTt8We1Wew","voteValue":"5"},{"choiceId":"0LkioXHZRLKYFqCvOHrs-A","voteValue":"6"},{"choiceId":"w2FI3NzgTraJ8s3UPEiE5A","voteValue":"7"}]} +2sn_2l0eS02YLRDD2WOAGg;{"id":null,"voterName":"Nom1","choice":[{"choiceId":"7XhoOGPQTViBWdnqiymiBQ","voteValue":"2"},{"choiceId":"SKC7aJdKTtyVf_AD_kRzMA","voteValue":"3"},{"choiceId":"rB1-M5nYTCePE4aeASvb6w","voteValue":"3"},{"choiceId":"LN4Eg4fhQY25WGVhKBkRrQ","voteValue":"4"},{"choiceId":"kxDZO5MDRmWtHTt8We1Wew","voteValue":"5"},{"choiceId":"0LkioXHZRLKYFqCvOHrs-A","voteValue":"6"},{"choiceId":"w2FI3NzgTraJ8s3UPEiE5A","voteValue":"7"}]} +2sn_2l0eS02YLRDD2WOAGg;{"id":null,"voterName":"Nom1","choice":[{"choiceId":"7XhoOGPQTViBWdnqiymiBQ","voteValue":"3"},{"choiceId":"SKC7aJdKTtyVf_AD_kRzMA","voteValue":"4"},{"choiceId":"rB1-M5nYTCePE4aeASvb6w","voteValue":"3"},{"choiceId":"LN4Eg4fhQY25WGVhKBkRrQ","voteValue":"4"},{"choiceId":"kxDZO5MDRmWtHTt8We1Wew","voteValue":"5"},{"choiceId":"0LkioXHZRLKYFqCvOHrs-A","voteValue":"6"},{"choiceId":"w2FI3NzgTraJ8s3UPEiE5A","voteValue":"7"}]} +2sn_2l0eS02YLRDD2WOAGg;{"id":null,"voterName":"Nom1","choice":[{"choiceId":"7XhoOGPQTViBWdnqiymiBQ","voteValue":"4"},{"choiceId":"SKC7aJdKTtyVf_AD_kRzMA","voteValue":"5"},{"choiceId":"rB1-M5nYTCePE4aeASvb6w","voteValue":"3"},{"choiceId":"LN4Eg4fhQY25WGVhKBkRrQ","voteValue":"4"},{"choiceId":"kxDZO5MDRmWtHTt8We1Wew","voteValue":"5"},{"choiceId":"0LkioXHZRLKYFqCvOHrs-A","voteValue":"6"},{"choiceId":"w2FI3NzgTraJ8s3UPEiE5A","voteValue":"7"}]} +2sn_2l0eS02YLRDD2WOAGg;{"id":null,"voterName":"Nom1","choice":[{"choiceId":"7XhoOGPQTViBWdnqiymiBQ","voteValue":"5"},{"choiceId":"SKC7aJdKTtyVf_AD_kRzMA","voteValue":"6"},{"choiceId":"rB1-M5nYTCePE4aeASvb6w","voteValue":"3"},{"choiceId":"LN4Eg4fhQY25WGVhKBkRrQ","voteValue":"4"},{"choiceId":"kxDZO5MDRmWtHTt8We1Wew","voteValue":"5"},{"choiceId":"0LkioXHZRLKYFqCvOHrs-A","voteValue":"6"},{"choiceId":"w2FI3NzgTraJ8s3UPEiE5A","voteValue":"7"}]} \ No newline at end of file diff --git a/pom.xml b/pom.xml index 8e9f02b4..73c3cbf0 100644 --- a/pom.xml +++ b/pom.xml @@ -545,6 +545,12 @@ <version>0.9.4</version> </dependency> + <dependency> + <groupId>io.gatling.highcharts</groupId> + <artifactId>gatling-charts-highcharts</artifactId> + <version>2.3.0</version> + </dependency> + <!--dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
participants (1)
-
chorem.org scm