diff --git a/redfish/update_service/test_redfish_signed_image_update.robot b/redfish/update_service/test_redfish_signed_image_update.robot
new file mode 100644
index 0000000..3e7b5e6
--- /dev/null
+++ b/redfish/update_service/test_redfish_signed_image_update.robot
@@ -0,0 +1,98 @@
+*** Settings ***
+Documentation            Redfish BMC/Host signed and unsigned code update
+...  over BMC functional signed image.
+
+# Test Parameters:
+# IMAGE_FILE_PATH        The path to the BMC/Host image file.
+#
+# Firmware update states:
+#     Enabled            Image is installed and either functional or active.
+#     Disabled           Image installation failed or ready for activation.
+#     Updating           Image installation currently in progress.
+
+Resource                 ../../lib/resource.robot
+Resource                 ../../lib/bmc_redfish_resource.robot
+Resource                 ../../lib/openbmc_ffdc.robot
+Resource                 ../../lib/common_utils.robot
+Resource                 ../../lib/code_update_utils.robot
+Resource                 ../../lib/redfish_code_update_utils.robot
+Resource                 ../../extended/code_update/update_bmc.robot
+Library                  ../../lib/gen_robot_valid.py
+Library                  ../../lib/var_funcs.py
+
+Suite Setup              Suite Setup Execution
+Suite Teardown           Redfish.Logout
+Test Setup               Printn
+Test Teardown            FFDC On Test Case Fail
+
+*** Test Cases ***
+
+Redfish Signed Code Update
+    [Documentation]  BMC/Host signed code update over functional signed
+    ...  image, when FieldMode is set to true value.
+    [Tags]  Redfish_Signed_Code_Update
+    [Template]  Redfish Signed Firmware Update
+
+    # image_file_path
+    ${IMAGE_FILE_PATH}
+
+
+Redfish Fail Unsigned Code Update
+    [Documentation]  BMC/Host unsigned code update over functional signed
+    ...  image, when Field Mode is set to true to value.
+    [Tags]  Redfish_Fail_Unsigned_Code_Update
+    [Template]  Redfish Unsigned Firmware Update
+
+    # image_file_path
+    ${IMAGE_FILE_PATH}
+
+
+*** Keywords ***
+
+Suite Setup Execution
+    [Documentation]  Do the suite setup.
+
+    Valid File Path  IMAGE_FILE_PATH
+    Redfish.Login
+    Delete All BMC Dump
+    Redfish Purge Event Log
+
+
+Redfish Signed Firmware Update
+    [Documentation]  Update the BMC/Host firmware via redfish interface.
+    [Arguments]  ${image_file_path}
+
+    # Description of argument(s):
+    # IMAGE_FILE_PATH  The path to the image file.
+
+    Field Mode Should Be Enabled
+    ${image_version}=  Get Version Tar  ${image_file_path}
+    ${state}=  Get Pre Reboot State
+    Rprint Vars  state
+    Redfish Upload Image And Check Progress State  Immediate
+    ${image_info}=  Get Software Inventory State By Version  ${image_version}
+    Run Keyword If  'BMC update' == '${image_info["image_type"]}'
+    ...    Reboot BMC And Verify BMC Image  Immediate  start_boot_seconds=${state['epoch_seconds']}
+    ...  ELSE
+    ...    Poweron Host And Verify Host Image
+
+
+Redfish Unsigned Firmware Update
+    [Documentation]  Update the BMC/Host firmware via redfish interface.
+    [Arguments]  ${image_file_path}
+
+    # Description of argument(s):
+    # IMAGE_FILE_PATH  The path to the image file.
+
+    Field Mode Should Be Enabled
+    Set ApplyTime  policy=Immediate
+    Redfish Upload Image  ${REDFISH_BASE_URI}UpdateService  ${image_file_path}
+    ${image_id}=  Get Latest Image ID
+    Rprint Vars  image_id
+    Sleep  5s
+    Wait Until Keyword Succeeds  8 min  20 sec
+    ...  Check Image Update Progress State
+    ...    match_state='Disabled', 'Updating', 'Disabled'  image_id=${image_id}
+    Delete Software Object
+    ...  /xyz/openbmc_project/software/${image_id}
+
