diff --git a/tests/suites/test_suite_pkcs5.function b/tests/suites/test_suite_pkcs5.function
index d00d94f..e2347cc 100644
--- a/tests/suites/test_suite_pkcs5.function
+++ b/tests/suites/test_suite_pkcs5.function
@@ -14,12 +14,14 @@
 {
     unsigned char key[100];
 
+    PSA_INIT();
     TEST_ASSERT( mbedtls_pkcs5_pbkdf2_hmac_ext( hash, pw_str->x, pw_str->len,
                                                 salt_str->x, salt_str->len,
                                                 it_cnt, key_len, key ) == 0 );
 
     TEST_ASSERT( mbedtls_test_hexcmp( key, result_key_string->x,
                                       key_len, result_key_string->len ) == 0 );
+    PSA_DONE();
 }
 /* END_CASE */
 
@@ -31,6 +33,8 @@
     mbedtls_asn1_buf params;
     unsigned char *my_out = NULL;
 
+    PSA_INIT();
+
     params.tag = params_tag;
     params.p = params_hex->x;
     params.len = params_hex->len;
@@ -46,6 +50,7 @@
 
 exit:
     mbedtls_free( my_out );
+    PSA_DONE();
 }
 /* END_CASE */
 
diff --git a/tests/suites/test_suite_pkparse.function b/tests/suites/test_suite_pkparse.function
index 0a77988..1e003b9 100644
--- a/tests/suites/test_suite_pkparse.function
+++ b/tests/suites/test_suite_pkparse.function
@@ -17,6 +17,7 @@
     int res;
     char *pwd = password;
 
+    PSA_INIT();
     mbedtls_pk_init( &ctx );
 
     if( strcmp( pwd, "NULL" ) == 0 )
@@ -37,6 +38,7 @@
 
 exit:
     mbedtls_pk_free( &ctx );
+    PSA_DONE();
 }
 /* END_CASE */
 
@@ -46,6 +48,7 @@
     mbedtls_pk_context ctx;
     int res;
 
+    PSA_INIT();
     mbedtls_pk_init( &ctx );
 
     res = mbedtls_pk_parse_public_keyfile( &ctx, key_file );
@@ -62,6 +65,7 @@
 
 exit:
     mbedtls_pk_free( &ctx );
+    PSA_DONE();
 }
 /* END_CASE */
 
