diff --git a/README.md b/README.md
index d3b4df5..4e6db1a 100755
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@
 ## Installation Setup Guide ##
 * [Robot Framework Install Instruction](https://github.com/robotframework/robotframework/blob/master/INSTALL.rst)
 
-* Miscelleneous
+* Miscellaneous
 Packages required to be installed for OpenBmc Automation.
 Install the packages and it's dependencies via `pip`
 
diff --git a/bin/process_plug_in_packages.py b/bin/process_plug_in_packages.py
index c2e1c77..75881fe 100755
--- a/bin/process_plug_in_packages.py
+++ b/bin/process_plug_in_packages.py
@@ -52,7 +52,7 @@
                 " that if a call point program returns a value it will be" +
                 " shifted left 2 bytes (e.g. rc of 2 will be printed as" +
                 " 0x00000200).  That is because the rightmost byte is" +
-                " reserverd for errors in calling the call point program" +
+                " reserved for errors in calling the call point program" +
                 " rather than errors generated by the call point program.>",
     formatter_class=argparse.ArgumentDefaultsHelpFormatter,
     prefix_chars='-+')
diff --git a/extended/test_error_log.robot b/extended/test_error_log.robot
index 6b8d37d..1ae7808 100644
--- a/extended/test_error_log.robot
+++ b/extended/test_error_log.robot
@@ -25,7 +25,7 @@
     # 1. Power off.
     # 2. Delete error logs.
     # 3. Reboot BMC.
-    # 4. Check if eror log exists.
+    # 4. Check if error log exists.
 
     Smart Power Off
     Delete Error Logs And Verify
@@ -38,7 +38,7 @@
     [Tags]  Error_Log_Check_At_Host_Booted
     # 1. Delete error logs
     # 1. Power on.
-    # 3. Check if eror log exists.
+    # 3. Check if error log exists.
 
     Delete Error Logs And Verify
     REST Power On
diff --git a/extended/test_network.robot b/extended/test_network.robot
index cfa25ef..8f672a6 100644
--- a/extended/test_network.robot
+++ b/extended/test_network.robot
@@ -162,7 +162,7 @@
     # IP Address     Prefix_length         Gateway_IP        Expected_Result
     @@@.%%.44.11     ${valid_prefix_len}   ${valid_gateway}  error
 
-    [Documentation]  Configure invalid IP address contaning special chars.
+    [Documentation]  Configure invalid IP address containing special chars.
     [Tags]  Configure_Special_Char_IP
 
     [Template]  Configure Network Settings
@@ -171,7 +171,7 @@
     # IP Address  Prefix_length        Gateway_IP        Expected_Result
     ${hex_ip}     ${valid_prefix_len}  ${valid_gateway}  error
 
-    [Documentation]  Configure invalid IP address contaning hex value.
+    [Documentation]  Configure invalid IP address containing hex value.
     [Tags]  Configure_Hexadecimal_IP
 
     [Template]  Configure Network Settings
diff --git a/extended/test_network_nping.robot b/extended/test_network_nping.robot
index de0a92e..9e067ac 100644
--- a/extended/test_network_nping.robot
+++ b/extended/test_network_nping.robot
@@ -47,7 +47,7 @@
     # ${port}- Network port.
 
     # This program expects host, port, type and number of packets to be sent
-    # and rate at which packets to be sent, should be given in commad line
+    # and rate at which packets to be sent, should be given in command line
     # by default it sends 100 TCP packets at 5 packets/second.
 
     ${cmd_buff}=  Run Keyword If  '${packet_type}' == 'icmp'
diff --git a/lib/code_update_utils.robot b/lib/code_update_utils.robot
index 8b52188..dba32c1 100644
--- a/lib/code_update_utils.robot
+++ b/lib/code_update_utils.robot
@@ -304,7 +304,7 @@
     #               xyz.openbmc_project.Software.Version.VersionPurpose.Host
     #               or xyz.openbmc_project.Software.Version.VersionPurpose.BMC.
 
-    Log To Console  Deleteing ${software_object}
+    Log To Console  Deleting ${software_object}
 
     # Delete the image.
     Delete Software Object  ${software_object}
diff --git a/lib/dvt/obmc_driver_vars.txt b/lib/dvt/obmc_driver_vars.txt
index 0ce4bee..690bf9d 100644
--- a/lib/dvt/obmc_driver_vars.txt
+++ b/lib/dvt/obmc_driver_vars.txt
@@ -1,5 +1,5 @@
 *** Settings ***
-Documentation  This file includes all the varaibles used by obmc_boot_test.robot
+Documentation  This file includes all the variables used by obmc_boot_test.robot
 
 *** Variables ***
 # Alias of the master connection to the BMC
diff --git a/syslib/utils_keywords.py b/syslib/utils_keywords.py
index 1dcbe70..40437e6 100644
--- a/syslib/utils_keywords.py
+++ b/syslib/utils_keywords.py
@@ -139,7 +139,7 @@
             error_list.append(temp_error_list)
             parse_walk = False
             temp_error_list = []
-        # Add entry to list if line is not emtpy
+        # Add entry to list if line is not empty
         elif parse_walk:
             temp_error_list.append(str(line))
 
diff --git a/tests/ipmi/test_general_ipmi.robot b/tests/ipmi/test_general_ipmi.robot
index d16a018..1b38fce 100644
--- a/tests/ipmi/test_general_ipmi.robot
+++ b/tests/ipmi/test_general_ipmi.robot
@@ -464,7 +464,7 @@
 
     Should Be Equal  ${mc_info['ipmi_version']}  2.0
 
-    # TODO: Verify Manufacturer and Product IDs directy from json file.
+    # TODO: Verify Manufacturer and Product IDs directly from json file.
     # Reference : openbmc/openbmc-test-automation#1244
     Should Be Equal  ${mc_info['manufacturer_id']}  42817
     Should Be Equal  ${mc_info['product_id']}  16975 (0x424f)
diff --git a/tests/test_hardware_sensors.robot b/tests/test_hardware_sensors.robot
index ccd1d82..237bcb8 100644
--- a/tests/test_hardware_sensors.robot
+++ b/tests/test_hardware_sensors.robot
@@ -1,5 +1,5 @@
 *** Settings ***
-Documentation   Suite to test harware sensors.
+Documentation   Suite to test hardware sensors.
 
 Resource        ../lib/utils.robot
 Resource        ../lib/boot_utils.robot
diff --git a/tests/test_service_restart_policy.robot b/tests/test_service_restart_policy.robot
index 8b7b3c5..764a7cf 100644
--- a/tests/test_service_restart_policy.robot
+++ b/tests/test_service_restart_policy.robot
@@ -19,7 +19,7 @@
 Verify OpenBMC Services Auto Restart Policy
     [Documentation]  Kill active services and expect auto restart.
     [Tags]  Verify_OpenBMC_Services_Auto_Restart_Policy
-    # The services listed bellow restart policy should be "always"
+    # The services listed below restart policy should be "always"
     # Command output:
     # systemctl -p Restart show xyz.openbmc_project.Logging.service | cat
     # Restart=always
diff --git a/tools/generate_test_document b/tools/generate_test_document
index ef510c7..452208e 100755
--- a/tools/generate_test_document
+++ b/tools/generate_test_document
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-# This program will generate test documenation from the robot test cases.
+# This program will generate test documentation from the robot test cases.
 
 # Description of argument(s):
 # test_dir_path            Test directory where robot test cases are available.
