#robotframework
Вопрос:
У меня есть файл excel, как показано на рисунке
Я выбираю номер заказа для флага = Да, используя код python
def getorderNum(file, sheet):
orderNum = []
wb = load_workbook(file)
sh = wb[sheet]
row_count = sh.max_row
column_count = sh.max_column
for i in range(1, row_count 1):
flagValue = sh.cell(row=i, column=1).value
if flagValue == "Yes":
ordNum_value = sh.cell(row=i,column=column_count).value
print(ordNum_value)
orderNum.append(ordNum_value)
return orderNum
и я использую код python в ключевом слове robot framework
*** Keywords ***
GetOrderNo
[Arguments] ${resultFile} ${SheetName}
@{orderNumber}= ExcelReadWrite.getorderNum ${resultFile} ${SheetName}
FOR ${orderNo} IN @{orderNumber}
log to console ${orderNo}
SearchOrder ${orderNo}
END
и, в свою очередь, используя это ключевое слово в моем тестовом наборе, как показано ниже
*** Settings***
Test Template Approval
*** Test Cases ***
ApprovalUsecase
*** Keywords ***
Approval
set selenium implicit wait 20s
[Arguments] ${url} ${userName} ${password} ${flag}
Startbrowswe ${url} ${browser} ${flag} ${userName} ${password}
GetOrderNo ${resultFile} ${SheetName}
Но когда я выполняю код, он запускает тестовый случай дважды. это 2 раунда для одного и того же тестового набора, принимающего порядок, для которого флаг «ДА», если я сделаю » Да » для всех записей, он выполняется столько раз, сколько записей в excel.
Мои тестовые примеры повторяются с сообщением о нескольких тестовых примерах с именем «ApprovalUsecase», выполняемым в наборе тестов «Утвердить». Я просто хочу, чтобы мой тестовый случай был запущен один раз для всех записей с флагом = да.