Presented by

  • Roman Joost

    Roman Joost
    http://www.romanofski.de

    RĂ³man Joost first learned about open-source software in 1997. He has contributed to GIMP and Zope open-source projects for more than eight years and is currently working in Brisbane/Australia as a software engineer. For relaxation, he enjoys spending time with his family, photography and digital painting with GIMP.

Abstract

Acceptance testing is a method of testing an application from a users point of view. In this talk, I will demonstrate our approach to full automated testing a terminal email application (purebred) with the tasty-tmux framework. I'll elaborate the benefits and trade-off's, what problems we experienced and how we solved them. Automating acceptance testing is challenging, because the tests can not adapt to timing sensitive changes in the application. This causes random failures and unresponsiveness. The longer these problems are ignored, the longer value diminishes and investment increases for workarounds and fixes. The audience will get a better understand of what it takes to automate timing sensitive tests. The concept, problems and solutions are language agnostic applicable to any terminal platform and application. Project URL: https://github.com/purebred-mua/tasty-tmux Talk Outline: What is acceptance testing and why should you automate it What other choices of testing did we have and why we haven't chosen them The effort we put into automating our tests What we gained with automating our acceptance tests Future ideas Linux Australia: http://mirror.linux.org.au/pub/linux.conf.au/2020/room_7/Wednesday/Automated_acceptance_tests_for_terminal_applications.webm YouTube: https://www.youtube.com/watch?v=anK3aLXmOXY