robotframework框架(三)之常用关键字

一、简介

Robot Framework是一款基于Python的开源自动化测试框架,具有良好的可扩展性和关键字驱动的特点。它主要用于验收测试(Acceptance Testing)和验收测试驱动开发(ATDD),同时也支持行为驱动开发(BDD)和机器人流程自动化(RPA),主要有以下特点:

  1. 关键字驱动:Robot Framework采用关键字驱动的方法来编写测试用例,这使得测试用例易于理解和维护。
  2. 易于使用的表格语法:测试数据通常以表格的形式输入,这种表格式的语法简单易用,并且可以方便地编辑和管理测试用例。
  3. 高度可扩展性:可以通过XML-RPC服务或其他编程语言(如Java)扩展框架的功能,从而满足不同的测试需求。
  4. 多客户端和接口支持:能够同时测试多种类型的客户端(Web、PC、移动端)或接口,适用于分布式、异构环境中的自动化测试。
  5. 丰富的库支持:提供了标准库和远程库,用户可以根据需要创建新的测试库,例如Selenium库用于Web应用测试,Remote Swing库用于Java应用测试等。
  6. 生成详细的报告和日志:提供易于阅读的结果报告和HTML格式的日志,帮助用户快速定位问题并进行分析。

二、BuiltIn常用关键字

BuiltIn库是Robot Framework中默认可用的库,它提供了许多通用的关键字,用于控制测试的执行流程、管理变量、进行断言等。以下是一些常用的BuiltIn库关键字及其使用方法和代码示例:

  1. Should Be Equal

    • 检查两个项是否相等。
    Should Be Equal  ${expected}  ${actual}
    
  2. Should Be True

    • 检查表达式是否为真。
    Should Be True  ${condition}
    
  3. Should Be False

    • 检查表达式是否为假。
    Should Be False  ${condition}
    
  4. Should Contain

    • 检查字符串是否包含子字符串。
    Should Contain  ${string}  ${substring}
    
  5. Should Not Contain

    • 检查字符串是否不包含子字符串。
    Should Not Contain  ${string}  ${substring}
    
  6. Log

    • 向日志中添加一条消息。
    Log  Hello, this is a log message!
    
  7. Sleep

    • 暂停执行指定的时间。
    Sleep  1s
    
  8. Set Test Variable

    • 设置测试用例变量的值。
    Set Test Variable  ${my_var}  Some value
    
  9. Get Time

    • 获取当前时间。
    ${current_time}=  Get Time
    
  10. Run Keyword If

    • 根据条件运行关键字。
    Run Keyword If  ${condition}  Some Keyword
    
  11. Run Keyword Unless

    • 如果条件不成立,则运行关键字。
    Run Keyword Unless  ${condition}  Some Keyword
    
  12. Run Keyword And Ignore Error

    • 运行关键字并忽略错误。
    Run Keyword And Ignore Error  Some Keyword
    
  13. Repeat Keyword

    • 重复运行关键字多次。
    Repeat Keyword  5 times  Some Keyword
    
  14. [Tags]

    • 为测试用例或测试套件定义标签。
    *** Test Cases ***
    Example Test
    [Tags]  smoke  regression
    
  15. [Documentation]

    • 为测试用例或测试套件提供文档说明。
    *** Settings ***
    Documentation   This is an example test suite.
    
  16. [Setup] / [Teardown]

    • 定义测试用例或测试套件的前置和后置执行关键字。
    *** Test Cases ***
    Example Test
    [Setup]  Open Browser  http://example.com
    [Teardown]  Close Browser
    
  17. [Return]

    • 从测试用例或关键字中返回。
    [Return]  ${result}
    
  18. Should Be None

    • 检查变量是否为None。
    Should Be None  ${variable}
    
  19. Should Not Be None

    • 检查变量是否不为None。
    Should Not Be None  ${variable}
    
  20. Should Be Empty

    • 检查字符串或列表是否为空。
    Should Be Empty  ${string}
    
  21. Should Not Be Empty

    • 检查字符串或列表是否不为空。
    Should Not Be Empty  ${list}
    
  22. Length Should Be

    • 检查字符串或列表的长度。
    Length Should Be  ${list}  3
    
  23. Should Match Regexp

    • 检查字符串是否匹配正则表达式。
    Should Match Regexp  ${string}  ^abc.*
    
  24. Should Be True

    • 检查表达式是否为真。
    Should Be True  ${result} > 0
    
  25. Evaluate

    • 执行Python表达式并返回结果。
    ${result}=  Evaluate  2 * ${var}
    
  26. Get Length

    • 获取字符串或列表的长度。
    ${length}=  Get Length  ${string}
    
  27. Should Start With

    • 检查字符串是否以指定的子字符串开始。
    Should Start With  ${string}  ${prefix}
    
  28. Should End With

    • 检查字符串是否以指定的子字符串结束。
    Should End With  ${string}  ${suffix}
    
  29. Convert To String

    • 将任意项转换为字符串。
    ${string}=  Convert To String  ${number}
    
  30. Convert To Integer

    • 将字符串转换为整数。
    ${integer}=  Convert To Integer  ${string}
    
  31. Convert To Boolean

    • 将字符串转换为布尔值。
    ${boolean}=  Convert To Boolean  ${string}
    
  32. Set Suite Variable

    • 设置测试套件变量的值。
    Set Suite Variable  ${SUITE_VAR}  Some value
    
  33. Set Global Variable

    • 设置全局变量的值。
    Set Global Variable  ${GLOBAL_VAR}  Some value
    
  34. Get Variables

    • 获取所有变量及其值。
    ${variables}=  Get Variables
    
  35. Get Variable Value

    • 获取特定变量的值。
    ${value}=  Get Variable Value  ${variable_name}
    
  36. Create List

    • 创建一个列表。
    ${list}=  Create List  item1  item2  item3
    
  37. Append To List

    • 向列表追加项。
    Append To List  ${list}  item4
    
  38. Set Length

    • 设置字符串或列表的长度。
    Set Length  ${string}  5
    
  39. Remove Tags

    • 从测试用例中移除标签。
    Remove Tags  ${test_case}  tag1  tag2
    
  40. Fatal Error

    • 立即终止测试执行,并报告致命错误。
    Fatal Error  Test cannot continue due to an error.
    
  41. Comment

    • 添加注释,该注释不会出现在测试日志中。
    Comment  This is a comment.
    
  42. [Timeout]

    • 设置测试用例的超时时间。
    *** Test Cases ***
    Example Test
    [Timeout]  10 seconds
    
  43. Wait Until Keyword Succeeds

    • 等待直到关键字成功执行。
    Wait Until Keyword Succeeds  10 sec  1 sec  Keyword Should Be True  ${condition}
    
  44. Wait Until Keyword Fails

    • 等待直到关键字失败执行。
    Wait Until Keyword Fails  10 sec  1 sec  Keyword Should Be True  ${condition}
    
  45. Wait Until Page Contains

    • 等待直到页面包含指定文本。
    Wait Until Page Contains  expected text
    
  46. Wait Until Element Is Visible

    • 等待直到元素可见。
    Wait Until Element Is Visible  ${locator}
    
  47. Wait Until Element Is Not Visible

    • 等待直到元素不可见。
    Wait Until Element Is Not Visible  ${locator}
    
  48. Import Library

    • 导入外部库。
    Import Library  SeleniumLibrary
    
  49. Import Resource

    • 导入外部资源文件。
    Import Resource  keywords.robot
    
  50. [Arguments]

    • 定义测试套件或测试用例的参数。
    *** Settings ***
    [Arguments]  arg1  arg2
    

