Saber Alex
Saber Alex

Reputation: 1723

gradlew gatlingRun doesn't run any test

I am trying to perform a load testing with gradle-gattling, below are my build.gradle and my BasicSimulation.scala

plugins {
    id "com.github.lkishalmi.gatling" version "3.0.2"
}
repositories {
    mavenCentral()
}
apply plugin: 'scala'
dependencies {
    testCompile 'junit:junit:4.12'
    compile 'org.scala-lang:scala-library:2.11.8'
}

gatling {
    simulations = {
        include "**/predictors/*.scala"
    }
}

gatlingRun {
    systemProperties 'endpoint': "${endpoint}"
}

I put the BasicSimulation.scala in the src/gatling/predictors folder.

package predictors

import io.gatling.http.Predef._
import io.gatling.core.Predef._
class BasicSimulation extends Simulation {
  val httpConf = http.baseURL("http://localhost:8000/")
  val scn = scenario("Basic Simulation")
    .exec(http("request_1")
      .get("api/chemocare/gatling/"))
    .pause(5)
  setUp(
    scn.inject(atOnceUsers(80))
  ).protocols(httpConf)
}

I set up my rest-api and test it with postman. It works fine. However, when I run gradlew gatlingRun, it seems like none of the test is executed and no report is generated. I got this message instead:

BUILD SUCCESSFUL in 1s
1 actionable task: 1 executed

How do I execute and register the test?

Upvotes: 9

Views: 5847

Answers (5)

Fletch
Fletch

Reputation: 5219

I almost went crazy with this problem, even though this does not answer the OP (who named the test correctly) I'm going to post it here for others. gatlingRun will only execute Simulations whose name end in Simulation. The exact syntax is documented under the plugin configuration.

Upvotes: 0

Mykyta
Mykyta

Reputation: 111

Somebody may place simulations in the wrong package (by default IntelliJ IDEA creates main/scala or main/java source set when you are creating an empty Gradle project)

Check does your files are placed in gatling/scala package

And then run all simulations using ./gradlew clean gatlingRun command

Upvotes: 0

sourabh.gangoli
sourabh.gangoli

Reputation: 73

In local, I tried with below approach working fine for me ->

gradle clean build -> to clean build the project

 ./gradlew gatlingRun-com.project.sample.performance.simulations.sample.SampleBaseSimulation-> to run the single file

gradle gatlingRun-com.project.sample.performance.simulations.sample.SampleBaseSimulation-> to run the single file

gradle gatlingRun -> to run all simulations

Upvotes: 1

ddc
ddc

Reputation: 965

I had the same problem, I was getting BUILD SUCCESSFUL but test was not running.

I gave correct command (below command) to run gatling test, in fact which was working earlier, suddenly stopped working. After a bit of investigation I have got to know that build files have been replaced with old files.

I deleted content in build folder in gatling module and rebuilt the module, then the source files have been build into build folder, then the below command starts working again

./gradlew myproject-service-gatling:gatlingRun-com.org.myproject.StoreMyQueriesToSolrGatlingTest

My project structure

  Root_Proj

   |__ myproject-service
   
          |__ src

               |__ gatling [myproject-service-gatling]
                   
                    |__ build

                         |__ resources

                         |__ scala

               |__ main
          
                    |__ java

                    |__ resources

               |__ test

                    |__ java

                    |__ resources

Upvotes: 0

Younes El Ouarti
Younes El Ouarti

Reputation: 2354

I had the same problem and wanted to share my solution, as it deviates a bit from the comments.

In general it is true, that a BUILD SUCCESSFUL without running a test, might indicate that Gatling wasn't able to find the simulations.

In my case I've been running:

gradle gatlingRun-MySimulation

What I've missed is that xyz in gatlingRun-xyz has to be a fully qualified name. So the command should be

gradle gatlingRun-org.corp.pkge.MySimulation

Upvotes: 1

Related Questions