Automated acceptance tests for terminal applications
Room 7 | Wed 15 Jan | 10:45 a.m.–11:30 a.m.
Presented by
-
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.
Roman Joost
http://www.romanofski.de
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
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