1

我正在尝试创建一个可以在页面上的登录表单中输入用户名和密码的测试。但是,每次加载页面时,文本框名称都会更改,因此每次运行时测试都会停止。

如何设置 Selenium IDE 以便在刷新时识别文本框?

4

4 回答 4

4

我假设文本框每次只更改部分 ID 而不是整个 ID。

为了解决这个问题,我建议像人们上面提到的那样使用 xpath,但让它更加健壮,因为它每次只能找到那个元素。

例如

//input[contains(@id,'thePartOfTheIdThatNeverChanges')]

或者

//input[starts-with(@id,'thePartOfTheIdThatNeverChanges')]

或者

//input[ends-with(@id,'thePartOfTheIdThatNeverChanges')]

于 2010-10-07T06:30:48.890 回答
2

//form 1 (3) - HTML 中的第一个表单元素

这里提取作为示例 这是使用XPath。理论上,您可以使用XPath专注于解析 XHTML 的结构,但是这是相当脆弱的,所以它不一定是明智的做法,但它应该解决您的问题。

于 2010-10-06T23:05:19.360 回答
1

文本框的位置会改变,还是只是名称?

如果文本框位于同一位置,您可以使用 css 或 xpath 选择器来获取文本框。

于 2010-10-06T23:04:16.633 回答
1

我会推荐 CSS,因为 - a。为了可读性 b. 为了便于访问(以及,在您的情况下,可维护性)。

我使用 firebug 来访问/制定 CSS 标识符。

于 2010-10-11T20:01:54.740 回答