首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >JSF上的量角器

JSF上的量角器
EN

Stack Exchange QA用户
提问于 2015-08-10 18:50:39
回答 1查看 278关注 0票数 0

我需要点击一个自选菜单,并使用量角器js选择一个由primefaces组成的项目。

这是我的代码:

代码语言:javascript
代码运行次数:0
运行
复制
  it ('should pesquisa', function () {
    browser.get('localhost:8080/myapp/geral.xhtml');    

    var agruparPorFocus = element(protractor.By.xpath('//div[@id="form-pesquisa:consultarPor_panel"]/div/ul/li[4]')).click();
    var agruparPorInput = element(protractor.By.id('form-pesquisa:consultarPor_input'));

   });

我得到了一个错误:

代码语言:javascript
代码运行次数:0
运行
复制
ElementNotVisibleError: Element is not currently visible and so may not be interacted with
Build info: version: '2.45.0', revision: '5017cb8', time: '2015-02-26 23:59:50'
System info: host: 'Lilian-fx', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '3.13.0-53-generic', java.version: '1.8.0_45'
Driver info: driver.version: unknown
   Stacktrace:
     ElementNotVisibleError: Element is not currently visible and so may not be interacted with
Build info: version: '2.45.0', revision: '5017cb8', time: '2015-02-26 23:59:50'
System info: host: 'Lilian-fx', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '3.13.0-53-generic', java.version: '1.8.0_45'
Driver info: driver.version: unknown
    at Array.forEach (native)
Error
    at [object Object].<anonymous> (/home/lilian-fx/workspace/protractor/fwLite/spec.fwl.js:60:115)
    at runMicrotasksCallback (node.js:337:7)
From: Task: Asynchronous test function: it()
Error
    at [object Object].<anonymous> (/home/lilian-fx/workspace/protractor/fwLite/spec.fwl.js:49:2)
    at Object.<anonymous> (/home/lilian-fx/workspace/protractor/fwLite/spec.fwl.js:5:1)

Finished in 17.565 seconds
5 tests, 4 assertions, 1 failure

这就是HTML代码

代码语言:javascript
代码运行次数:0
运行
复制
<div class="ui-helper-hidden-accessible">
    <input id="form-pesquisa:consultarPor_focus" name="form-pesquisa:consultarPor_focus"
    autocomplete="off" type="text">
</div>
<div class="ui-helper-hidden-accessible">
    <select id="form-pesquisa:consultarPor_input" name="form-pesquisa:consultarPor_input"
    tabindex="-1" onchange="PrimeFaces.ab({s:'form-pesquisa:consultarPor',e:'change',p:'form-pesquisa:consultarPor'});">
        <option value="1">
            Meia Hora
        </option>
        <option value="2" selected="selected">
            Dia
        </option>
        <option value="3">
            Mês
        </option>
        <option value="4">
            Ano
        </option>
    </select>
</div>
<label style="width: 335px;" id="form-pesquisa:consultarPor_label" class="ui-selectonemenu-label ui-inputfield ui-corner-all">
    Dia
</label>
<div class="ui-selectonemenu-trigger ui-state-default ui-corner-right">
    <span class="ui-icon ui-icon-triangle-1-s ui-c">
    </span>
</div>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all"
data-label="Meia Hora">
    Meia Hora
</li>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all ui-state-highlight"
data-label="Dia">
    Dia
</li>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all"
data-label="Mês">
    Mês
</li>o
</li>o
</li>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all"
data-label="Ano">
    Ano
</li>

有人能帮忙吗?

EN

回答 1

Stack Exchange QA用户

回答已采纳

发布于 2015-08-11 02:10:56

问题日志的第一行本身告诉您正在发生什么。

代码语言:javascript
代码运行次数:0
运行
复制
ElementNotVisibleError: Element is not currently visible and so may not be interacted with

意味着量角器无法找到与之交互的元素。这可能是因为经过一段时间后,浏览器上的元素可能是可见的(可能是由于某些AJAX调用)。

我建议您实现一种等待,这样您就可以等待特定的时间,直到元素可见,然后访问它。

我从来没有使用过量角器,但一个快速搜索告诉我,您可以使用ExpectedConditions来实现这一点。

下面是一个很好的链接,它告诉您如何使用ExpectedConditions实现自定义等待(称为显式等待)。

票数 1
EN
页面原文内容由Stack Exchange QA提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://sqa.stackexchange.com/questions/14226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档