diff --git a/test/cosmos.py b/test/cosmos.py
index a4449e60c8a6a573adb3d27925d428c75f95eb2b..02c7856951850a381bcf56c3da7efc046cee7d07 100755
--- a/test/cosmos.py
+++ b/test/cosmos.py
@@ -7,7 +7,6 @@ import os
 import re
 import requests
 import socket
-import sys
 from tabulate import tabulate
 from time import sleep
 
@@ -118,6 +117,26 @@ def create_droplet(name: str, ssh_key_id: int, region: str = 'ams1',
     return response
 
 
+def delete_domain_record(domain: str, id: int):
+    """Delete a domain record."""
+    log.info('Deleting domain record %s', id)
+    response = request_api('domains/{0}/records/{1}'.format(domain, id),
+                           'DELETE')
+    return response
+
+
+def delete_domain_records_by_name(domain: str, name_regex: str):
+    """Delete all domain records in a given domain matching a regex.
+
+    Examples:
+      delete_domain_records_by_name('openappstack.net', '^\*.ci-')
+      delete_domain_records_by_name('openappstack.net', '^ci-')
+    """
+    all = get_domain_records_by_name(domain, name_regex)
+    for record in all:
+        delete_domain_record(domain, record['id'])
+
+
 def delete_droplet(id: int):
     """Delete a droplet. Droplet needs to be stopped first."""
     log.info('Deleting %s', id)
@@ -131,6 +150,12 @@ def get_domain_record(domain: str, id: int):
     return response['domain_record']
 
 
+def get_domain_records(domain: str):
+    """Get domain records for given domain."""
+    response = request_api('domains/{0}/records'.format(domain))
+    return response['domain_records']
+
+
 def get_domain_record_by_name(domain: str, name: str,
                               record_type: str = 'A'):
     """
@@ -151,10 +176,17 @@ def get_domain_record_by_name(domain: str, name: str,
     return matching
 
 
-def get_domain_records(domain: str):
-    """Get domain records for given domain."""
-    response = request_api('domains/{0}/records'.format(domain))
-    return response['domain_records']
+def get_domain_records_by_name(domain: str, name_regex: str):
+    r"""
+    Get all information about domain records matching a regex in their names.
+
+    Example:
+        get_domain_records_by_name(name_regex='^ci\d+')
+    """
+    all_records = get_domain_records(domain)
+    matching = [record for record in all_records
+                if re.match(name_regex, record['name'])]
+    return matching
 
 
 def get_droplets():