请注意,BuiltIn库的关键字数量非常多,这里只列出了一部分常用的关键字。在实际的测试脚本中,你可以根据需要使用更多的关键字和自定义关键字。在RIDE中,你可以通过按下F5键或使用工具栏的“Search Keywords”功能来查找和使用这些关键字。

三、Collections常用关键字

Robot Framework 的 Collections 库提供了一组用于操作列表(Lists)和字典(Dictionaries)的关键字。以下是一些 Collections 库中常用的关键字及其使用方法和代码示例:

  1. Create List

    • 创建一个列表。

    • 用法:@{list}= Create List value1 value2 value3

    • 例子:

      *** Variables ***
      @{Fruits}=  Create List  Apple  Banana  Orange
      
  2. Get From List

    • 从列表中获取一个元素。

    • 用法:${value}= Get From List ${list} index

    • 例子:

      *** Test Cases ***
      Example
          ${first_fruit}=  Get From List  ${Fruits}  0
          Log  ${first_fruit}
      
  3. List Should Contain

    • 检查列表是否包含某个元素。

    • 用法:List Should Contain ${list} value

    • 例子:

      *** Test Cases ***
      Example
          List Should Contain  ${Fruits}  Banana
      
  4. List Should Not Contain

    • 检查列表是否不包含某个元素。

    • 用法:List Should Not Contain ${list} value

    • 例子:

      *** Test Cases ***
      Example
          List Should Not Contain  ${Fruits}  Mango
      
  5. Append To List

    • 向列表追加一个元素。

    • 用法:Append To List ${list} value

    • 例子:

      *** Test Cases ***
      Example
          Append To List  ${Fruits}  Mango
      
  6. Remove From List

    • 从列表中移除一个元素。

    • 用法:Remove From List ${list} value

    • 例子:

      *** Test Cases ***
      Example
          Remove From List  ${Fruits}  Orange
      
  7. Insert Into List

    • 在列表的指定位置插入一个元素。

    • 用法:Insert Into List ${list} index value

    • 例子:

      *** Test Cases ***
      Example
          Insert Into List  ${Fruits}  1  Mango
      
  8. Set List Value

    • 设置列表中指定位置的元素。

    • 用法:Set List Value ${list} index value

    • 例子:

      *** Test Cases ***
      Example
          Set List Value  ${Fruits}  1  Pineapple
      
  9. Get Length

    • 获取列表或字典的长度。

    • 用法:${length}= Get Length ${list_or_dict}

    • 例子:

      *** Test Cases ***
      Example
          ${length}=  Get Length  ${Fruits}
          Log  There are ${length} fruits.
      
  10. Create Dictionary

    • 创建一个字典。

    • 用法:&{dict}= Create Dictionary key1=value1 key2=value2

    • 例子:

      *** Variables ***
      &{FruitDict}=  Create Dictionary  Apple=Red  Banana=Yellow  Orange=Orange
      
  11. Get From Dictionary

    • 从字典中获取一个值。

    • 用法:${value}= Get From Dictionary ${dict} key

    • 例子:

      *** Test Cases ***
      Example
          ${apple_color}=  Get From Dictionary  ${FruitDict}  Apple
          Log  Apple color is ${apple_color}
      
  12. Remove From Dictionary

    • 从字典中移除一个键值对。

    • 用法:Remove From Dictionary ${dict} key

    • 例子:

      *** Test Cases ***
      Example
          Remove From Dictionary  ${FruitDict}  Orange
      
  13. Pop From Dictionary

    • 从字典中移除一个键值对并返回其值。

    • 用法:${value}= Pop From Dictionary ${dict} key

    • 例子:

      *** Test Cases ***
      Example
          ${apple_color}=  Pop From Dictionary  ${FruitDict}  Apple
          Log  Apple color was ${apple_color}
      
  14. Copy Dictionary

    • 复制一个字典。

    • 用法:&{dict_copy}= Copy Dictionary ${dict}

    • 例子:

      *** Test Cases ***
      Example
          &{FruitDictCopy}=  Copy Dictionary  ${FruitDict}
      
  15. Dictionary Should Contain Key

    • 检查字典是否包含某个键。

    • 用法:Dictionary Should Contain Key ${dict} key

    • 例子:

      *** Test Cases ***
      Example
          Dictionary Should Contain Key  ${FruitDict}  Banana
      
  16. Dictionary Should Contain Value

    • 检查字典是否包含某个值。

    • 用法:Dictionary Should Contain Value ${dict} value

    • 例子:

      *** Test Cases ***
      Example
          Dictionary Should Contain Value  ${FruitDict}  Yellow
      
  17. Set To Dictionary

    • 在字典中设置一个键的值。

    • 用法:Set To Dictionary ${dict} key value

    • 例子:

      *** Test Cases ***
      Example
          Set To Dictionary  ${FruitDict}  Banana  Green
      
  18. Merge Dictionaries

    • 合并两个字典。

    • 用法:&{merged_dict}= Merge Dictionaries ${dict1} ${dict2}

    • 例子:

      *** Variables ***
      &{FruitDict}=  Create Dictionary  Apple=Red  Banana=Yellow
      &{VegetableDict}=  Create Dictionary  Carrot=Orange  Spinach=Green
      *** Test Cases ***
      Example
          &{AllDict}=  Merge Dictionaries  ${FruitDict}  ${VegetableDict}
      

