gpt4 book ai didi

javascript - 哪个更好 : Using inbuilt Protractor/selenium functionalities OR Installing other node packages for protractor?

转载 作者:行者123 更新时间:2023-11-28 21:29:46 24 4
gpt4 key购买 nike

这是适用于 Protractor 的所有 npm 包的一般问题。

一个例子是linkuisref-locator包:

 <a ui-sref="home" class="ng-scope" href="/home">Home</a>

要选择上面的元素,有两种方法:
1) by.css()by.xpath() -- 这些是 Protractor 中已经包含的
2) by.linkUiSref() -- 这需要安装另一个包( protractor-linkuisref-locator )

第二个无疑更具可读性并且更接近 Angular 组件。但是,我不确定这是否是一种好的测试方法,同时牢记性能和其他因素!

我愿意接受任何意见/讨论/建议!

最佳答案

这是我的见解。

我个人在一些项目中使用 protractor 进行了测试,除了 protractor 提供的功能之外,我从来不需要任何东西 - 基本上,您可以使用by.cssby.xpath

此外,如果您查看 by.linkUiSref implementation ,您会发现它相当简单,并且基于属性检查 CSS 选择器:

  • a[ui-sref="value"]
  • a[data-ui-sref="value"]

这导致了这一点:是

by.linkUiSref("value")

更具可读性
by.css('a[ui-sref="value"]')

嗯,严格来说,因为也可以有 data-ui-sref 属性,css 选择器将是 a[ui-sref="value"],a [data-ui-sref="value"] 这仍然是一个简单的。


另一方面,对于类比示例,我严重依赖 jasmine-matchers对于额外的 jasmine 期望,例如 expect(array).toBeArrayOfObjects();expect(date).toBeDate();,它们基​​本上是,在某种程度上,可以手动编写类似的快捷方式。虽然,大多数新的期望函数都不是微不足道的,但在测试和提高可读性的同时解决了常见的日常断言问题。

在这种情况下,我可以清楚地看到使用另一个第三方扩展包的意义。

关于javascript - 哪个更好 : Using inbuilt Protractor/selenium functionalities OR Installing other node packages for protractor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27054322/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com