我是Cypress的新手,我需要从我的应用程序中提取文本的动态部分。
<body>
<div>Hello World greeting number 9123</div>
</body>
在此示例中,我需要从div中提取9123,以便稍后在测试中使用。知道我该怎么做吗?
答案 0 :(得分:1)
首先,您可以尝试使用“调用”方法从full text
获取div
,并在javascript中使用RegExp
和match
从文本中获取数字:
cy.get('div').invoke('text')
.then((text)=>{
var fullText = text;
var pattern = /[0-9]+/g;
var number = fullText.match(pattern);
console.log(number);
})
答案 1 :(得分:0)
我必须做一些假设: 1.您要检索的号码始终在行尾 2.包含数字的句子始终以空格分隔。 如果这些假设是正确的,那么它应该起作用:
let divNumber = ''
cy.get('div')
.then(number => {
divNumber = number
.text()
.split(' ')
.pop()
cy.get('div')
.should('contain', divNumber)