Ansible playbooks and roles are code and as any other code it should be tested automatically before it is applied in production environments. But unit tests are not as usefull for Ansible code. We need integrations tests with a fresh linux system everytime. We test with the triple-A concept: • Arrange: boot one or more fresh linux VMs (Vagrant, Virtualbox) • Act: apply Ansible code to test • Assert: test state of the VMs with another Ansible playbook More topics: • Why testing the Ansible code too? • How to test on every git commit? • Troubles to create a testing environment