Skip to content

JCGoran/xfce-test

 
 

Repository files navigation

XFCE Test

GitHub Logo

XFCE Test is a setup of a Dockercontainer with Behave tests and an interactive bash helper xfce-test. The main usecases are:

  • Creation of automatic Demo tours (MP4 videos) of XFCE applications
  • Fully automatic GUI tests (which can be "documented" also by creation of a video)
  • Great support for translators by searching and highlighting of translation artefacts and highlighting them within a scenario (this functionality is not yet usable)

The automatically created videos are on my youtube channel for now.

This is a Xubuntu 18.10, with a build from git sources of all core Xfce components + some apps for testing. Other distributions and versions are on other branches!

Travis

The tests are run automatically by travis.

✅ Those test are usually errored or failed as we are building master of the xfce repositories. A more stable branch will follow.

Build Status

Architecture

This test is set-up as a docker container which is displaying it's X11 content on a Xephyr instance on your screen.

The first process to be started is LDTP As "toolkit-accessibility" is activated (see Dockerfile) LDTP provides an XMLRPC port to run automated tests.

On top of LDTP there is Behave running a series of tests.

You can also just start the container and "play around" in the newest XFCE environment...

xfce-test start

Preparations

either "read" the xfce-test script :) or at least assure docker and Xephyr to be on-board

For ubuntu those prerequisites are automatically installed by xfce-test

Installation

There is no direct need to install XFCE Test but for convenience you can install the script and the bash autocompletion functions with ./xfce-test install

Usage

Just start xfce-test to get an interactive menu for possible options or call xfce-test --help

To see the container in action and play around with the "master" versions of XFCE applications just run xfce-test pull to get the current container and xfce-test start to start the container.

Tests

To inspect stuff inside the docker to help create more tests you might want to start sniff which will help you identify the windows and buttons for LDTP.

Screenshots

When you want to make screenshots for each test step just set the variable SCREENSHOTS to ALWAYS

export SCREENSHOTS=ALWAYS
xfce-test

Package compilation

You can also use this container as test and compilation environment. The directory you are currently in, is automatically mounted to /data in the container.

All the default build options which are used by the container are available as AUTOGEN_OPTIONS environment variable in the container. So when you started the container with xfce-test start or xfce-test no-session you can use those options for example by calling ./autogen.sh $AUTOGEN_OPTIONS in the application.

Sources

As the applications of the container are built from source all developer packages and many developer tools are pre-installed. Also the sourcecode is available in the folder /git within the container

About

Docker/Xephyr environment for XFCE testing

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 38.2%
  • Python 37.7%
  • Makefile 9.4%
  • Dockerfile 7.8%
  • Gherkin 6.9%