diff --git a/tests/multi-node-hosts-file.yaml b/tests/multi-node-hosts-file.yaml
new file mode 100644
index 00000000..4334e534
--- /dev/null
+++ b/tests/multi-node-hosts-file.yaml
@@ -0,0 +1,25 @@
+- name: Test the multi-node-hosts-file role
+  hosts: all
+  roles:
+    - multi-node-hosts-file
+  post_tasks:
+    - name: lookup hosts file
+      command: cat /etc/hosts
+      register: hosts_file
+
+    - name: Set up the list of hosts and addresses
+      set_fact:
+        host_addresses: >
+          {% set hosts = [] -%}
+          {% for host, vars in hostvars.items() -%}
+          {% set _ = hosts.append({'host': host, 'address': vars['nodepool']['private_ipv4']}) -%}
+          {% endfor -%}
+          {{- hosts -}}
+
+    - name: assert that hosts are in the hosts file
+      vars:
+        line: "{{ item.address }} {{ item.host }}"
+      assert:
+        that:
+          - "line in hosts_file.stdout"
+      with_list: "{{ host_addresses }}"
diff --git a/tests/multinode.yaml b/tests/multinode.yaml
index 052954b9..48ead35f 100644
--- a/tests/multinode.yaml
+++ b/tests/multinode.yaml
@@ -3,3 +3,4 @@
 
 # Roles that are part of the 'multinode' job
 - include: multi-node-known-hosts.yaml
+- include: multi-node-hosts-file.yaml