某个标签中的属性顺序是否相关?

时间:2010-06-14 13:54:21

标签: xml selenium xhtml selenium-ide

某个标签中的属性顺序是否相关。 具体案例:

这是来自selenium testfile。鉴于一个testcasse

<?xml version="1.0" encoding="UTF-8" standalone="no"?><html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
<link rel="selenium.base" href="http://10.9.10.100"/>
<title>SQL-Injection</title>
</head>
<body>
<table border="1" cellpadding="1" cellspacing="1">
<thead>
<tr><td colspan="3" rowspan="1">SQL-Injection</td></tr>
</thead><tbody>
<tr>
    <td>open</td>
    <td>/main.php?page=start.inc</td>
    <td/>
</tr>
<tr>
    <td>type</td>
    <td>username</td>
    <td>OR 1=1 #</td>
</tr>
<tr>
    <td>type</td>
    <td>password</td>
    <td>OR 1=1 #</td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>loginbutton</td>
    <td/>
</tr>
<tr>
    <td>assertTextPresent</td>
    <td>Bei dem Hack-Test dieser Webanwendung geht es darum möglichst viele Schwachstellen zu finden und erfolgreich auszunutzen</td>
    <td/>
</tr>

</tbody></table>
</body>
</html>

感兴趣的是:

<link rel="selenium.base" href="http://10.9.10.100"/>

如上所述,它将由Selenium IDE软件的fixed version正确解析。但是当我切换两个参数时:

<link  href="http://10.9.10.100" rel="selenium.base"/>

Selenium IDE无法正确解析href属性。

我总是认为属性的顺序并不重要。我错了还是这是一个实现错误?

1 个答案:

答案 0 :(得分:4)

在解析XML文件时,属性(通常)按从左到右的顺序放在文档树中(取决于实现)。因此,在现实世界中,订单以某种方式影响树的拓扑结构,但是消费者应该足够聪明并且提供与订单无关的一致结果。所以这绝对是一个实现错误。

顺便说一下,XML规范说明了

  

属性规范的顺序   在开始标记中并不重要