在使用这些关键字之前,你需要在测试套件的设置中导入Collections库:

*** Settings ***
Library    Collections

然后,你就可以在测试用例中使用上述关键字了。这些关键字可以帮助你在测试中处理复杂的列表和字典操作,例如列表的增删改查、字典的键值对操作等。

四、DateTime常用关键字

Robot Framework的DateTime库提供了一组用于处理日期和时间的关键字。以下是一些常用的DateTime库关键字及其使用方法和代码示例:

  1. Get Current Date
    • 获取当前日期。
    • 用法:${date}= Get Current Date format=YYYY-MM-DD
    • 例子:${today}= Get Current Date
  2. Get Current Time
    • 获取当前时间。
    • 用法:${time}= Get Current Time format=HH:MM:SS
  3. Convert Date
    • 将日期转换为不同的格式。
    • 用法:${new_date}= Convert Date ${date} format=YYYY-MM-DD base=NOW
    • 例子:${tomorrow}= Convert Date ${today} base=NOW days=1
  4. Convert Time
    • 将时间转换为不同的格式。
    • 用法:${new_time}= Convert Time ${time} format=HH:MM:SS
  5. Get Timezone Offset
    • 获取当前时区与UTC的时间差。
    • 用法:${offset}= Get Timezone Offset
  6. Sleep Until Time
    • 暂停执行直到指定的时间。
    • 用法:Sleep Until Time 23:59:59
  7. Set Timezone To UTC
    • 将时区设置为UTC。
    • 用法:Set Timezone To UTC
  8. Set Timezone
    • 设置时区。
    • 用法:Set Timezone America/New_York
  9. Validate Date
    • 验证日期是否有效。
    • 用法:Validate Date YYYY-MM-DD
  10. Validate Time
    • 验证时间是否有效。
    • 用法:Validate Time HH:MM:SS

