diff --git a/test/py/tests/test_suite.py b/test/py/tests/test_suite.py
index 20cdf02..a4d7391 100644
--- a/test/py/tests/test_suite.py
+++ b/test/py/tests/test_suite.py
@@ -128,7 +128,7 @@
 @pytest.mark.buildconfigspec('sandbox')
 @pytest.mark.notbuildconfigspec('sandbox_spl')
 @pytest.mark.notbuildconfigspec('sandbox64')
-def test_suite(u_boot_console):
+def test_suite(u_boot_console, u_boot_config):
     """Perform various checks on the unit tests, including:
 
        - The number of suites matches that reported by the 'ut info'
@@ -141,6 +141,7 @@
 
     """
     cons = u_boot_console
+    buildconfig = u_boot_config.buildconfig
     with cons.log.section('Run all unit tests'):
         # ut hush hush_test_simple_dollar prints "Unknown command" on purpose.
         with u_boot_console.disable_check('unknown_command'):
@@ -154,7 +155,13 @@
     cons.log.info(f'extra {extra}')
 
     # Make sure we got a test count for each suite
-    assert suites - exp_test_count.keys() == set()
+    assert not (suites - exp_test_count.keys())
+
+    # Deal with missing suites
+    with cons.log.section('Check missing suites'):
+        if 'config_cmd_seama' not in buildconfig:
+            cons.log.info("CMD_SEAMA not enabled: Ignoring suite 'seama'")
+            missing.discard('seama')
 
     # Run 'ut info' and compare with the log results
     with cons.log.section('Check suite test-counts'):
