- 識別字之前被用作默認類型,現在不推薦使用,因為WebDriver不支持它。
- 使用識別字,可以使用ID和Name等定位策略。
- 使用具有匹配ID屬性的第一個元素。
- 如果沒有元素具有匹配的ID屬性,則使用具有匹配
name
屬性的第一個元素。 - 例如,
id=login
(可以是ID或Name)。
下麵來看看一個關於如何在Selenium IDE中使用識別字(ID)定位器作為命令目標的示例。
我們將創建一個登錄測試,以便可以更好地瞭解通過識別字(ID)定位元素。
- 啟動Firefox流覽器。
- 單擊流覽器右上角的Selenium圖示。
- 它將啟動Selenium IDE的默認介面。
- 單擊“測試腳本編輯器”框中的命令文本框。
對於許多Selenium命令,需要一個目標。 此目標標識Web應用程式內容中的元素,並包含位置策略,後跟位置格式為locatorType = location
。 在許多情況下可以省略定位器類型。
這可能是定位元素的最常用方法,並且在未使用已識別的定位器類型時是全部默認值。 使用此策略,將使用id
屬性值與位置匹配的第一個元素。 如果沒有元素具有匹配的id
屬性,則將使用具有與該位置匹配的name
屬性的第一個元素。
例如,頁面代碼可以具有id
和name
屬性,如下所示:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<title>Selenium示例™ - 許虎虎</title>
<body>
<div style="margin:auto;width:60%;">
<p>
Selenium示例
</p>
<?php
if($_POST){
$username = isset($_POST['username'])? trim($_POST['username']):'';
$password = isset($_POST['password'])? trim($_POST['password']):'';
if($username=='zaixian' && $password = '123456'){
echo "<p>您好,{$username} !</p>";
}
}
?>
<form id="loginForm" method="POST">
<input name="username" type="text" id="username"/>
<input name="password" type="password" id="password"/>
<input name="continue" type="submit" id="continue" value="登錄" />
</form>
</div>
</body>
<html>
用戶名字段的ID識別字如下所示:
同樣也可以獲取密碼和登錄的識別字,最後寫在 Selenium IDE的命令如下所示:
執行自動測試後,得到以下結果:
上一篇:
Selenium IDE定位策略
下一篇:
Selenium WebDriver簡介