0

セレン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

アプリケーションにVALIDATION CODEが存在しない場合、入力に特殊文字を使用して実行してもエラーが発生しないことは明らかです。簡単なアラートを追加してみることができます。追加javascript:alert('value of the input'); してから条件を確認するだけです。
または、コーディングにもっと興味がある場合はif(){}else{}
、テストツールではなく、コードに間違いなくあることを試してください。

于 2012-12-15T15:56:22.607 に答える
0

デフォルトでは、Selenium はナビゲーションを記録するだけです。適切な検証を追加する必要があります。これは、進行中に行うことも、テストをステップ実行して追加することもできます。ルック アンド フィールではなく、機能に基づいてテストを追加します。基本的なテストでは、ページ タイトルと結果の有無を確認します。

テーブルで探索的クリックを数回記録した可能性があります。これらがテストで非常に役立つかどうかはわかりません。いずれにせよ、クリック後のテストはありません。

他の競合するツールの多くは、あなたのために一連のテストを作成します。ただし、デフォルトのテストはルック アンド フィールに重点が置かれる傾向があり、それが変更されると簡単に失敗します。また、機能テストを困難にする傾向があります。DST が切り替わると、すべてのページが年に 2 回失敗するテスト スイートを見てきました。

EDIT:失敗をテストするときは、エラーメッセージの存在を確認してください。メッセージが表示されない場合、テストはより困難になります。成功したエントリが別のタイトルのページに移動した場合、ページ タイトルを確認できる場合があります。

簡単なテスト戦略は、テストが成功した場合に存在するはずの何かをチェックすることですが、それ以外の場合はページに表示されません。失敗の場合、これは正しい失敗メッセージになります。成功事例については、成功の結果となります。ルック アンド フィールはできるだけ無視します。ページ タイトルは、正しいページにいるかどうかを判断するのに役立つ場合があります。

于 2012-12-15T14:21:33.673 に答える