diff --git a/robot-systest/resources/basic_13-ns_relations.py b/robot-systest/resources/basic_13-ns_relations.py
new file mode 100644
index 0000000..ef77561
--- /dev/null
+++ b/robot-systest/resources/basic_13-ns_relations.py
@@ -0,0 +1,29 @@
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+
+from pathlib import Path
+
+# Get ${HOME} from local machine
+home = str(Path.home())
+# NS and VNF descriptor package folder
+vnfd_pkg1 = 'charm-packages/ns_relations_provides_vnf'
+vnfd_pkg2 = 'charm-packages/ns_relations_requires_vnf'
+nsd_pkg = 'charm-packages/ns_relations_ns'
+# NS and VNF descriptor id
+vnfd_name1 = 'ns_relations_provides-vnf'
+vnfd_name2 = 'ns_relations_requires-vnf'
+nsd_name = 'ns_relations-ns'
+# NS instance name
+ns_name = 'basic_13_ns_relations_test'
+# SSH keys to be used
+publickey = home + '/.ssh/id_rsa.pub'
+privatekey = home + '/.ssh/id_rsa'
diff --git a/robot-systest/resources/basic_14-vnf_relations.py b/robot-systest/resources/basic_14-vnf_relations.py
new file mode 100644
index 0000000..36deb48
--- /dev/null
+++ b/robot-systest/resources/basic_14-vnf_relations.py
@@ -0,0 +1,27 @@
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+
+from pathlib import Path
+
+# Get ${HOME} from local machine
+home = str(Path.home())
+# NS and VNF descriptor package folder
+vnfd_pkg = 'charm-packages/vnf_relations_vnf'
+nsd_pkg = 'charm-packages/vnf_relations_ns'
+# NS and VNF descriptor id
+vnfd_name = 'vnf_relations-vnf'
+nsd_name = 'vnf_relations-ns'
+# NS instance name
+ns_name = 'basic_14_vnf_relations_test'
+# SSH keys to be used
+publickey = home + '/.ssh/id_rsa.pub'
+privatekey = home + '/.ssh/id_rsa'
diff --git a/robot-systest/testsuite/basic_06-vnf_with_charm.robot b/robot-systest/testsuite/basic_06-vnf_with_charm.robot
index 25e32c8..b092960 100644
--- a/robot-systest/testsuite/basic_06-vnf_with_charm.robot
+++ b/robot-systest/testsuite/basic_06-vnf_with_charm.robot
@@ -41,26 +41,26 @@
 
 *** Test Cases ***
 Create Charm VNF Descriptor
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     Create VNFD  '%{PACKAGES_FOLDER}/${vnfd_pkg}'
 
 
 Create Charm NS Descriptor
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     Create NSD  '%{PACKAGES_FOLDER}/${nsd_pkg}'
 
 
 Instantiate Charm Network Service
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     ${id}=  Create Network Service  ${nsd_name}  %{VIM_TARGET}  ${ns_name}  ${ns_config}  ${publickey}  ${ns_timeout}
     Set Suite Variable  ${ns_id}  ${id}
 
 
 Get Management Ip Addresses
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     ${ip_addr_1}  Get Vnf Management Ip Address  ${ns_id}  ${vnf_member_index_1}
     log  ${ip_addr_1}
@@ -71,7 +71,7 @@
 
 
 Test SSH Access
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     Variable Should Exist  ${vnf_1_ip_addr}  msg=IP address of the management VNF '${vnf_member_index_1}' is not available
     Variable Should Exist  ${vnf_2_ip_addr}  msg=IP address of the management VNF '${vnf_member_index_2}' is not available
@@ -83,7 +83,7 @@
 Check Remote Files Created Via Day 1 Operations
     [Documentation]     The Charm VNF has a Day 1 operation that creates a file named ${day_1_file_name}.
     ...                 This test checks whether that files have been created or not.
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     Check If remote File Exists  ${vnf_1_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_1_file_name}
     Check If remote File Exists  ${vnf_2_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_1_file_name}
@@ -91,7 +91,7 @@
 
 Execute Day 2 Operations
     [Documentation]     Performs one Day 2 operation per VNF that creates a new file.
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     Variable Should Exist  ${ns_id}  msg=Network service instance is not available
     ${ns_op_id_1}=  Execute NS Action  ${ns_name}  ${action_name}  ${vnf_member_index_1}  filename=${day_2_file_name_1}
