我们可以在开发代码中使用自定义测试名称吗?

时间:2016-07-08 07:07:06

标签: selenium selenium-webdriver

开发人员已经提出了一种解决方案,可以为设计代码中的所有元素添加测试名称,并且此测试名称可以在自动化中用于查找元素,这样即使他们更改设计名称或选择器也不会影响自动化。

<input test-name = *"test_uname"* id="username" type="text" required="required" maxlength="40" name="username"/>

介绍test-name = test_uname

我需要你的建议和这种方法的优点/缺点

2 个答案:

答案 0 :(得分:1)

开发人员提供的出色解决方案通过遵循这些标准,自动化脚本可以更稳定。

建议:设计时不要使用标签名称,即使在设计更改中也要使自动化脚本能够维持。

例如在你的情况下应该形成xpath

// * [@ test-name ='test_name']

在这种情况下,即使html标记被更改,自动化脚本也不会失败。

答案 1 :(得分:0)

在您发布的示例中,已有ID。为什么不用它呢?您关心的所有元素的ID都是最好的。如果您的应用程序自动生成动态ID,那么某些自定义属性(如test-name)将非常理想。我鼓励你把它们命名为有意义的东西,例如用户名字段test-name="username"。尽可能让他们人性化。另外,您不需要在每个属性前加上&#34; test _&#34;,它已经在test-name中,这样就足够了。