首页 > 解决方案 > TestCafe visibilityCheck 不等待元素出现

问题描述

我试图让 TestCafe 等待一个元素出现在 dom 中。目前我正在使用 { visibilityCheck: true } 但它似乎没有做任何事情,测试将超时并被视为失败。

目标:

  1. 转到页面
  2. 等待 searchIconElement 加载

代码:

fixture`Library /all`.page(page.libraryScreen).beforeEach(async t => {
  await t.useRole(page.adminUser);
});

test('Search Bar', async t => {
  const searchIcon = Selector('div').withAttribute('class', 'CampaignsPage-fab1');
  const searchIconElement = searchIcon.with({ visibilityCheck: true })();
  const microAppNameInput = Selector('input').withAttribute('placeholder', 'Search');
  const microAppTitle = Selector('div').withAttribute('class', 'SetCard-title ').innerText;
  
  await t
    .click(searchIconElement)
    .typeText(microAppNameInput, testMicroAppTitle)
    .expect(microAppTitle)
    .eql(testMicroAppTitle);
});

标签: javascripttestingautomated-testse2e-testingtestcafe

解决方案


尝试添加超时

const searchIconElement = searchIcon.with({ visibilityCheck: true }).with({ timeout: 10000 });

推荐阅读