请注意,DateTime库可能不在Robot Framework的标准库中,因此在使用之前可能需要先安装。安装后,你可以在测试套件的设置中导入DateTime库:

robot*** Settings ***
Library    DateTime

然后,你就可以在测试用例中使用上述关键字了。这些关键字可以帮助你在测试中处理日期和时间相关的逻辑,例如等待特定时间、计算日期差等。

五、SeleniumLibrary常用关键字

Robot Framework 的 SeleniumLibrary(以前称为 Selenium2Library)是一个用于Web测试的库,它提供了许多关键字来模拟用户与Web浏览器的交互。以下是一些 SeleniumLibrary 中常用的关键字及其使用方法和代码示例:

  1. Open Browser

    • 打开一个新的浏览器窗口。

    • 用法:Open Browser http://example.com

    • 例子:

      *** Settings ***
      Library    SeleniumLibrary
      
      *** Test Cases ***
      Open Browser Test
          Open Browser  http://example.com
      
  2. Close Browser

    • 关闭当前浏览器窗口。

    • 用法:Close Browser

    • 例子:

      Close Browser
      
  3. Get Title

    • 获取当前页面的标题。

    • 用法:${title}= Get Title

    • 例子:

      *** Test Cases ***
      Get Title Test
          ${title}=  Get Title
          Log  Page title is ${title}
      
  4. Go To

    • 导航到指定的URL。

    • 用法:Go To http://example.com

    • 例子:

      Go To  http://example.com
      
  5. Click Button

    • 点击一个按钮。

    • 用法:Click Button locator

    • 例子:

      Click Button  Submit
      
  6. Input Text

    • 在文本框中输入文本。

    • 用法:Input Text locator text

    • 例子:

      Input Text  name_field  John Doe
      
  7. Get Text

    • 获取元素的文本。

    • 用法:${text}= Get Text locator

    • 例子:

      *** Test Cases ***
      Get Text Test
          ${link_text}=  Get Text  WelcomeLink
          Log  The link text is ${link_text}
      
  8. Wait Until Element Is Visible

    • 等待直到元素可见。

    • 用法:Wait Until Element Is Visible locator timeout

    • 例子:

      Wait Until Element Is Visible  login_button  10
      
  9. Wait Until Page Contains

    • 等待直到页面包含指定文本。

    • 用法:Wait Until Page Contains text timeout

    • 例子:

      Wait Until Page Contains  Thank you for logging in  30
      
  10. Select From List By Index

    • 通过索引从列表中选择选项。

    • 用法:Select From List By Index locator index

    • 例子:

      Select From List By Index  fruit_list  2
      
  11. Select Checkbox

    • 选择或取消选择复选框。

    • 用法:Select Checkbox locator

    • 例子:

      Select Checkbox  agree_terms
      
  12. Get Selected List Label

    • 获取选中列表项的标签。

    • 用法:${label}= Get Selected List Label locator

    • 例子:

      *** Test Cases ***
      Get Selected List Label Test
          ${selected_label}=  Get Selected List Label  language_list
          Log  The selected language is ${selected_label}
      
  13. Switch Window

    • 切换到另一个浏览器窗口。

    • 用法:Switch Window window_id_or_name

    • 例子:

      Switch Window  NewWindow
      
  14. Execute Javascript

    • 执行JavaScript代码。

    • 用法:Execute Javascript javascript_code

    • 例子:

      Execute Javascript  window.scrollTo(0, document.body.scrollHeight);
      
  15. Capture Page Screenshot

    • 捕获当前页面的屏幕截图。

    • 用法:Capture Page Screenshot filename

    • 例子:

      Capture Page Screenshot  screenshot.png
      

