我正在用cypress做E2E测试。我必须计算表中的行数,每种情况都不同。
在正常的javascript中,我写这个只是为了得到列的总行数
document.getElementById('hometable').getElementsByTagName("tr").length-1
不幸的是,在柏树我得到以下错误:
document.getElementById('hometable').getElementsByTagName("tr").length-1
VM298:1 Uncaught TypeError: Cannot read property 'getElementsByTagName' of null
at <anonymous>:1:38
(anonymous) @ VM298:1
我试着这样数数但一无所获
cy.get('hometable').find('tr').each(function(row, i){
expect(i)
})
$Chainer {userInvocationStack: "", specWindow: Window, chainerId: "chainer99", firstCall: false, useInitialStack: false}
chainerId: "chainer99"
firstCall: false
specWindow: Window {parent: Window, opener: null, top: Window, length: 0, frames: Window, …}
useInitialStack: false
userInvocationStack: ""
__proto__: Object
我不知道它从哪里返回了行数
我认为您的方法是正确的,您可以使用each()
。您还可以向每个列表添加一个参数,这将为您提供行数的计数。您可以为每个()检查cypress文档。确保定位器正确无误。
cy.get('#hometable > tr').each(function(row, i, list) {}).then(function(list) {
//list will give you the count of tr
}
我试图计算select元素中的选项数,以及DOM中某个类的元素数。 我需要比较这两个总数来得出赛普拉斯的断言。 我可以选择所需的选项,并使用each()对它们进行迭代,然后以这种方式递增一个计数器。然而,它是异步的,也是一个笨拙的解决方案。我确信我的cy.get()生成的对象有一个length属性,我就是看不懂它。 这是我期望的事情之一。它将未定义的日志记录到控制台。 我知道我的别名很好,并且我的
我开始学柏树了。我有一个4行表(有一类可更新的)。我可以这样验证行数: 这很好,但看起来很尴尬,因为我只想计算长度,并不需要访问行中的内容,我假设做一件事比做4件事要快。 如果我记录所选内容(不确定还可以叫它什么): 它以的形式出现,我不太确定如何解构它,这向我表明我完全错了。 如果我尝试: 我得到的 如果我尝试: 我得到 。我不知道从这里去哪里。这似乎是一件非常常见的事情。
问题内容: 例如 : 如何使用mysql计数此表的列? 问题答案:
问题内容: 我有这样的台词,我想知道我实际上有几行… 有没有一种方法可以使用linux命令对它们进行计数? 问题答案: 用途: 这将输出行数: 或者,要从结果中省略,请使用: 您还可以通过管道将数据发送到:
问题内容: 列表理解和映射计算都应该(至少在理论上)相对容易并行化:列表理解内的每个计算都可以独立于所有其他元素的计算来完成。例如在表达式中 每个x * x计算都可以(至少在理论上)并行完成。 我的问题是:是否有任何Python模块/ Python实施/ Python编程技巧可并行化列表理解计算(以便使用所有16/32 / …内核或将计算分布在计算机网格或在云上)? 问题答案: 正如Ken所说
我正在尝试使用Cypress存根一个模块。这是我到目前为止尝试过的,但不起作用。 这是我的组件/页面的简短版本 这是我定制的钩子的样子 下面是getData的外观 方法通过db.js(实际上是db/index.js)公开 我正在尝试存根getData。js使e2e测试更加一致。这就是我所做的。 上面的存根不起作用。运行测试时,对外部服务的API调用仍在进行。文档本身让我推断我应该这样写,但它不起作