如何在表格中保存一列,并检查Robot Framework Selenium中每个单元格中是否都有Text?

时间:2018-10-16 19:08:29

标签: selenium robotframework

我打算为该表格的单元格创建一个For,并将内容保存到带有IF的preguantar(如果有或没有Text的情况下)。

但是我不知道表中的For和IF如何工作。

Verificar Recibo Pagado
    ${Texto} = Get Table Cell ${Tabla} 11 9
    Run Keyword If ${Texto}
    log ${Texto}

1 个答案:

答案 0 :(得分:3)

很高兴看到您的测试用例中的西班牙语用法。 :)

要验证表数据,我们需要在逻辑上进行嵌套循环。但是我们不能直接在Robot Framework中编写嵌套循环。我们可以为innerloop设置单独的关键字,也可以在main for循环中调用它。

例如,

如果您的变量${Tabla}将xpath称为//table[@id='some id'],并且所有行都具有相同的列,则用于验证单元格中没有空数据的测试用例如下所示,

*** Variables ***
${Tabla}    //table[@id='some id']

*** Test Cases ***
Verificar Recibo Pagado
   ${fila} =    Get Element Count   ${Tabla}/tbody/tr   # Get row count
   :FOR    ${rowindex}    IN RANGE    1    ${fila + 1}
    \    All Column Should Not Be Empty  ${Tabla}   ${rowindex}

*** Keywords ***
All Column Should Not Be Empty 
    [Arguments]    ${Tabla}    ${fila}
    ${columna} =    Get Element Count   ${Tabla}/tbody/tr/td   # Get Column count
    :FOR    ${colindex}    IN RANGE    1    ${columna + 1}
    \    ${Texto} = Get Table Cell  ${Tabla}   ${fila}   ${colindex}
    \    Should Not Be Empty  ${Texto}