当前位置: 首页 > 面试题库 >

count()与量角器中的长度

许彭祖
2023-03-14
问题内容

根据文档,有两种方法可以获取ElementArrayFinderelement.all()调用结果)内部有多少个元素:

  • $$(".myclass").length,记录在这里:

…该数组length等于length由找到的元素的ElementArrayFinder,每个结果代表对该元素执行操作的结果。

  • $$(".myclass").count(),记录在这里:

计算表示的元素数量ElementArrayFinder

这两种方法有什么区别,应首选哪一种?


问题答案:

$$(".myclass").length

需要解决诺言以正确获取元素的长度。

// WORK
$$(".myclass").then(function(items){
  items.length;
});

// DOES NOT WORK
$$(".myclass").length;

$$(".myclass").count()

一个包装器,$$('.myclass').length它本身就是一个承诺,不需要解决承诺,例如.length

$$(".myclass").count();

哪一个应该是首选?

除非在进行定位$$(".myclass").then(function(items){...})参与时有一些复杂的业务,否则items.length它将提供更好的性能。

否则$$(".myclass").count()应始终使用。



 类似资料:
  • 问题内容: 在量角器中,基本上有3种方法可以检查元素是否存在: 这些选项是否等效且可互换,通常应首选哪一种? 问题答案: 所有功能都以相似的方式存在细微的差异。这是我发现的一些差异- -- 是的扩展,因此在执行任何操作之前等待Angular解决。 它在is和or not 时起作用。如果使用指定的元素返回了多个元素,则检查第一个元素是否在DOM中。不接受任何参数作为输入。 最适合与Angular页面

  • 问题内容: 假设表中有一个主字段“ id”(例如速度等),以下查询之间是否有区别? 与 问题答案: 在www.mysqlperformanceblog.com上查看Count(*)与Count(col),他们讨论了有关各种“ col”类型(是否为NULL,是否不带索引,带索引等)的该主题,以及针对MyISAM和InnoDB表的主题。

  • 问题内容: 我试图只是运行包含在Internet Explorer 上的量角器中的示例测试,并且不会太远:( 我尝试过将浏览器名称更改为“ internet Explorer”和 “ version”:11,并且我已注释掉directConnect(因为它对此有所抱怨 ) 我得到的错误是… WebDriverError:必须通过 webdriver.ie.driver系统属性设置驱动程序可执行文件

  • 我试图遵循量角器官方网站上的量角器教程,但我甚至无法完成步骤0。 我在用量角器 之后,我一直在遵循教程的第0步。我有配置。js文件和test-spec.js文件如下: 配置js公司 测试规范js 当我运行protector

  • 问题内容: 我最近正在浏览量角器API,并注意到该方法: 调度命令以在webdriver的控制流上下文中执行自定义功能。 我想将此功能添加到我的工具箱中,但是我不确定我完全了解何时可以在实践中使用它,以及它涵盖哪些用例? 问题答案: 量角器的工作方式是有一个内部队列,在其中设置函数的顺序。因此,如果您要在测试中的某个地方调用某个函数而不告诉量角器,则该函数将不在队列中,并且该函数的实际执行可能随时

  • 问题内容: 我见过很多次有人建议使用它: 但是我不明白为什么我们需要它? 问题答案: 一个简单的答案是,它使量角器不必等待Angular承诺,例如来自或解决的Angular承诺,如果您在或期间(例如,“正在加载”消息)测试行为或测试非Angular承诺,角度站点或页面,例如单独的登录页面。 例如,要测试在请求期间设置加载消息的按钮,可以在获取元素时将其设置为+检查其内容 一个更复杂的答案是将其设置