Javascript 如果其他条件在柏树
Javascript 如果其他条件在柏树,javascript,cypress,ui-automation,Javascript,Cypress,Ui Automation,.grid>languagefield是UI下拉列表的元素 取决于在此languagefield上选择的语言,它将执行某些操作 这就是我所拥有的,但Cypress没有达到if条件,而if(Lang=='American English') 非常感谢 调用('text')。然后((txt)=>{cy.log(txt)}) 更多信息 您可以编写如下内容: cy.get('.grid > languagefield').invoke('text').then((txt) => {
.grid>languagefield
是UI下拉列表的元素
取决于在此languagefield上选择的语言,它将执行某些操作
这就是我所拥有的,但Cypress没有达到if
条件,而if(Lang=='American English')
非常感谢
调用('text')。然后((txt)=>{cy.log(txt)})
更多信息
您可以编写如下内容:
cy.get('.grid > languagefield').invoke('text').then((txt) => {
if (txt.trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
cy.get('selctor').each(($el) => {
if ($el.text().trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
或者,如果要使用循环浏览下拉列表的元素,然后查找文本并执行某些操作,可以执行以下操作:
cy.get('.grid > languagefield').invoke('text').then((txt) => {
if (txt.trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
cy.get('selctor').each(($el) => {
if ($el.text().trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
你可以这样写:
cy.get('.grid > languagefield').invoke('text').then((txt) => {
if (txt.trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
cy.get('selctor').each(($el) => {
if ($el.text().trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
或者,如果要使用循环浏览下拉列表的元素,然后查找文本并执行某些操作,可以执行以下操作:
cy.get('.grid > languagefield').invoke('text').then((txt) => {
if (txt.trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
cy.get('selctor').each(($el) => {
if ($el.text().trim() == 'American English') {
//Do Something
} else {
//Do Something
}
})
如果配置文件部分可见,这将获得下拉列表的文本
const language = Cypress.$('div[name="language"]') // parent div for language selector
.children().first() // first child is selected text
.text()
console.log(language); // American English
Cypress别名的等效值
const languageDateFormats = {
'American English': DateUS,
'British English': DateUK,
// other langauges
}
cy.visit('/profile');
cy.get('div[name="language"]') // parent div for language selector
.children().first() // first child is selected text
.invoke('text')
.as('language')
cy.visit('/timeline');
cy.get('@language').then(language => {
const dateFormat = languageDateFormats[language];
// test the timeline date format
})
如果配置文件部分可见,这将获得下拉列表的文本
const language = Cypress.$('div[name="language"]') // parent div for language selector
.children().first() // first child is selected text
.text()
console.log(language); // American English
Cypress别名的等效值
const languageDateFormats = {
'American English': DateUS,
'British English': DateUK,
// other langauges
}
cy.visit('/profile');
cy.get('div[name="language"]') // parent div for language selector
.children().first() // first child is selected text
.invoke('text')
.as('language')
cy.visit('/timeline');
cy.get('@language').then(language => {
const dateFormat = languageDateFormats[language];
// test the timeline date format
})
这就是你要找的吗?这就是你要找的吗?谢谢你的回答,但是他们都跳过IF条件,直接转到ELSE条件。for.invoke('text')。它跳过.then(txt)&IF并转到ELSE。每人$el。跳过IF并转到ELSE。该语言目前设置为美国英语。你知道吗?谢谢,可能还有一些额外的空间。我已经更新了我的答案并添加了
trim()
,以删除不需要的空间。你现在可以试试吗?嗨,谢谢你的代码抱歉,但是他们都跳过了如果条件……你的网站是一个公共应用程序,那么我可以看看。或者类似的例子也可以?抱歉,这不是公开的,但是如果你让我知道你需要什么,我可以发送一个屏幕截图或者你需要的东西?谢谢你的回答,但是他们都跳过if条件,直接转到ELSE条件。for.invoke('text')。它跳过.then(txt)&IF并转到ELSE。每人$el。跳过IF并转到ELSE。该语言目前设置为美国英语。你知道吗?谢谢,可能还有一些额外的空间。我已经更新了我的答案并添加了trim()
,以删除不需要的空间。你现在可以试试吗?嗨,谢谢你的代码抱歉,但是他们都跳过了如果条件……你的网站是一个公共应用程序,那么我可以看看。或者一个类似的例子也可以吗?抱歉,这不是公开的,但如果你让我知道你需要什么,我可以发送一个截图或你需要的东西?