diff --git a/pcu/PCU_Tests_RAW_SNS.ttcn b/pcu/PCU_Tests_RAW_SNS.ttcn
index 2369b04..5a370d9 100644
--- a/pcu/PCU_Tests_RAW_SNS.ttcn
+++ b/pcu/PCU_Tests_RAW_SNS.ttcn
@@ -105,7 +105,7 @@
 
 
 /* PCU-originated SNS-SIZE: successful case */
-testcase TC_sns_po_size_success() runs on RAW_NS_CT {
+testcase TC_sns_po_size_success() runs on RAW_Test_CT {
 	f_init_ns_codec();
 	f_init_pcuif();
 	f_incoming_sns_size();
@@ -114,7 +114,7 @@
 }
 
 /* PCU-originated SNS-SIZE: NACK from our side */
-testcase TC_sns_po_size_nack() runs on RAW_NS_CT {
+testcase TC_sns_po_size_nack() runs on RAW_Test_CT {
 	f_init_ns_codec();
 	f_init_pcuif();
 	f_incoming_sns_size(NS_CAUSE_PROTOCOL_ERROR_UNSPEIFIED);
@@ -125,7 +125,7 @@
 }
 
 /* PCU-originated SNS-CONFIG: successful case */
-testcase TC_sns_po_config_success() runs on RAW_NS_CT {
+testcase TC_sns_po_config_success() runs on RAW_Test_CT {
 	f_init_ns_codec();
 	f_init_pcuif();
 	f_incoming_sns_size();
@@ -135,7 +135,7 @@
 }
 
 /* PCU-originated SNS-CONFIG: successful case */
-testcase TC_sns_po_config_nack() runs on RAW_NS_CT {
+testcase TC_sns_po_config_nack() runs on RAW_Test_CT {
 	f_init_ns_codec();
 	f_init_pcuif();
 	f_incoming_sns_size();
@@ -147,7 +147,7 @@
 
 
 /* SGSN-originated SNS-SIZE: successful case */
-testcase TC_sns_so_config_success() runs on RAW_NS_CT {
+testcase TC_sns_so_config_success() runs on RAW_Test_CT {
 	f_init_ns_codec();
 	f_init_pcuif();
 	f_incoming_sns_size();
@@ -171,7 +171,7 @@
 	setverdict(pass);
 }
 
-private function f_sns_bringup_1c1u() runs on RAW_NS_CT {
+private function f_sns_bringup_1c1u() runs on RAW_Test_CT {
 	/* Activate two NS codec ports */
 	f_init_ns_codec();
 	f_init_ns_codec(1);
@@ -206,13 +206,13 @@
 }
 
 /* Test full IP-SNS bring-up with two NS-VCs, one sig-only and one user-only */
-testcase TC_sns_1c1u() runs on RAW_NS_CT {
+testcase TC_sns_1c1u() runs on RAW_Test_CT {
 	f_sns_bringup_1c1u();
 	setverdict(pass);
 }
 
 /* Test adding new IP endpoints at runtime */
-testcase TC_sns_add() runs on RAW_NS_CT {
+testcase TC_sns_add() runs on RAW_Test_CT {
 	f_sns_bringup_1c1u();
 
 	/* crate another NS codec port on the tester side */
@@ -230,7 +230,7 @@
 }
 
 /* Test deleting IP endpoints at runtime */
-testcase TC_sns_del() runs on RAW_NS_CT {
+testcase TC_sns_del() runs on RAW_Test_CT {
 	f_sns_bringup_1c1u();
 
 	f_outgoing_sns_del(idx_del := 1, w_sig := 0, w_user := 1, idx := 0);
@@ -239,7 +239,7 @@
 }
 
 /* Test changing weights at runtime */
-testcase TC_sns_chg_weight() runs on RAW_NS_CT {
+testcase TC_sns_chg_weight() runs on RAW_Test_CT {
 	f_sns_bringup_1c1u();
 
 	/* change w_user from 1 to 200 */
