【问题标题】:Cypress cy.type({enter} fails when used multiple times within for loopCypress cy.type({enter} 在 for 循环中多次使用时失败
【发布时间】:2021-04-13 12:57:40
【问题描述】:

当我在 for 循环中使用它在文本字段中输入多个数据时,cypress cy.type({enter} 失败。如果我必须只输入一个值,那么在这种情况下有效。

请为此建议我一些解决方案。这是我的代码:-

值 = 猫、蝙蝠、老鼠、狐狸

enterMultipleValue(value) {
        var val = value;
        var val_str = val.split(",");
        for (var i = 0; i < val_str.length; i++) {
            cy.get('input[mat-option="text"]')
                .type(val_str[i]+"{enter}", { force: true });
                // .wait(3000)
                // .type('{enter}');
        }
 }

【问题讨论】:

    标签: cypress enter


    【解决方案1】:

    代码运行正常,但你想看什么?

    const value = "cat, bat, mice, fox"
    const vals = value.split(",");
    for (var i = 0; i < val_str.length; i++) {
      cy.get('input[mat-option="text"]')
        .type(val_str[i]+"{enter}")
        .wait(3000)
        .type('{enter}');
    }
    

    这会在输入框中显示“cat bat mice fox”。

    如果您想一次看到一个,请添加.clear() 命令

    const value = "cat, bat, mice, fox"
    const vals = value.split(",");
    for (var i = 0; i < val_str.length; i++) {
      cy.get('input[mat-option="text"]')
        .type(val_str[i]+"{enter}")
        .wait(3000)
        .clear();
    }
    

    每个显示 3 秒,然后显示下一个,依此类推。

    但这是一个选择框吗? mat-option 用于 Angular 材质选择。您是否尝试进行多选?

    【讨论】:

    • 其实不是mat-option。这只是举例。这是一个文本框,用于输入一些值并按回车键进行搜索。很奇怪,当你不使用 for 循环时它可以工作。比如,当你只需要输入一个值时。我只使用 for 循环输入多个值。
    • 那么,您到底想看到什么?看起来它确实有效。
    猜你喜欢
    • 2019-08-22
    • 1970-01-01
    • 2018-12-12
    • 2020-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-15
    • 2017-02-03
    相关资源
    最近更新 更多