diff --git a/tests/testthat/setup-keyring.R b/tests/testthat/setup-keyring.R
new file mode 100644
index 0000000..7e06933
--- /dev/null
+++ b/tests/testthat/setup-keyring.R
@@ -0,0 +1,13 @@
+# Setup keyring for testing
+if (requireNamespace("keyring", quietly = TRUE)) {
+  # Set environment variables to use a non-interactive keyring backend
+  # This prevents password prompts during testing
+  if (!nzchar(Sys.getenv("KEYRING_BACKEND"))) {
+    Sys.setenv("KEYRING_BACKEND" = "env")
+  }
+  
+  # Alternatively, if env backend doesn't work, try file backend with empty password
+  if (!nzchar(Sys.getenv("KEYRING_PASS"))) {
+    Sys.setenv("KEYRING_PASS" = "")
+  }
+}
diff --git a/tests/testthat/test-KorAPConnection.R b/tests/testthat/test-KorAPConnection.R
index 3ee7bb7..9a52c46 100644
--- a/tests/testthat/test-KorAPConnection.R
+++ b/tests/testthat/test-KorAPConnection.R
@@ -54,6 +54,18 @@
 
 test_that("persistAccessToken works with valid token", {
   skip_if_not_installed("keyring")
+
+  # Test keyring functionality - skip if keyring setup fails
+  keyring_available <- tryCatch({
+    # Try to access keyring backend
+    keyring::default_backend()
+    TRUE
+  }, error = function(e) {
+    FALSE
+  })
+
+  skip_if(!keyring_available, "Keyring not properly configured for testing")
+
   kco <- KorAPConnection(accessToken = NULL, timeout = 1)
   test_token <- "test_access_token_123"
 
@@ -61,7 +73,6 @@
   expect_true(is.function(persistAccessToken))
 
   # Test that we can call the function with a token
-  # This will test the function logic without relying on keyring
   expect_error(persistAccessToken(kco, accessToken = test_token), NA)
 })
 
@@ -76,6 +87,18 @@
 
 test_that("clearAccessToken removes token", {
   skip_if_not_installed("keyring")
+
+  # Test keyring functionality - skip if keyring setup fails
+  keyring_available <- tryCatch({
+    # Try to access keyring backend
+    keyring::default_backend()
+    TRUE
+  }, error = function(e) {
+    FALSE
+  })
+
+  skip_if(!keyring_available, "Keyring not properly configured for testing")
+
   kco <- KorAPConnection(accessToken = "test_token", timeout = 1)
 
   # Test that clearAccessToken function exists and is callable
