Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Проблемы с извлечением подстроки, в Robot Framework

robot-framework
python
Теги: #<Tag:0x00007f7b62be3c98> #<Tag:0x00007f7b62be3978>

(Алексей Смиян) #1

Добрый день.
Есть необходимость извлечь подстроку, в автотестах на Robot Framework.
саму строку получаю с помощью кейворда Get Element Attribute.
Проблема в том, что в результате получается строка:

PrimeFaces.ab({s:"mForm:j_idt242",e:"click",p:"mForm:j_idt242"});;;window.open('https://auction-sandbox.openprocurement.org/tenders/fb5bc41429774f178605639783e62027','_blank')

И когда я пытаюсь извлечь подстроку кейвордом Get Substring, выдает ошибку что не верный синтаксис строки. Я так понимаю, что это в результате того, что в строке есть как одинарные, так и двойные кавычки. В интерпретаторе, когда попытался присвоить эту строку переменной, тоже ругается.
Пробовал поиграться с тройными кавычками, тоже не вышло. Robot Framework не понимает переменную вида ‘’’${url}’’’.


(Lev Yarushin) #2

Хм… странно попробовал вашу строку, вроде всё ок.

*** Variables ***
${string}              PrimeFaces.ab({s:"mForm:j_idt242",e:"click",p:"mForm:j_idt242"});;;window.open('https://auction-sandbox.openprocurement.org/tenders/fb5bc41429774f178605639783e62027','_blank')

*** Test Cases ***
Test
    ${temp}=           Get Substring       ${string}       10      20
    Log To Console     ${temp}

Вот такой вывод:

==============================================================================
Test                                                                  ...ab({s:"mF
Test                                                                  | PASS |
------------------------------------------------------------------------------


(Алексей Смиян) #3

Странно. Но после присвоения этой строки, глобальной переменной, действительно заработало. До этого, присваивал локальной.