How do I execute GUI tests locally?

I am interested in running all tests locally, including GUI ones.

When starting “Run Test…” from IntelliJ, the only test-package that does not pass, is jabref/src/test/java/org/jabref/gui. Most of its tests throw java.lang.IllegalStateException: Application launch must not be called more than once.
Running these tests, jabref starts once, but nothing happens to the GUI, hence I close it and further ui-tests fail as described above. I am unsure what to do here. [1]

I then consulted README.md, advising me to run gradlew integrationTest, instead. Unfortunately, this results in

FAILURE: Build failed with an exception.
* What went wrong:
Task 'integrationTest' not found in root project 'JabRef'

Indeed, I cannot find an integrationTest task in build.gradle.

Therefore, I wonder what the state of running UI-tests is. In what forms may I contribute to automatically testing them?


[1]: This is the other error I get: Prism-ES2 Error : GL_VERSION (major.minor) = 1.4 10:02:49.886 [AWT-EventQueue-0] WARN org.jabref.JabRefGUI - There seem to be problems with OpenJDK and the default GTK Look&Feel. Using Metal L&F instead. Change to another L&F with caution. File: grouptree.fxml not found, attempting with camel case Sep 16, 2017 10:02:54 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.60 File: grouptree.css not found, attempting with camel case

GUI Tests are discussed at https://github.com/koppor/jabref/issues/223

Do you know the keyboard shortcut T in GitHub? You could have found the file gui-tests.sh: https://github.com/JabRef/jabref/blob/a0e552925d38455bfc473037a7d41b7a38246c19/buildres/gui-tests.sh#L1

The new command is ./gradlew guiTest

The GUI tests currently do not run at all. JabRef starts, but nothing happens.

Help here is very, very welcome!

Due to the advantage of Eclipse Jubulua (https://www.eclipse.org/jubula/), we would really welcome someone creating GUI Tests using Jubula. Could you maybe work on https://bugs.eclipse.org/bugs/show_bug.cgi?id=457252?

We see the main advantage in Jubula that it executes on a different JVM and so we do not have threading issues etc.