0

我使用 selenium ide 记录了一个测试。根据应用程序的要求,测试用例在执行后应该显示错误,但它在 selenium ide 中执行而没有显示错误。那么是应用程序无法正常工作还是我没有正确记录测试???

<?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="https://example.com/" />
<title>enerc2</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">enerc2</td></tr>
</thead><tbody>
<tr>
    <td>open</td>
    <td>www.example.com/index/admin</td>
    <td></td>
</tr>
<tr>
    <td>verifyElementPresent</td>
    <td>//div[@id='site-grid']/table/thead/tr[2]/td[2]</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>css=thead &gt; tr &gt; #site-grid_c1 &gt; a[title=&quot;Fuel Level after     last fueling (Tank Capacity)&quot;]</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>name=Site[Tank_Capacity]</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>name=Site[Tank_Capacity]</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>name=Site[Tank_Capacity]</td>
    <td>123</td>
</tr>
<tr>
    <td>click</td>
    <td>name=Site[Tank_Capacity]</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>name=Site[Tank_Capacity]</td>
    <td>&lt;&gt;</td>
</tr>
<tr>
    <td>click</td>
    <td>name=Site[Tank_Capacity]</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>name=Site[Tank_Capacity]</td>
    <td>&lt;&gt;+-</td>
</tr>
<tr>
    <td>click</td>
    <td>name=Site[Tank_Capacity]</td>
    <td></td>
</tr>
<tr>
    <td>verifyElementPresent</td>
    <td>css=div.summary</td>
    <td></td>
</tr>
</tbody></table>
</body>
</html>
4

2 回答 2

0

默认情况下,Selenium 只会记录您的导航。您需要添加适当的验证。这可以在您进行时完成,或者您可以逐步完成测试并在进行时添加它们。添加基于功能的测试,而不是外观和感觉。对于基本测试,我会检查页面标题以及是否存在结果。

看起来您可能已经在表格上记录了几次探索性点击。我不知道这些在您的测试中是否非常有用。在任何情况下,点击后都没有测试。

我发现许多其他竞争工具将为您构建一组测试。但是,默认测试往往侧重于外观和感觉,当这种情况发生变化时很容易失败。它们还倾向于使功能测试变得困难。我见过测试套件,当 DST 切换时,每个页面每年都会失败两次。

编辑:测试失败时,检查是否存在错误消息。如果没有显示任何消息,测试将更加困难。如果成功的条目导航到具有不同标题的页面,则可以检查页面标题。

一个简单的测试策略是检查测试成功时应该存在的东西,否则不会出现在页面上。对于失败情况,这将是正确的失败消息。对于成功的案例,这将是成功的结果。尽可能忽略外观和感觉。页面标题可能是确定您是否在正确页面上的有用方法。

于 2012-12-15T14:21:33.673 回答
0

如果应用程序中不存在验证代码,那么很明显,在输入中使用特殊字符执行时不会出现任何错误。您可以尝试添加一个简单的警报,只需添加javascript:alert('value of the input'); 然后检查条件。
或者,如果您更喜欢编码,请尝试if(){}else{}
使用您的代码,而不是测试工具。

于 2012-12-15T15:56:22.607 回答