diff --git a/robot-systest/lib/nsd_lib.robot b/robot-systest/lib/nsd_lib.robot
index 5687309..c7ebbe7 100644
--- a/robot-systest/lib/nsd_lib.robot
+++ b/robot-systest/lib/nsd_lib.robot
@@ -55,6 +55,7 @@
     [Arguments]   ${nsd_id}
 
     ${rc}   ${stdout}=   Run Keyword And Continue On Failure   Run and Return RC and Output   osm nsd-delete ${nsd_id}
+    Should Be Equal As Integers   ${rc}   ${success_return_code}
     log   ${stdout}
     WAIT UNTIL KEYWORD SUCCEEDS   ${delete_max_wait_time}   ${delete_pol_time}   Check For NSD   ${nsd_id}
 
diff --git a/robot-systest/resources/k8s_03-simple_k8s_data.py b/robot-systest/resources/k8s_03-simple_k8s_data.py
new file mode 100644
index 0000000..4ecfe59
--- /dev/null
+++ b/robot-systest/resources/k8s_03-simple_k8s_data.py
@@ -0,0 +1,30 @@
+#   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())
+# K8s cluster name
+k8scluster_name = 'k8s-test'
+k8scluster_version = 'v1'
+# NS and VNF descriptor package files
+vnfd_pkg = 'hackfest_simple_k8s_vnfd.tar.gz'
+nsd_pkg = 'hackfest_simple_k8s_nsd.tar.gz'
+# NS and VNF descriptor package files
+vnfd_name = 'hackfest-simple-k8s-vnfd'
+nsd_name = 'hackfest-simple-k8s-nsd'
+# NS instance name
+ns_name = 'simple-k8s'
+# SSH keys to be used
+publickey = home + '/.ssh/id_rsa.pub'
+privatekey = home + '/.ssh/id_rsa'
diff --git a/robot-systest/testsuite/k8s_03-simple_k8s.robot b/robot-systest/testsuite/k8s_03-simple_k8s.robot
new file mode 100644
index 0000000..6fd6551
--- /dev/null
+++ b/robot-systest/testsuite/k8s_03-simple_k8s.robot
@@ -0,0 +1,78 @@
+#   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 ***
+Library   OperatingSystem
+Library   String
+Library   Collections
+Library   Process
+
+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/connectivity_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
+Resource   %{ROBOT_DEVOPS_FOLDER}/lib/k8scluster_lib.robot
+
+Variables   %{ROBOT_DEVOPS_FOLDER}/resources/k8s_03-simple_k8s_data.py
+
+Suite Teardown   Run Keyword And Ignore Error   Test Cleanup
+
+
+*** Variables ***
+${ns_id}   ${EMPTY}
+${ns_config}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
+${publickey}   ${EMPTY}
+
+*** Test Cases ***
+Create Simple K8s VNF Descriptor
+    [Tags]   simple_k8s
+    Create VNFD   '%{PACKAGES_FOLDER}/${vnfd_pkg}'
+
+Create Simple K8s Descriptor
+    [Tags]   simple_k8s
+    Create NSD   '%{PACKAGES_FOLDER}/${nsd_pkg}'
+
+Add K8s Cluster To OSM
+    [Tags]   k8scluster
+    Create K8s Cluster  %{K8S_CREDENTIALS}  ${k8scluster_version}  %{VIM_TARGET}  %{VIM_MGMT_NET}  ${k8scluster_name}
+
+Network Service K8s Instance Test
+    [Tags]   simple_k8s
+    ${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   cleanup
+    Delete NS   ${ns_name}
+
+Remove K8s Cluster from OSM
+    [Tags]   k8scluster
+    Delete K8s Cluster  ${k8scluster_name}
+
+Delete NS Descriptor Test
+    [Tags]   simple_k8s   cleanup
+    Delete NSD   ${nsd_name}
+
+Delete VNF Descriptor Test
+    [Tags]   simple_k8s   cleanup
+    Delete VNFD   ${vnfd_name}
+
+
+*** Keywords ***
+Test Cleanup
+    [Documentation]  Test Suit Cleanup: Deleting Descriptor, instance and vim
+    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}
+
+
