如何在Selenium IDE中验证HTML 5验证弹出窗口中的文本

时间:2015-02-23 06:47:15

标签: selenium-ide

我是Selenium IDE的新手。我使用Html 5验证创建了简单的表单。

我已经在Selenium IDE中创建了测试表单的测试用例。但是当我尝试验证弹出窗口“请填写此字段”时,测试用例失败了。这是使用selenese命令verifyAlertPresent的html 5验证弹出窗口。

如何在selenium IDE中验证Html 5验证弹出窗口?

我附上了两个截图:

  1. 表单验证:http://i.stack.imgur.com/gT7hX.png

  2. Selenium IDE测试用例:http://i.stack.imgur.com/M6geD.png

  3. 但是有一个问题是它不能用于基于特定id的测试用例。如果我想在我的代码中检查id = name它工作正常但是在第二个命令中如果我想检查“请填写这个字段“为id =电子邮件然后它的流行的id =名称和案件获得通过。这是我的代码:

    测试用例:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head profile="http://selenium-ide.openqa.org/profiles/test-case">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="selenium.base" href="http://localhost/testform.html" />
    <title>testform</title>
    </head>
    <body>
    <table cellpadding="1" cellspacing="1" border="1">
    <thead>
    <tr><td rowspan="1" colspan="3">testform</td></tr>
    </thead><tbody>
    <tr>
        <td>open</td>
        <td>/testform.html</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>css=button[type=&quot;submit&quot;]</td>
        <td></td>
    </tr>
    <tr>
        <td>pause</td>
        <td></td>
        <td>5000</td>
    </tr>
    <tr>
        <td>verifyElementPresent</td>
        <td>id=name</td>
        <td>//*[contains(., 'Please fill out this field.')]</td>
    </tr>
    <tr>
        <td>pause</td>
        <td></td>
        <td>5000</td>
    </tr>
    <tr>
        <td>verifyElementPresent</td>
        <td>id=email</td>
        <td>//*[contains(., 'Please fill out this field.')]</td>
    </tr>
    </tbody></table>
    </body>
    </html>
    

    HTML CODE:

    <!DOCTYPE html>
    <html>
    <head>
    <title>
    Test Form for Selenium
    </title>
    </head>
    <body>
    <form ><center>
    Name:<input id="name" type="text" required/><br/><br/>
    Email:<input id="email"  type="email" required/><br/><br/>
    <button type="submit" >submit</button>
    <center>
    </form>
    </body>
    </html>
    

1 个答案:

答案 0 :(得分:0)

应该有html,你可以像任何其他元素一样检查。

尝试类似

的内容
<tr>
<td>verifyElementPresent</td>
<td>//*[contains(., 'Please fill out this field.')]</td>
<td></td>
</tr>

尝试一下,但在检测元素后,请选择更好的方法来选择元素。