@@ -100,26 +100,26 @@
 
 Check Remote Files Created Via Day 2 Operations
     [Documentation]     Check whether the files created in the previous test via Day 2 operations exist or not.
-    [Tags]   charm   sanity   regression
+    [Tags]   proxy_charm   charm   sanity   regression
 
     Check If remote File Exists  ${vnf_1_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_2_file_name_1}
     Check If remote File Exists  ${vnf_2_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_2_file_name_2}
 
 
 Delete NS Instance
-    [Tags]   charm   sanity   regression  cleanup
+    [Tags]   proxy_charm   charm   sanity   regression  cleanup
 
     Delete NS  ${ns_name}
 
 
 Delete NS Descriptor
-    [Tags]   charm   sanity   regression  cleanup
+    [Tags]   proxy_charm   charm   sanity   regression  cleanup
 
     Delete NSD  ${nsd_name}
 
 
 Delete VNF Descriptor
-    [Tags]   charm   sanity   regression  cleanup
+    [Tags]   proxy_charm   charm   sanity   regression  cleanup
 
     Delete VNFD  ${vnfd_name}
 
diff --git a/robot-systest/testsuite/basic_13-ns_relations.robot b/robot-systest/testsuite/basic_13-ns_relations.robot
new file mode 100644
index 0000000..04c0cff
--- /dev/null
+++ b/robot-systest/testsuite/basic_13-ns_relations.robot
@@ -0,0 +1,105 @@
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+
+*** Settings ***
+Documentation     [BASIC-13] NS Relations
+
+Library   OperatingSystem
+Library   SSHLibrary
+
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/juju_lib.robot
+
+Variables   %{ROBOT_DEVOPS_FOLDER}/resources/basic_13-ns_relations.py
+
+Suite Teardown   Run Keyword And Ignore Error   Test Cleanup
+
+
+*** Variables ***
+${username}   ubuntu
+${password}   ${EMPTY}
+${ns_config}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
+${action_name}   touch
+${vnf_member_index_1}   1
+${vnf_member_index_2}   2
+${day_1_file_name}   /home/ubuntu/first-touch
+${day_2_file_name_1}   /home/ubuntu/mytouch1
+${day_2_file_name_2}   /home/ubuntu/mytouch2
+${ns_timeout}   15min
+
+
+*** Test Cases ***
+Create Charm VNF Descriptor Provides
+    [Tags]   ns_relations   charm   sanity   regression
+
+    Create VNFD  '%{PACKAGES_FOLDER}/${vnfd_pkg1}'
+
+
+Create Charm VNF Descriptor Requires
+    [Tags]   ns_relations   charm   sanity   regression
+
+    Create VNFD  '%{PACKAGES_FOLDER}/${vnfd_pkg2}'
+
+
+Create Charm NS Descriptor
+    [Tags]   ns_relations   charm   sanity   regression
+
+    Create NSD  '%{PACKAGES_FOLDER}/${nsd_pkg}'
+
+
+Instantiate Charm Network Service
+    [Tags]   ns_relations   charm   sanity   regression
+
+    ${id}=  Create Network Service  ${nsd_name}  %{VIM_TARGET}  ${ns_name}  ${ns_config}  ${publickey}  ${ns_timeout}
+    Set Suite Variable  ${ns_id}  ${id}
+
+
+# TODO Check juju status for relations
+
+
+Delete NS Instance
+    [Tags]   ns_relations   charm   sanity   regression  cleanup
+
+    Delete NS  ${ns_name}
+
+
+Delete NS Descriptor
+    [Tags]   ns_relations   charm   sanity   regression  cleanup
+
+    Delete NSD  ${nsd_name}
+
+
+Delete VNF Descriptor Provides
+    [Tags]   ns_relations   charm   sanity   regression  cleanup
+
+    Delete VNFD  ${vnfd_name1}
+
+
+Delete VNF Descriptor Requires
+    [Tags]   ns_relations   charm   sanity   regression  cleanup
+
+    Delete VNFD  ${vnfd_name2}
+
+
+*** Keywords ***
+Test Cleanup
+    [Documentation]  Test Suite Cleanup: Deleting descriptors and NS instance
+
+    Run Keyword If Test Failed  Delete NS  ${ns_name}
+
+    Run Keyword If Test Failed  Delete NSD  ${nsd_name}
+
+    Run Keyword If Test Failed  Delete VNFD  ${vnfd_name}
+
diff --git a/robot-systest/testsuite/basic_14-vnf_relations.robot b/robot-systest/testsuite/basic_14-vnf_relations.robot
new file mode 100644
index 0000000..adc308d
--- /dev/null
+++ b/robot-systest/testsuite/basic_14-vnf_relations.robot
@@ -0,0 +1,93 @@
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+
+*** Settings ***
+Documentation     [BASIC-14] VNF Relations
+
+Library   OperatingSystem
+Library   SSHLibrary
+
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/juju_lib.robot
+
+Variables   %{ROBOT_DEVOPS_FOLDER}/resources/basic_14-vnf_relations.py
+
+Suite Teardown   Run Keyword And Ignore Error   Test Cleanup
+
+
+*** Variables ***
+${username}   ubuntu
+${password}   ${EMPTY}
+${ns_config}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
+${action_name}   touch
+${vnf_member_index_1}   1
+${vnf_member_index_2}   2
+${day_1_file_name}   /home/ubuntu/first-touch
+${day_2_file_name_1}   /home/ubuntu/mytouch1
+${day_2_file_name_2}   /home/ubuntu/mytouch2
+${ns_timeout}   15min
+
+
+*** Test Cases ***
+Create Charm VNF Descriptor
+    [Tags]   vnf_relations   charm   sanity   regression
+
+    Create VNFD  '%{PACKAGES_FOLDER}/${vnfd_pkg}'
+
+
+Create Charm NS Descriptor
+    [Tags]   vnf_relations   charm   sanity   regression
+
+    Create NSD  '%{PACKAGES_FOLDER}/${nsd_pkg}'
+
+
+Instantiate Charm Network Service
+    [Tags]   vnf_relations   charm   sanity   regression
+
+    ${id}=  Create Network Service  ${nsd_name}  %{VIM_TARGET}  ${ns_name}  ${ns_config}  ${publickey}  ${ns_timeout}
+    Set Suite Variable  ${ns_id}  ${id}
+
+
+# TODO Check juju status for relations
+
+
+Delete NS Instance
+    [Tags]   vnf_relations   charm   sanity   regression  cleanup
+
+    Delete NS  ${ns_name}
+
+
+Delete NS Descriptor
+    [Tags]   vnf_relations   charm   sanity   regression  cleanup
+
+    Delete NSD  ${nsd_name}
+
+
+Delete VNF Descriptor Provides
+    [Tags]   vnf_relations   charm   sanity   regression  cleanup
+
+    Delete VNFD  ${vnfd_name}
+
+
+*** Keywords ***
+Test Cleanup
+    [Documentation]  Test Suite Cleanup: Deleting descriptors and NS instance
+
+    Run Keyword If Test Failed  Delete NS  ${ns_name}
+
+    Run Keyword If Test Failed  Delete NSD  ${nsd_name}
+
+    Run Keyword If Test Failed  Delete VNFD  ${vnfd_name}
+
diff --git a/robot-systest/testsuite/k8s_03-simple_k8s.robot b/robot-systest/testsuite/k8s_03-simple_k8s.robot
index 5b0db07..ae882b3 100644
--- a/robot-systest/testsuite/k8s_03-simple_k8s.robot
+++ b/robot-systest/testsuite/k8s_03-simple_k8s.robot
@@ -35,36 +35,36 @@
 
 *** Test Cases ***
 Create Simple K8s VNF Descriptor
