Skip to content

remk/james-gatling

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gatling tests for James server

For now the only tested protocol is JMAP.

For now, you need to have a running dockerized James JMAP server running on the same computer than your Gatling host. It needs to export the webAdmin over port 8000.

You can run all the scenari via sbt :

bash
$ sbt
 > gatling:test

Run a specific scenario via sbt :

bash
$ sbt
 > gatling:testOnly SCENARIO_FQDN

Available scenario

JmapAuthenticationScenario

FQDN :

scala
org.apache.james.gatling.jmap.scenari.JmapAuthenticationScenario

Authenticate 10 JMAP users, one time. Demonstrate user auto-provisioning through James WebAdmin server.

JmapSendMessagesScenario

FQDN :

scala
org.apache.james.gatling.jmap.scenari.JmapSendMessagesScenario

Authenticate 100 JMAP users, one time. Then they all retrieve their mailboxes, and then sends messages 360 messages each to other recipients.

JmapGetMailboxesScenario

FQDN :

scala
org.apache.james.gatling.jmap.scenari.JmapGetMailboxesScenario

Authenticate 200 JMAP users, one time. Then they all retrieve 360 times their mailboxes each.

JmapGetMessageListScenario

FQDN :

scala
org.apache.james.gatling.jmap.scenari.JmapGetMessageListScenario

Authenticate 100 JMAP users, one time. Then they all retrieve their system mailboxes. Then they send each other 10 mails each at random. Then wait 30 seconds for mails to be delivered. Finally they retrieve 250 times each their mails list using GetMessagesList.

JmapGetMessagesScenario

FQDN :

scala
org.apache.james.gatling.jmap.scenari.JmapGetMessagesScenario

Authenticate 100 JMAP users, one time. Then they all retrieve their system mailboxes. Then they send each other 10 mails each at random. Then wait 30 seconds for mails to be delivered. They retrieve their mails list using GetMessagesList. Then they retrieve their mails 250 times, at random.

JmapMessageUpdateScenario

FQDN :

scala
org.apache.james.gatling.jmap.scenari.JmapMessageUpdateScenario

Authenticate 100 JMAP users, one time. Then they all retrieve their system mailboxes. Then they send each other 10 mails each at random. Then wait 30 seconds for mails to be delivered. They retrieve their mails list using GetMessagesList. Then they update their mail 250 times with the following properties :.

  • 70% mark mails as READ

  • 20% mark mails as ANSWERED

  • 10% mark mails as FLAGGED

NoAuthenticationNoEncryptionScenario

FQDN :

scala
org.apache.james.gatling.smtp.scenari.NoAuthenticationNoEncryptionScenario

Create 100 users, one time. Then they all send mails to their self, every seconds, using SMTP, without encryption and without authentication.

About

Gatling tests for James email server

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Scala 100.0%