Skip to content
This repository has been archived by the owner on Feb 28, 2019. It is now read-only.

This project is now the original Testbench from vaadin. Project will be developed there.

License

Notifications You must be signed in to change notification settings

Java-Archive/vaadin-testbench-ng

Repository files navigation

Vaadin Testbench NG

Maven Central Codacy Badge

00.07.07-RPM

  • removed the initializer implementations The Container (SpringBootV1/V2, Meecrowave, ...) are not fast enough following the last JDKs Additionally, the most projects needs more sprecialized Conatiners / infrastructure
  • removed test/demo apps into a separate project

00.07.06-RPM

  • version updates

00.07.05-RPM

  • added the vXX packages for the latest Vaadin version

00.07.04-RPM

  • switched to new version numbers format To make search/replace easier, I started with a new version format. 00.07.04-RPM ( -SNAPSHOT). The x.y.z is used in the same way, as before, but added RPM and leading zeros to make this format different from others. With this it is less possible to mix/change version numbers from other dependencies. A 0.7.4 could be used from different dependencies. ;-)

SHORT DEVELOPER INFOS

Module - junit5

Module - container

Module -

This ist the first version of my TestBench Add On. TestBench is from https://vaadin.com/ and could be found here https://vaadin.com/testbench.

To use/try Vaadin TestBench you can get a License / Trail here : https://vaadin.com/pro/licenses and if you are using TestBench for an Open Source Project you can apply for an Open Source License.

The basic documentation about TestBench for Vaadin 8 is here https://vaadin.com/docs/testbench/testbench-overview.html

Target of this Add On

The target for this project is the optimized handling of the webdrivers and PageObject-Pattern to write effective and compact tests with jUnit5 , TestBench and different Selenium Implementations.

A few different ways of writing Junit Tests for Vaadin Apps you can find here : https://github.com/vaadin-developer/testbench-jumpstart

As mentioned before, the documentation is not ready until now. Have a look at the tests or better, ask me ;-)

email: mailto:[email protected] Twitter: https://twitter.com/SvenRuppert

Configuration

The Add on is configured by a bunch of files. You have to place them in a folder called .testbenchextension is folder can be located at different places:

  1. The root of the classpath
  2. The current work directory
  3. The users home directory
  4. In a directory specified by the property rapidm.configlocation

Properties defined in the higher locations override properties the lower one.

Templates for the configuration are placed in the .testbenchextentsions directories in the modules.

Selenoid in Docker

Selenoid is a nice alternative for Selenium-Hub written in GO. Give it a try and check the githup repo here : https://github.com/aerokube/selenoid One easy way of using it, will be based on Docker.

This is needed to manage the driver images

docker pull aerokube/cm:latest
docker pull selenoid/hub
docker pull selenoid/video-recorder
docker pull selenoid/phantomjs:2.1.1

This is needed to pull the docker images for the last 4 versions of the declared browsers.

docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
-v `pwd`/selenoid/config:/root/.aerokube/selenoid/ \
aerokube/cm:latest \
selenoid configure \
--tmpfs 128 \
--browsers chrome,firefox,opera,phantomjs \
--last-versions 4

To reconfigure the browsers.json, delete the file in the folder selenoid/browsers.json and container.

start the selenoid hub

docker run --rm -d --name selenoid \
-p 4444:4444                                    \
-v /var/run/docker.sock:/var/run/docker.sock    \
-v `pwd`/_data/selenoid/config/:/etc/selenoid/:ro              \
-v `pwd`/_data/selenoid/video/:/opt/selenoid/video/            \
-e OVERRIDE_VIDEO_OUTPUT_DIR=`pwd`/_data/selenoid/video/       \
aerokube/selenoid:latest-release

start the ui for selenoid if you want, not needed

docker run --rm -d --name selenoid-ui --link selenoid \
-p 8080:8080 aerokube/selenoid-ui \
--selenoid-uri=http://selenoid:4444