在使用这些关键字之前,你需要在测试套件的设置中导入SeleniumLibrary:

*** Settings ***
Library    SeleniumLibrary

然后,你就可以在测试用例中使用上述关键字了。这些关键字可以帮助你自动化Web浏览器上的各种操作,例如打开网页、填写表单、点击按钮、验证页面内容等。

六、DatabaseLibrary常用关键字

Robot Framework 的 DatabaseLibrary 提供了一组用于与数据库交互的关键字,允许你执行SQL语句、查询数据和管理数据库连接。以下是一些 DatabaseLibrary 中常用的关键字及其使用方法和代码示例:

  1. Connect To Database

    • 连接到数据库。

    • 用法:Connect To Database database_url

    • 例子:

      *** Settings ***
      Library    DatabaseLibrary
      
      *** Test Cases ***
      Example
          Connect To Database  sqlite:///example.db
      
  2. Close Database

    • 关闭数据库连接。

    • 用法:Close Database

    • 例子:

      Close Database
      
  3. Execute SQL

    • 执行SQL语句。

    • 用法:Execute SQL sql_query

    • 例子:

      *** Test Cases ***
      Create Table
          Execute SQL  CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)
      
  4. Query

    • 执行SQL查询并返回结果。

    • 用法:@{result}= Query sql_query

    • 例子:

      *** Test Cases ***
      Get Users
          @{users}=  Query  SELECT * FROM users
          Log Many  @{users}
      
  5. Get Table Names

    • 获取数据库中所有表的名称。

    • 用法:@{tables}= Get Table Names

    • 例子:

      *** Test Cases ***
      List Tables
          @{tables}=  Get Table Names
          Log Many  @{tables}
      
  6. Get Column Names

    • 获取表的列名。

    • 用法:@{columns}= Get Column Names table_name

    • 例子:

      *** Test Cases ***
      List Columns
          @{columns}=  Get Column Names  users
          Log Many  @{columns}
      
  7. Insert Into Table

    • 向表中插入数据。

    • 用法:Insert Into Table table_name column1=value1 column2=value2

    • 例子:

      *** Test Cases ***
      Insert User
          Insert Into Table  users  name=John Doe
      
  8. Update Table

    • 更新表中的数据。

    • 用法:Update Table table_name column=value condition

    • 例子:

      *** Test Cases ***
      Update User
          Update Table  users  name=Jane Doe  WHERE id=1
      
  9. Delete From Table

    • 从表中删除数据。

    • 用法:Delete From Table table_name condition

    • 例子:

      *** Test Cases ***
      Delete User
          Delete From Table  users  WHERE id=1
      
  10. Row Count

    • 获取表中的行数。

    • 用法:${count}= Row Count table_name

    • 例子:

      *** Test Cases ***
      Count Users
          ${count}=  Row Count  users
          Log  Number of users: ${count}
      
  11. Table Should Exist

    • 检查表是否存在。

    • 用法:Table Should Exist table_name

    • 例子:

      *** Test Cases ***
      Check Table Existence
          Table Should Exist  users
      
  12. Column Should Exist

    • 检查列是否存在于表中。

    • 用法:Column Should Exist table_name column_name

    • 例子:

      *** Test Cases ***
      Check Column Existence
          Column Should Exist  users  name
      

在使用这些关键字之前,你需要在测试套件的设置中导入DatabaseLibrary:

*** Settings ***
Library    DatabaseLibrary

然后,你就可以在测试用例中使用上述关键字了。这些关键字可以帮助你进行数据库测试,例如测试数据库的增删改查操作、验证数据完整性、执行数据迁移等。请注意,你需要根据你的数据库类型(如 MySQL、PostgreSQL、SQLite 等)提供正确的连接字符串。

七、String常用关键字

