diff --git a/testing.py b/testing.py
index ffadb56..f1e17c0 100644
--- a/testing.py
+++ b/testing.py
@@ -2,6 +2,11 @@ import requests
 import string
 import random
 
+debug_output = False
+
+def dprint(*args, **kwargs):
+    if debug_output:
+        print(*args, **kwargs)
 
 def randomString(len=10):
     """Generate a random string of fixed length"""
@@ -31,7 +36,7 @@ getUserProjectsPath = base_url + "/api/getUserProjects"
 
 def test_get_user_projects():
 
-    print("Testing get user projects")
+    dprint("Testing get user projects")
     loginResponse = login("user2", "123")
     # Check if the user is added to the project
     response = requests.get(
@@ -39,29 +44,29 @@ def test_get_user_projects():
         json={"username": "user2"},
         headers={"Authorization": "Bearer " + loginResponse.json()["token"]},
     )
-    print(response.text)
-    print(response.json())
+    dprint(response.text)
+    dprint(response.json())
     assert response.status_code == 200, "Get user projects failed"
-    print("got user projects successfully")
+    dprint("got user projects successfully")
 
 
 # Posts the username and password to the register endpoint
 def register(username: string, password: string):
-    print("Registering with username: ", username, " and password: ", password)
+    dprint("Registering with username: ", username, " and password: ", password)
     response = requests.post(
         registerPath, json={"username": username, "password": password}
     )
-    print(response.text)
+    dprint(response.text)
     return response
 
 
 # Posts the username and password to the login endpoint
 def login(username: string, password: string):
-    print("Logging in with username: ", username, " and password: ", password)
+    dprint("Logging in with username: ", username, " and password: ", password)
     response = requests.post(
         loginPath, json={"username": username, "password": password}
     )
-    print(response.text)
+    dprint(response.text)
     return response
 
 
@@ -69,7 +74,7 @@ def login(username: string, password: string):
 def test_login():
     response = login(username, "always_same")
     assert response.status_code == 200, "Login failed"
-    print("Login successful")
+    dprint("Login successful")
     return response.json()["token"]
 
 
@@ -77,8 +82,7 @@ def test_login():
 def test_create_user():
     response = register(username, "always_same")
     assert response.status_code == 200, "Registration failed"
-    print("Registration successful")
-
+    dprint("Registration successful")
 
 # Test function to add a project
 def test_add_project():
@@ -89,10 +93,9 @@ def test_add_project():
         json={"name": projectName, "description": "This is a project"},
         headers={"Authorization": "Bearer " + token},
     )
-    print(response.text)
+    dprint(response.text)
     assert response.status_code == 200, "Add project failed"
-    print("Add project successful")
-
+    dprint("Add project successful")
 
 # Test function to submit a report
 def test_submit_report():
@@ -111,10 +114,9 @@ def test_submit_report():
         },
         headers={"Authorization": "Bearer " + token},
     )
-    print(response.text)
+    dprint(response.text)
     assert response.status_code == 200, "Submit report failed"
-    print("Submit report successful")
-
+    dprint("Submit report successful")
 
 # Test function to get a weekly report
 def test_get_weekly_report():
@@ -124,7 +126,7 @@ def test_get_weekly_report():
         headers={"Authorization": "Bearer " + token},
         params={"username": username, "projectName": projectName, "week": 1},
     )
-    print(response.text)
+    dprint(response.text)
     assert response.status_code == 200, "Get weekly report failed"
 
 
@@ -135,7 +137,7 @@ def test_get_project():
         getProjectPath + "/1",  # Assumes that the project with id 1 exists
         headers={"Authorization": "Bearer " + token},
     )
-    print(response.text)
+    dprint(response.text)
     assert response.status_code == 200, "Get project failed"
 
 
@@ -144,13 +146,13 @@ def test_add_user_to_project():
     # Log in as a site admin
     admin_username = randomString()
     admin_password = "admin_password"
-    print(
+    dprint(
         "Registering with username: ", admin_username, " and password: ", admin_password
     )
     response = requests.post(
         registerPath, json={"username": admin_username, "password": admin_password}
     )
-    print(response.text)
+    dprint(response.text)
 
     admin_token = login(admin_username, admin_password).json()["token"]
     response = requests.post(
@@ -158,9 +160,9 @@ def test_add_user_to_project():
         json={"username": admin_username},
         headers={"Authorization": "Bearer " + admin_token},
     )
-    print(response.text)
+    dprint(response.text)
     assert response.status_code == 200, "Promote to site admin failed"
-    print("Admin promoted to site admin successfully")
+    dprint("Admin promoted to site admin successfully")
 
     # Create a new user to add to the project
     new_user = randomString()
@@ -173,10 +175,9 @@ def test_add_user_to_project():
         headers={"Authorization": "Bearer " + admin_token},
     )
 
-    print(response.text)
+    dprint(response.text)
     assert response.status_code == 200, "Add user to project failed"
-    print("Add user to project successful")
-
+    dprint("Add user to project successful")
 
 # Test function to sign a report
 def test_sign_report():
@@ -187,13 +188,13 @@ def test_sign_report():
     # Register an admin
     admin_username = randomString()
     admin_password = "admin_password2"
-    print(
+    dprint(
         "Registering with username: ", admin_username, " and password: ", admin_password
     )
     response = requests.post(
         registerPath, json={"username": admin_username, "password": admin_password}
     )
-    print(response.text)
+    dprint(response.text)
 
     # Log in as the admin
     admin_token = login(admin_username, admin_password).json()["token"]
@@ -213,7 +214,7 @@ def test_sign_report():
         headers={"Authorization": "Bearer " + admin_token},
     )
     assert response.status_code == 200, "Add project manager to project failed"
-    print("Project manager added to project successfully")
+    dprint("Project manager added to project successfully")
 
     # Log in as the project manager
     project_manager_token = login(project_manager, "project_manager_password").json()[
@@ -237,7 +238,7 @@ def test_sign_report():
         headers={"Authorization": "Bearer " + token},
     )
     assert response.status_code == 200, "Submit report failed"
-    print("Submit report successful")
+    dprint("Submit report successful")
 
     # Retrieve the report ID
     response = requests.get(
@@ -245,7 +246,7 @@ def test_sign_report():
         headers={"Authorization": "Bearer " + token},
         params={"username": username, "projectName": projectName, "week": 1},
     )
-    print(response.text)
+    dprint(response.text)
     report_id = response.json()["reportId"]
 
     # Sign the report as the project manager
@@ -255,7 +256,7 @@ def test_sign_report():
         headers={"Authorization": "Bearer " + project_manager_token},
     )
     assert response.status_code == 200, "Sign report failed"
-    print("Sign  report successful")
+    dprint("Sign  report successful")
 
     # Retrieve the report ID again for confirmation
     response = requests.get(
@@ -263,7 +264,7 @@ def test_sign_report():
         headers={"Authorization": "Bearer " + token},
         params={"username": username, "projectName": projectName, "week": 1},
     )
-    print(response.text)
+    dprint(response.text)
 
 
 if __name__ == "__main__":