等待直到元素具有特定文本

时间:2019-05-29 09:11:52

标签: testcafe

使用TestCafe上传图像后,服务器将进行一些处理。这次,网站上的标签将带有“进行中”标签。服务器准备就绪后,它将更改为日期。但是,我想告诉Testcafe脚本等待,直到标签不再是“ Inporgress”为止。 为此,我做到了:

    const DeliveryStatus = {
        element: Selector('div.cl-asset-published').with({timeout: 70000}),
        delivered: 'Inprogress'
    };

在脚本中我有

await t
     .expect(DeliveryStatus.element).notContains(DeliveryStatus.delivered, { timeout: 70000 })

但是此步骤失败。我收到的消息是“ AssertionError:被测试的对象必须是数组,映射,对象,集合,字符串或弱集,但提供了功能”,但我不知道为什么。

是否有解决此问题的建议?

1 个答案:

答案 0 :(得分:1)

您将元素选择器传递给expect函数,该选择器将返回元素但不返回字符串。尝试改为使用元素的innerText属性,如下所示:

await t
 .expect(DeliveryStatus.element.innerText)
 .notContains(DeliveryStatus.delivered, { timeout: 70000 })
相关问题