-    [Tags]   simple_k8s   sanity   regression
+    [Tags]   simple_k8s   charm   sanity   regression
     Create VNFD   '%{PACKAGES_FOLDER}/${vnfd_pkg}'
 
 Create Simple K8s Descriptor
-    [Tags]   simple_k8s   sanity   regression
+    [Tags]   simple_k8s   charm   sanity   regression
     Create NSD   '%{PACKAGES_FOLDER}/${nsd_pkg}'
 
 Add K8s Cluster To OSM
-    [Tags]   k8scluster   sanity   regression
+    [Tags]   k8scluster   charm   sanity   regression
     Create K8s Cluster  %{K8S_CREDENTIALS}  ${k8scluster_version}  %{VIM_TARGET}  %{VIM_MGMT_NET}  ${k8scluster_name}
 
 Network Service K8s Instance Test
-    [Tags]   simple_k8s   sanity   regression
+    [Tags]   simple_k8s   charm   sanity   regression
     ${id}=   Create Network Service   ${nsd_name}   %{VIM_TARGET}   ${ns_name}   ${ns_config}  ${publickey}
     Set Suite Variable   ${ns_id}   ${id}
 
 Delete NS K8s Instance Test
-    [Tags]   simple_k8s   sanity   regression   cleanup
+    [Tags]   simple_k8s   charm   sanity   regression   cleanup
     Delete NS   ${ns_name}
 
 Remove K8s Cluster from OSM
