Protractor 判断元素是否已成功加载

发布于:2024-08-23 ⋅ 阅读:(96) ⋅ 点赞:(0)

判断元素是否已成功加载。这些方法可以根据不同的场景来选择使用:

  1. presenceOf
    用途: 判断元素是否存在于 DOM 中,不要求元素必须可见。
    代码示例:
const elem = element(by.css('.your-element'));
await browser.wait(protractor.ExpectedConditions.presenceOf(elem), 10000);
  1. visibilityOf
    用途: 判断元素是否存在于 DOM 中且可见,意思是 display 不为 none,visibility 不为 hidden,opacity 不为 0。
    代码示例:
const elem = element(by.css('.your-element'));
await browser.wait(protractor.ExpectedConditions.visibilityOf(elem), 10000);
  1. invisibilityOf
    用途: 判断元素是否不可见或从 DOM 中移除。适用于等待某个元素消失的情况。
    代码示例:
const elem = element(by.css('.your-element'));
await browser.wait(protractor.ExpectedConditions.invisibilityOf(elem), 10000);
  1. elementToBeClickable
    用途: 判断元素是否存在于 DOM 中并且可以点击。即元素可见且启用。
    代码示例:
const elem = element(by.css('.your-button'));
await browser.wait(protractor.ExpectedConditions.elementToBeClickable(elem), 10000);
  1. stalenessOf
    用途: 判断一个元素是否从 DOM 中移除或变为不可用。通常用于等待元素在 DOM 中消失。
    代码示例:
const elem = element(by.css('.your-element'));
await browser.wait(protractor.ExpectedConditions.stalenessOf(elem), 10000);
  1. textToBePresentInElement
    用途: 判断某个元素中是否存在指定的文本。适用于动态加载内容时验证内容是否加载完成。
    代码示例:
const elem = element(by.css('.your-element'));
await browser.wait(protractor.ExpectedConditions.textToBePresentInElement(elem, 'Expected Text'), 10000);
  1. titleIs
    用途: 判断当前页面的标题是否等于指定值。
    代码示例:
await browser.wait(protractor.ExpectedConditions.titleIs('Expected Title'), 10000);
  1. urlContains
    用途: 判断当前页面的 URL 是否包含指定的子串。
    代码示例:
await browser.wait(protractor.ExpectedConditions.urlContains('expected-substring'), 10000);
  1. urlIs
    用途: 判断当前页面的 URL 是否等于指定值。
    代码示例:
await browser.wait(protractor.ExpectedConditions.urlIs('http://example.com/expected-url'), 10000);
  1. elementToBeSelected
    用途: 判断元素是否被选中,如复选框或单选按钮。
    代码示例:
const elem = element(by.css('.your-checkbox'));
await browser.wait(protractor.ExpectedConditions.elementToBeSelected(elem), 10000);

这些方法可以结合使用,根据具体场景选择适合的方法来判断元素是否加载成功。例如,如果你只关心元素是否存在于 DOM 中,可以使用 presenceOf;如果需要确保元素不仅存在还需要可见,则可以使用 visibilityOf


网站公告

今日签到

点亮在社区的每一天
去签到