【问题标题】:cannot find css element in protractor在量角器中找不到 css 元素
【发布时间】:2018-06-13 08:42:15
【问题描述】:

如何使用以下 html 定位元素,我有 4 个开始按钮,每个按钮颜色不同。我尝试按类使用 css 并且无法正常工作。也没有唯一的 ID。请帮忙

开始

【问题讨论】:

  • 请贴一个html代码的例子,以及你到目前为止所尝试的。
  • 你知道按钮的顺序吗?如果是这样 var buttons=element.all(by.partialButtonText('Start'));跟着buttons.get(0, 1, 2, or 3,取决于).click()之类的东西应该做你想做的事。否则你可能需要按颜色过滤。

标签: protractor


【解决方案1】:

正如 Ben Mohorc 指出的那样,您确实需要给我们更多的信息才能继续。但是如果你说有多个开始按钮,但每种颜色只有一个,它应该看起来像这样。现在我假设他们所说的只是“开始”。如果这只是他们所说的一部分,请使用部分按钮文本。如果背景颜色不同,您可能也需要调整它。

var coloredButton = element.all(by.buttonText('Start')).filter(function(elem) {
    return elem.getCssValue('color').then(function(color) {
        return (color == '#00ff00')//fill in the desired color here, in this format
    })
});

然后根据您所说的在 colouredButton.first() 上执行您的操作,这将是唯一的。 有关颜色格式的更多信息,请参阅http://www.protractortest.org/#/api?view=webdriver.WebElement.prototype.getCssValue

【讨论】:

  • 在返回语句之前的最里面的正文中,您可能想说 console.log("color="+color);了解这 4 种颜色中的每一种是如何表示的。
  • 因为他们可能会像 'rgba(237, 28, 36, 1)' 一样回来
猜你喜欢
  • 2015-11-03
  • 2015-12-28
  • 1970-01-01
  • 2015-09-08
  • 1970-01-01
  • 1970-01-01
  • 2016-03-04
  • 2014-06-09
相关资源
最近更新 更多