#python #string #cookies #robotframework
#python #строка #файлы cookie #robotframework
Вопрос:
Есть код, который будет сравнивать шаблон cookie, созданный при нажатии на URL-адрес с использованием robot framework, со строковой переменной .
REGMATCH
${string}= set variable hgf
${matches}= get regexp matches ${string} asdfhgfpoyrjgrrhkjhoolk
should be equal as strings ${matches} hgf
но это возвращает False ,
и я попробовал это ниже ,
Get Lines Matching Pattern Matching Some Lines
Test Get Lines Matching Pattern asdfhgfpoyrjgrrhkjhoolk ?????? hgf
***KEYWORD***
Test Get Lines Matching Pattern
[Arguments] ${input} ${pattern} ${expected} ${case-insensitive}=no
${actual} = Get Lines Matching Pattern ${input} ${pattern} ${case-insensitive}
Should Be Equal ${actual} ${expected}
Кто-нибудь может мне помочь в этом, пожалуйста.
Ответ №1:
${actual} = Get Lines Matching Pattern ${input} ${pattern} ${case-insensitive}
ваш шаблон ?????
, который означает ровно 5 символов, содержит более 5 символов
asdfhgfpoyrjgrrhkjhoolk можно получить, используя столько ‘?’ как ? воспроизводит один символ в формате globb, вы можете использовать
${actual} = Get Lines Matching Pattern ${input} * ${case-insensitive}
что означает всю строку целиком
Для вашего варианта использования y = вы можете использовать
Should Match Regexp hithsihdisdh hsdaasidh 123 dfsdfdsf 123
это позволит проверить, содержит ли строка «123». Это ключевое слово взято из встроенной библиотеки
Library BuiltIn
Приведенный ниже пример показывает правильное использование каждого из ключевых слов:
*** Setting ***
Library String
Library BuiltIn
Library Selenium2Library
*** Test Cases ***
Example Search
[Tags] you probably do not have this many tags in real life
${first} = Catenate SEPARATOR=n Not in second Same stuff Differs Same
#this is use ful to find line the pattern
${a}= Get Lines Matching Pattern ${first} Same* case_insensitive=true
#this match the entire multi line string has any match
${b}= Should Match Regexp ${first} Same
#this gives a list of all matches
${c}= Get Regexp Matches ${first} Same
Log ${a}
Log ${b}
Log ${c}