def test_helm_commands(host):
     fc = host.file('/tmp/helm_simu_output').content_string
-    expected_content = """home
+    helm_release = host.ansible.get_variables()['helm_version']
+    if helm_release == 'v2':
+        content_str1 = 'home'
+    elif helm_release == 'v3':
+        content_str1 = 'env'
+    expected_content = content_str1 + """
 init --upgrade --skip-refresh
 version --tiller-connection-timeout 10
 repo list
 
--- /dev/null
+../default/Dockerfile.j2
\ No newline at end of file
 
--- /dev/null
+---
+dependency:
+  name: galaxy
+driver:
+  name: docker
+lint:
+  name: yamllint
+platforms:
+  - name: instance-helm3
+    image: centos:7
+provisioner:
+  name: ansible
+  env:
+    ANSIBLE_ROLES_PATH: ../../../../test/roles
+  inventory:
+    group_vars:
+      all:
+        app_name: moleculetestapp
+        app_data_path: "/opt/{{ app_name }}"
+        app_helm_release_name: "{{ app_name }}"
+        app_kubernetes_namespace: "{{ app_name }}"
+        app_helm_charts_install_directory: application/helm_charts
+        app_helm_plugins_directory: "{{ app_helm_charts_install_directory}}/helm/plugins/"
+        app_helm_charts_infra_directory: "{{ app_data_path }}/helm_charts"
+        helm_bin_dir: /usr/local/bin
+        app_helm_build_targets:
+          - all
+          - onap
+        app_helm_chart_name: "{{ app_name }}"
+        helm_version: v3
+  lint:
+    name: ansible-lint
+  playbooks:
+    prepare: ../default/prepare.yml
+    converge: ../default/playbook.yml
+    cleanup: ../default/cleanup.yml
+scenario:
+  name: helm3
+  test_sequence:
+    - lint
+    - cleanup
+    - destroy
+    - dependency
+    - syntax
+    - create
+    - prepare
+    - converge
+    - verify
+    - cleanup
+    - destroy
+verifier:
+  name: testinfra
+  lint:
+    name: flake8
 
--- /dev/null
+../default/tests/
\ No newline at end of file
 
--- /dev/null
+---
+- name: Install helm plugins if needed
+  block:
+    - name: Get helm environment information
+      command: "{{ helm_bin_dir }}/helm env"
+      register: helm_env
+    - name: Set helm data dir
+      set_fact:
+        helm_data_dir: |
+          "{% if 'HELM_DATA_HOME' in helm_env.stdout %}
+           {{ (helm_env.stdout | replace('\"', '') | regex_search('HELM_DATA_HOME.*')).split('=')[1] }}
+           {% else %}
+           {{ '~/.local/share/helm' }}
+           {% endif %}"
+    - name: Ensure that dir for helm plugins exists
+      file:
+        path: "{{ helm_data_dir }}/plugins"
+        state: directory
+        mode: 0755
+    - name: Register all plugins to be inserted by dir names
+      find:
+        paths: "{{ app_helm_plugins_directory }}"
+        file_type: "directory"
+      register: list_of_plugins
+      delegate_to: localhost
+    - name: Install all helm plugins from {{ app_helm_plugins_directory }} dir
+      copy:
+        src: "{{ item.path }}"
+        dest: "{{ helm_data_dir }}/plugins"
+        directory_mode: true
+        mode: 0755
+      loop: "{{ list_of_plugins.files }}"
+  when: app_helm_plugins_directory is defined and app_helm_plugins_directory is not none
 
   debug:
     var: helm_override_files
 
-- name: Check for deploy plugin presence
-  stat:
-    path: '{{ helm_home_dir.stdout }}/plugins/deploy/deploy.sh'
-  register: deploy_plugin_presence
+- include_tasks: setup-helm2.yml
+  when: helm_version | regex_search("^v2" )
+- include_tasks: setup-helm3.yml
+  when: helm_version | regex_search("^v3" )
 
 - name: "Helm Install application {{ app_name }}"
   command: >
 
--- /dev/null
+---
+- name: Check for deploy plugin presence
+  stat:
+    path: '{{ helm_home_dir.stdout }}/plugins/deploy/deploy.sh'
+  register: deploy_plugin_presence
 
--- /dev/null
+---
+- name: Check for deploy plugin presence
+  stat:
+    path: '{{ helm_data_dir }}/plugins/deploy/deploy.sh'
+  register: deploy_plugin_presence
 
 
 - include_tasks: install-helm2-plugins.yml
   when: helm_version | regex_search("^v2" )
+- include_tasks: install-helm3-plugins.yml
+  when: helm_version | regex_search("^v3" )