Do Grails 7-M3 projects, created by GrailsForge, f...
# questions
a
Do Grails 7-M3 projects, created by GrailsForge, fail IntegrationTests out of the box, unless Docker is installed? Is this how it’s supposed to work?
j
I assume you mean the functional / Geb based tests?
If so ... In the past, we used Geb with the web driver gradle plugin that ran tests on your local machine. Unfortunately, it's been abandoned. When we looked for other solutions, we found most people have moved to containers to run their selenium based tests - selenium even provides images now via containers. The web driver function is still there, but you'll have to manually manage the driver versions - which will rapidly change and diverge from your local browser's version. Given the rapid pace of driver development, the rapid pace of browser development, and the issue of keeping a selenium version that's compatible with the other java libraries that are also rapidly changing, this approach is likely going to be highly frustrating for most developers. This also has the side effect that over time your builds are not reproducible since you won't be testing with the same versions. Given the lack of support for the legacy way, we wanted a better "just works" solution. Most seem to use the testcontainers library for consistent builds. We enhanced the grails-geb plugin to use test containers as the default and found it made the grails-core tests highly consistent and reproducible. The problem with testcontainers is you need a compatible container runtime such as • Docker DesktopOrbStack - macOS only • Rancher Desktoppodman desktopColima - macOS and Linux So yes, you'll need to install one if you're using the defaults. Otherwise, you'll need to manage those dependencies yourself and constantly fight against them when your browser upgrades.
👍 1
a
I was following Grails Doc line by line. Doc said run
Copy code
./gradlew build
It confused-surprised me when it failed.
j
I thought we had updated the docs to say it was required. We can make it not fail if there aren't any geb tests too.
👍 1
j
a
P.S. I was following instructions regarding upgrading to grails 7, https://docs.grails.org/7.0.0-M3/guide/upgrading.html#upgrading60x
j
👍 1