Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Research unit test approach regarding headless testing #392

Open
Cervator opened this issue Dec 24, 2018 · 0 comments
Open

Research unit test approach regarding headless testing #392

Cervator opened this issue Dec 24, 2018 · 0 comments
Labels
Enhancement-code quality Javadoc, renaming, reordering of lines of code

Comments

@Cervator
Copy link
Member

Follow-up to #360 which upgraded DS to use LWJGL3 on the backend. Unit tests are still somewhat new to DestSol unlike for Terasology, which has some advanced headless capabilities. During work on #360 @BenjaminAmos noted as follows:

This breaks the unit tests, due the the new backend not being able to run in environments without a running X server ("X11: The DISPLAY environment variable is missing"). This could be resolved by using the headless LibGDX backend, which I have implemented on my lwjgl3-upgrade-tests-fix branch. The commit is BenjaminAmos/DestinationSol@9626f35.

I included the additional fix when merging and everything is fine as-is in Jenkins and elsewhere. However we should spend a bit of research time in this area to see if the updated approach is the way to go or if we should look at alternatives.

Consider researching the headless testing related code in Terasology to see what we could bring over, including the https://github.com/Terasology/ModuleTestingEnvironment/ which lets you script out headless tests and even the Record & Replay system detailed at https://iaronaraujo.wixsite.com/meusite/blog/google-summer-of-code-2018-final-report - just keep in mind DS likely isn't ready for either of those approaches due to insufficient architecture, particularly not having implemented the entity system yet.

As such this might be more of a long term reminder to dig deeper when we get a chance to focus on automated testing for a while. Also may be worth looking what's out there in LibGDX land when it comes to testing utilities. Maybe we could even use some of those for Terasology one day!

@Cervator Cervator added the Enhancement-code quality Javadoc, renaming, reordering of lines of code label Dec 24, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement-code quality Javadoc, renaming, reordering of lines of code
Projects
None yet
Development

No branches or pull requests

1 participant