I am new to robot framework and python, I am facing problem with the keywords, which shows me the error No keyword with name xyz. For an example in file csv_handler.py
import all library and key words
class csv_handler:
@keyword("Extract text from CSV file")
def extract_text_from_CSV_file(self, file_name):
execution_mode = BuiltIn().get_variable_value("${EXECUTION_MODE}")
download_folder = config_file[execution_mode]["download_folder"]
userName = getpass.getuser()
localUserName = userName.strip("adm-")
download_folder = download_folder.replace("<local_user>", localUserName)
data = []
with open(download_folder.strip() + file_name, 'r') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
data.append(row)
return data
I need a new keyword in the file csv_handler.py so I just copy the old keyword and did some modification to it made the new keyword. Now the new file looks like
import all library and key words
class csv_handler:
@keyword("Extract text from CSV file")
def extract_text_from_CSV_file(self, file_name):
execution_mode = BuiltIn().get_variable_value("${EXECUTION_MODE}")
download_folder = config_file[execution_mode]["download_folder"]
userName = getpass.getuser()
localUserName = userName.strip("adm-")
download_folder = download_folder.replace("<local_user>", localUserName)
data = []
with open(download_folder.strip() + file_name, 'r') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
data.append(row)
return data
@keyword("Extract text from created CSV file")
def extract_text_from_CSV_file(self, file_name):
execution_mode = BuiltIn().get_variable_value("${EXECUTION_MODE}")
cwd = os.getcwd()
upload_folder = cwd + config_file[execution_mode]["upload_folder"]
userName = getpass.getuser()
localUserName = userName.strip("adm-")
upload_folder = upload_folder.replace("<local_user>", localUserName)
data = []
with open(upload_folder.strip() + file_name, 'r') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
data.append(row)
return data
After making my new keyword in the file csv_handler.py , if I go to the .robot file and try to run the test script the test script where I used the old key word, that throws me error "No keyword with name old keyword" and for the result script fails.
I tried to restart my vscode, laptop but not got chance to fix it. Your help will be appriciated. Thank you.