Refactors Spring Boot + Maven webshop_backend so CI builds and integration tests use Testcontainers PostgreSQL instead of localhost:5432, and OpenAPI YAML is generated during verify from a running app backed by that container. Use when fixing "Connection to localhost:5432 refused", "Unable to determine Dialect without JDBC metadata", CI build failures without local Postgres, OpenAPI generation at build time, springdoc /v3/api-docs.yaml, Failsafe vs Surefire, or @ServiceConnection Testcontainers setup for this repo.
.aiassistant/rules/BACKEND_RULES.md — ingen infrastrukturlekkasje inn i core; konservative, minimale endringer.localhost:5432. Bruk Testcontainers PostgreSQL og Spring Boot test-integrasjon.GET /v3/api-docs.yaml), skriv til f.eks. target/generated/openapi.yaml, i en fase som kjører i CI (typisk verify via Failsafe).docker compose, eller skjult localhost:5432 for build/test/IT-paths.hibernate.dialect, ignorerte feil, eller H2 som erstatning for Postgres i denne flyten — via Testcontainers.| Område | Anbefaling |
|---|---|
| Enhetstester | Surefire, raskt, ofte uten DB eller med mocks |
| Integrasjonstester | Failsafe (verify), @SpringBootTest, @Testcontainers, PostgreSQLContainer, @ServiceConnection hvis støttet av prosjektets Spring Boot-versjon |
| OpenAPI | Dedikert IT-klasse (f.eks. OpenApiGenerationIT): start kontekst, treff /v3/api-docs.yaml, skriv fil, feil ved feil |
| Konfig | Test/IT-profiler uten jdbc:postgresql://localhost:5432 som eneste sannhet for IT |
pom.xml: Surefire/Failsafe, spring-boot-maven-plugin, eventuelle OpenAPI-plugins.application.yml / application-*.yml og miljøvariabler for datasource./v3/api-docs.yaml) eller annet.localhost:5432 eller manglende JDBC-metadata utløser feilen.Når brukeren ber om full gjennomgang, svar med strukturen i reference.md (seksjoner A–G).