gpt4 book ai didi

javascript - 如何在 Protractor 中比较两个窗口之间的两个元素的值?

转载 作者:行者123 更新时间:2023-11-27 23:37:02 25 4
gpt4 key购买 nike

我需要保存“$$('[title="Ir al documento"]').first().getText();”的值用于在另一个窗口中进行比较。

  it('spec', function () {

var text;

$$('#links-list a').first().click().then(function () {
browser.driver.getAllWindowHandles().then(function (handles) {
browser.driver.switchTo().window(handles[1]).then(function () {

browser.wait(EC.visibilityOf($('#introBienvenida .boton')), 5000);
$('#introBienvenida .boton').click();

element(by.id("texto")).sendKeys('texto refundido');
element(by.id("buttonSearch")).click();

text = $$('[title="Ir al documento"]').first().getText(); // I need save to compare this value.
$$('[title="Ir al documento"]').first().click();

});
browser.driver.close();
browser.driver.switchTo().window(handles[0]); // Back again.
});
});

expect($('#adDoc0 .AD-objetivo').getText()).toEqual(text); // I need assert the content of text

});

编辑:

我需要的是比较句柄1的窗口中的Element的值和句柄0的窗口中的Element的值。

首先,我必须单击句柄 0 的窗口元素,然后单击句柄 1 的窗口中的文档并获得一个值,之后我必须返回句柄 0 的窗口以获取值并与句柄为 1 的窗口的值。

最佳答案

Protractor 是根据 promise 和回调的原则开发的。 getText() 函数返回带有文本值的 Promise。有很多方法可以处理这种情况,

  1. 期望它在 getText() 函数的 Promise 内。 (这个已经作为@user2020347的答案发布了)。
  2. 使用全局变量保存它,然后在您需要的函数之外使用它 -

    var text;
    $$('#links-list a').first().click().then(function () {
    //switch to window 1
    $$('[title="Ir al documento"]').first().getText().then(function(windowOneText){
    text = windowOneText;
    });
    //close the windows to go back to first window
    });
    expect($('#adDoc0 .AD-objetivo').getText()).toEqual(text);
  3. 将其作为参数传递给下一个回调函数 -

    var text;
    $$('#links-list a').first().click().then(function () {
    //switch to window 1
    $$('[title="Ir al documento"]').first().getText().then(function(windowOneText){
    text = windowOneText;
    });
    //close the windows to go back to first window
    return text;
    }).then(function(argText){
    expect($('#adDoc0 .AD-objetivo').getText()).toEqual(argText);
    });

希望有帮助。

关于javascript - 如何在 Protractor 中比较两个窗口之间的两个元素的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34047721/

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