diff --git a/mirai-core-api/src/commonMain/kotlin/internal/message/MessageSerializersImpl.kt b/mirai-core-api/src/commonMain/kotlin/internal/message/MessageSerializersImpl.kt
index 7421aa668..3627e2203 100644
--- a/mirai-core-api/src/commonMain/kotlin/internal/message/MessageSerializersImpl.kt
+++ b/mirai-core-api/src/commonMain/kotlin/internal/message/MessageSerializersImpl.kt
@@ -192,7 +192,11 @@ private val builtInSerializersModule by lazy {
 internal object MessageSerializersImpl : MessageSerializers {
     @Volatile
     private var serializersModuleField: SerializersModule? = null
-    override val serializersModule: SerializersModule get() = serializersModuleField ?: builtInSerializersModule
+    override val serializersModule: SerializersModule
+        get() {
+            Mirai // ensure registered, for tests
+            return serializersModuleField ?: builtInSerializersModule
+        }
 
     @Synchronized
     override fun <M : SingleMessage> registerSerializer(type: KClass<M>, serializer: KSerializer<M>) {