Testing a Spring Boot monolith
Find a file
2025-05-29 23:50:16 +02:00
.mvn/wrapper Initial commit 2025-05-29 23:23:15 +02:00
src Initial commit 2025-05-29 23:23:15 +02:00
.gitattributes Initial commit 2025-05-29 23:23:15 +02:00
.gitignore Initial commit 2025-05-29 23:23:15 +02:00
mvnw Initial commit 2025-05-29 23:23:15 +02:00
mvnw.cmd Initial commit 2025-05-29 23:23:15 +02:00
perfs.jmx Initial commit 2025-05-29 23:23:15 +02:00
pom.xml Initial commit 2025-05-29 23:23:15 +02:00
README.md Add documentation 2025-05-29 23:50:16 +02:00

perftests-springboot

This is a test for Spring Boot to handle large projets, in quantity of objects to manage.

To use this project, you have to generate the actual code:

  1. Set the root path in src/main/java/fr/spacefox/perftests/springboot/generator/Generator.java constant ROOT_PATH to the actual path of your project sources.
  2. You may change the number of elements to generate with ELEMENTS in the same file.
  3. Run the Generator: now you have a giant Spring Boot project ready to be used!
  4. Build and play! Caution: tests will relaunch the PostgreSQL stack on each test therefore are very slow!
  5. You can run some kind of performance tests by using perfs.jmx in Apache JMeter

See also the Quarkus version.

Requirements:

  • JRE ⩾ 21
  • PostgreSQL (you may use src/test/docker/compose.yaml)

Generated arborescence kind of follow the hexagonal / ports & adapters architecture:

fr.spacefox.perftests.springboot
    .core
        .port
            .data
                EntityNDatasourcePort.java
        .serviceN
            .model
                ModelN.java
            ServiceN
    .data
        .entityN
            EntityN.java
            EntityNRepository.java
            Mapper.java
    .rest
        .endpointN
            .schema
                SchemaN.java
            EndpointNResource.java
            Mapper.java
    PerftestsSpringbootApplication.java
+ tests