我用硒记录了一项测试。根据应用程序的要求,测试用例在执行后应显示错误,但它在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 > tr > #site-grid_c1 > a[title="Fuel Level after last fueling (Tank Capacity)"]</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><></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><>+-</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>
答案 0 :(得分:0)
默认情况下,Selenium会记录您的导航。您需要添加适当的验证。这可以在您继续进行时完成,或者您可以逐步完成测试并随着时间的推移添加它们。根据功能添加测试,而不是外观。对于基本测试,我检查页面标题,以及结果的存在。
看起来您可能在桌面上记录了几次探索性点击。我不知道这些在你的测试中是否非常有用。在任何情况下,点击后都没有测试。
我发现许多其他竞争工具都会为您构建一组测试。但是,默认测试往往侧重于外观,并且在更改时容易失败。它们也倾向于使功能测试变得困难。我见过测试套件,当DST切换时,每一页每年都会失败两次。
编辑:测试失败时,请检查是否存在错误消息。如果没有显示消息,则测试将更加困难。如果成功的条目导航到具有不同标题的页面,则可以检查页面标题。
一个简单的测试策略是检查测试成功时应该出现的内容,否则不会出现在页面上。对于故障情况,这将是正确的故障消息。对于成功案例,这将是成功的结果。尽可能地忽略外观和感觉。页面标题可能是确定您是否在正确页面上的有用方法。
答案 1 :(得分:0)
如果应用程序中没有验证码,那么很明显,在输入中使用特殊字符执行时不会出现任何错误。
您可以尝试添加简单提醒,只需添加javascript:alert('value of the input');
然后检查条件
或者如果您更喜欢编码,请尝试if(){}else{}
它绝对是您的代码,而不是测试工具。