-    [Tags]   k8scluster   sanity   regression
+    [Tags]   k8scluster   charm   sanity   regression
     Delete K8s Cluster  ${k8scluster_name}
 
 Delete NS Descriptor Test
-    [Tags]   simple_k8s   sanity   regression   cleanup
+    [Tags]   simple_k8s   charm   sanity   regression   cleanup
     Delete NSD   ${nsd_name}
 
 Delete VNF Descriptor Test
-    [Tags]   simple_k8s   sanity   regression   cleanup
+    [Tags]   simple_k8s   charm   sanity   regression   cleanup
     Delete VNFD   ${vnfd_name}
 
 
diff --git a/robot-systest/testsuite/k8s_05-k8s_proxy_charms.robot b/robot-systest/testsuite/k8s_05-k8s_proxy_charms.robot
index 07e5141..0dccea6 100644
--- a/robot-systest/testsuite/k8s_05-k8s_proxy_charms.robot
+++ b/robot-systest/testsuite/k8s_05-k8s_proxy_charms.robot
@@ -41,26 +41,26 @@
 
 *** Test Cases ***
 Create Charm VNF Descriptor
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     Create VNFD  '%{PACKAGES_FOLDER}/${vnfd_pkg}'
 
 
 Create Charm NS Descriptor
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     Create NSD  '%{PACKAGES_FOLDER}/${nsd_pkg}'
 
 
 Instantiate Charm Network Service
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     ${id}=  Create Network Service  ${nsd_name}  %{VIM_TARGET}  ${ns_name}  ${ns_config}  ${publickey}  ${ns_timeout}
     Set Suite Variable  ${ns_id}  ${id}
 
 
 Get Management Ip Addresses
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     ${ip_addr_1}  Get Vnf Management Ip Address  ${ns_id}  ${vnf_member_index_1}
     log  ${ip_addr_1}
@@ -71,7 +71,7 @@
 
 
 Test SSH Access
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     Variable Should Exist  ${vnf_1_ip_addr}  msg=IP address of the management VNF '${vnf_member_index_1}' is not available
     Variable Should Exist  ${vnf_2_ip_addr}  msg=IP address of the management VNF '${vnf_member_index_2}' is not available
@@ -83,7 +83,7 @@
 Check Remote Files Created Via Day 1 Operations
     [Documentation]     The Charm VNF has a Day 1 operation that creates a file named ${day_1_file_name}.
     ...                 This test checks whether that files have been created or not.
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     Check If remote File Exists  ${vnf_1_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_1_file_name}
     Check If remote File Exists  ${vnf_2_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_1_file_name}
@@ -91,7 +91,7 @@
 
 Execute Day 2 Operations
     [Documentation]     Performs one Day 2 operation per VNF that creates a new file.
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     Variable Should Exist  ${ns_id}  msg=Network service instance is not available
     ${ns_op_id_1}=  Execute NS Action  ${ns_name}  ${action_name}  ${vnf_member_index_1}  filename=${day_2_file_name_1}
@@ -100,26 +100,26 @@
 
 Check Remote Files Created Via Day 2 Operations
     [Documentation]     Check whether the files created in the previous test via Day 2 operations exist or not.
-    [Tags]   charm   sanity   regression
+    [Tags]   k8s_proxy_charm   charm   sanity   regression
 
     Check If remote File Exists  ${vnf_1_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_2_file_name_1}
     Check If remote File Exists  ${vnf_2_ip_addr}  ${username}  ${password}  ${privatekey}  ${day_2_file_name_2}
 
 
 Delete NS Instance
-    [Tags]   charm   sanity   regression  cleanup
+    [Tags]   k8s_proxy_charm   charm   sanity   regression  cleanup
 
     Delete NS  ${ns_name}
 
 
 Delete NS Descriptor
-    [Tags]   charm   sanity   regression  cleanup
+    [Tags]   k8s_proxy_charm   charm   sanity   regression  cleanup
 
     Delete NSD  ${nsd_name}
 
 
 Delete VNF Descriptor
-    [Tags]   charm   sanity   regression  cleanup
+    [Tags]   k8s_proxy_charm   charm   sanity   regression  cleanup
 
     Delete VNFD  ${vnfd_name}
 
