Skip to content

mvysny/vaadin-spring-karibu-testing

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Security + Karibu Testing demo

This project demoes the possibility of testing a Spring Security-based app with Karibu Testing. See the test java classes for more details.

Also see Issue #47 for more details.

See the AbstractAppTest.java class and the rest of the test classes, to see how exactly the app needs to be tested.

Demoes:

  • A way to programmatically log in to your app, so that Karibu-Testing can navigate to your protected views. See the AbstractAppTest class for details.
  • Demoes fake/test implementations for services. See the AbstractAppTest.MyTestConfiguration class for details.

Live demo running on v-herd.

Running the application

The project is a standard Maven project. To run it from the command line, type mvnw (Windows), or ./mvnw (Mac & Linux), then open http://localhost:8080 in your browser.

You can also import the project to your IDE of choice as you would with any Maven project. Read more on how to import Vaadin projects to different IDEs (Eclipse, IntelliJ IDEA, NetBeans, and VS Code).

Deploying to Production

To create a production build, call mvnw clean package -Pproduction (Windows), or ./mvnw clean package -Pproduction (Mac & Linux). This will build a JAR file with all the dependencies and front-end resources, ready to be deployed. The file can be found in the target folder after the build completes.

Once the JAR file is built, you can run it using java -jar target/myapp-1.0-SNAPSHOT.jar

Project structure

  • MainLayout.java in src/main/java contains the navigation setup (i.e., the side/top bar and the main menu). This setup uses App Layout.
  • views package in src/main/java contains the server-side Java views of your application.
  • views folder in frontend/ contains the client-side JavaScript views of your application.
  • themes folder in frontend/ contains the custom CSS styles.

Useful links

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 90.9%
  • Dockerfile 4.1%
  • CSS 3.1%
  • HTML 1.9%