哪个网页元素标记最好用于通过Webdrive查找和获取值

时间:2016-12-22 17:12:29

标签: c# css selenium xpath tdd

我正在使用Selenium进行使用 C#的UI测试。当我在测试前端的开始步骤时,我必须决定如何“标记”我的web元素以便将来进行简单的测试和维护。 因此,如果我有<input><div>或任何其他元素,哪个更好用? id="element_id"name="element_name"class="class_name"或只是Xpath?

还是其他什么?

2 个答案:

答案 0 :(得分:1)

通常,在HTML中设置唯一元素的方法是使用id标记。大多数网站都认为标记的id是唯一的。

Schema主要用于识别&#34;项目&#34;在您的网站中,通常可以这样描述。

请注意class根本不是唯一的,因为它主要用于样式,您可以在多个元素上使用相同的类,也可以在单个元素上使用多个类。

答案 1 :(得分:1)

我建议您与开发团队联系。 从开发人员的角度来看,如果我要对UI进行更改以修复错误或增强外观,那么这些更改将影响您的Selenium UI测试。最不优选的改变是id =“element_id”。开发人员通常会使用CSS,如果你找到了一个元素Find(By.CssSelector(“cssselectors”)),如果它已经改变那么你的测试将会失败,所以会发现(​​By.XPath(“// xpath”) )。

我会说与Find(By.Id(“element_id”));

但是,鉴于所有内容都已更改,您必须更改测试中的所有内容。