Robot Framework 的 String 库提供了一组用于字符串操作的关键字,这些关键字可以帮助你执行各种字符串处理任务,如字符串搜索、替换、分割和连接等。以下是一些 String 库中常用的关键字及其使用方法和代码示例:

  1. Get Length

    • 获取字符串的长度。

    • 用法:${length}= Get Length ${string}

    • 例子:

      *** Test Cases ***
      Get String Length
          ${length}=  Get Length  Robot Framework
          Log  The length of the string is ${length}
      
  2. Should Be Equal (As Strings)

    • 检查两个字符串是否相等。

    • 用法:Should Be Equal (As Strings) ${string1} ${string2}

    • 例子:

      *** Test Cases ***
      Strings Should Be Equal
          Should Be Equal (As Strings)  Robot  R00b0t
      
  3. Should Not Be Equal (As Strings)

    • 检查两个字符串是否不相等。

    • 用法:Should Not Be Equal (As Strings) ${string1} ${string2}

    • 例子:

      *** Test Cases ***
      Strings Should Not Be Equal
          Should Not Be Equal (As Strings)  Robot  Framework
      
  4. Should Contain

    • 检查字符串是否包含另一个子字符串。

    • 用法:Should Contain ${string} ${substring}

    • 例子:

      *** Test Cases ***
      String Should Contain
          Should Contain  Robot Framework is great  great
      
  5. Should Not Contain

    • 检查字符串是否不包含另一个子字符串。

    • 用法:Should Not Contain ${string} ${substring}

    • 例子:

      *** Test Cases ***
      String Should Not Contain
          Should Not Contain  Robot Framework  Java
      
  6. Concatenate

    • 连接两个或多个字符串。

    • 用法:${result}= Concatenate ${string1} ${string2} separator=${separator}

    • 例子:

      *** Test Cases ***
      Concatenate Strings
          ${concatenated}=  Concatenate  Robot  Framework  separator= _
          Log  The concatenated string is ${concatenated}
      
  7. Fetch From Left

    • 从字符串左侧获取指定数量的字符。

    • 用法:${result}= Fetch From Left ${string} ${length}

    • 例子:

      *** Test Cases ***
      Fetch From Left
          ${substring}=  Fetch From Left  Robot Framework  5
          Log  The substring is ${substring}
      
  8. Fetch From Right

    • 从字符串右侧获取指定数量的字符。

    • 用法:${result}= Fetch From Right ${string} ${length}

    • 例子:

      *** Test Cases ***
      Fetch From Right
          ${substring}=  Fetch From Right  Robot Framework  6
          Log  The substring is ${substring}
      
  9. Split String

    • 根据分隔符分割字符串。

    • 用法:@{list}= Split String ${string} separator=${separator}

    • 例子:

      *** Test Cases ***
      Split String
          @{words}=  Split String  Robot Framework  separator=_
          Log Many  @{words}
      
  10. Replace String

    • 替换字符串中的子字符串。

    • 用法:${result}= Replace String ${string} old=${old} new=${new}

    • 例子:

      *** Test Cases ***
      Replace String
          ${new_string}=  Replace String  Robot Framework  Robot  R00b0t
          Log  The new string is ${new_string}
      
  11. Log Many

    • 记录多个字符串,每个字符串为日志中的一个单独条目。

    • 用法:Log Many @{strings}

    • 例子:

      *** Test Cases ***
      Log Many Strings
          Log Many  Robot  Framework  is  great
      
  12. Should Match Regexp

    • 检查字符串是否匹配正则表达式。

    • 用法:Should Match Regexp ${string} pattern=${pattern}

    • 例子:

      *** Test Cases ***
      String Should Match Regexp
          Should Match Regexp  Robot Framework  Robot.*
      

在使用这些关键字之前,你需要在测试套件的设置中导入String库:

*** Settings ***
Library    String

然后,你就可以在测试用例中使用上述关键字了。这些关键字可以帮助你在测试中执行字符串处理,例如验证返回的文本、构建动态字符串、分割和重组字符串等。

八、参考

  1. selenium官网:https://www.selenium.dev/
  2. driver下载地址:https://www.selenium.dev/zh-cn/documentation/selenium_manager/
  3. chromedriver下载镜像地址(版本不一定最新):https://registry.npmmirror.com/binary.html?path=chromedriver/
  4. chromedriver下载地址(最新):https://googlechromelabs.github.io/chrome-for-testing/
  5. firefoxdriver下载:https://github.com/mozilla/geckodriver
  6. robotframework手册:https://robotframework.org/robotframework/
posted @ 2024-08-28 11:55  xyztank  阅读(314)  评论(0编辑  收藏  举报