What’s New in 3.0

Core

  • #1647: Support closed workload model, see here.
  • #2602: Introduce batch for batching file based feeders instead of loading full content in memory, see here.
  • #2634: Introduce doWhile loop, see here.
  • #3067: Add percentile(rank: Double) assertion.
  • #3189: Remove Validation#get.
  • #3283: Introduce asLongAsDuring and doWhileDuring loops, see here.
  • #3359: Support Java 9, 10, 11.
  • #3384: Introduce readRecords for reading feeder content, see here.
  • #3395: Automatically parse String values stored in Session into expected type, eg numbers.
  • #3399: Introduce unzip for compressed feeder files, see here.
  • #3415: Support overriding Gatling configuration file name, see here.
  • #3486: Make console print period configuration, see gatling.conf.
  • #3498: Allow the user to pass arbitrary scalac options.
  • #3345: Introduce meta DSL components incrementUsersPerSec and incrementConcurrentUsers.

HTTP

  • #1744: SOCKS 4 and 5 proxies support, see here.
  • #3007: Introduce strategies for naming inferred resources, see here.
  • #3028: Support Pebble templating engine for crafting request bodies, see here.
  • #3042: HTTP/2 support, see here.
  • #3043: baseUrls is now sticky for a given virtual user, see here.
  • #3071: New WebSocket and SSE API, see here.
  • #3088: Introduce findRandom to pick a random check result, see here.
  • #3105: Introduce name for customizing check error message, see here.
  • #3167: Introduce getCookieValue, see here.
  • #3195: ofType now deep converts into Scala Map and Seq types.
  • #3313: form check should extract String or Seq[String] depending on input cardinality.
  • #3325: Use unsecured TrustManager by default.
  • #3341: Introduce isNull and notNull check validators for dealing with null values, typically from JSON, see here.
  • #3412: Introduce asyncNameResolution for switching to non-blocking DNS resolver instead of Java’s one, see here.
  • #3496: transformResponse now takes a Session parameter, see here.
  • #3521: Gatling now uses BoringSSL based SSLEngine by default.
  • #3560: Every virtual user now has its own SSLContext, except if shareConnections is enabled.

JMS

  • 2875: Introduce replyTimeout for individual request timeout, see here.
  • 2967: JMSType support, see here.
  • 3103: Support passing a ConnectionFactory programmatically, see here.
  • 3123: Make Queue names dynamic.
  • 3262: Introduce properties to set custom JNDI properties, see here.
  • 3428: Introduce trackerQueue and trackerDestination, see here.
  • 3514: Introduce noJmsReplyTo to not set JMSReplyTo, see here.

Maven

  • 3493: includes/exclude filters now take ant patterns.

SBT

  • 3168: Introduce Giter8 template, see here.