Utp*_*pal 14 selenium css-selectors angularjs selenium-webdriver protractor
我正在使用Protractor测试Web应用程序项目.我写的几个测试用例运行正常,但是当我尝试计算父div元素中存在的div元素的数量时,我遇到了困难.我的div的结构如下所示
  <div class="page-kontact-main">
  <div class="buttons contact_page">
    <a href="http://mysite.se/om-oss/" class="btn btn-default button">Om oss</a>
    <a href="http://mysite.se/offert-3/" class="btn btn-default button">Offert</a>
    <a href="http://mysite.se/tjanster/" class="btn btn-default button">Våra Tjänster</a>
  </div>
  <div class="row kontact-title">
    <h2>Våra medarbetare</h2>
    <p>
      Test desc <span class="s47jd228h2" id="s47jd228h2_5">med</span> passion och engagemang för it & system.   Skicka in din ansöka
    </p>
    <p> </p>
  </div>
  <div class="row clearfix">
    <div class="col206"></div>
    <div class="col206"></div>
    <div class="col206"></div>
    <div class="col206"></div>
    <div class="col206"> </div>
    <div class="col206"></div>
    <div class="col206"></div>
    <div class="col206"> </div>
  </div>
</div>
我已经编写了如下所示的测试用例,但它没有运行错误,预计未定义为等于21.
it('Getting the count of contact names ', function() {
        driver.get("http://mysite.se/kontakt/");
        var element = driver.findElement(protractor.By.css('.clearfix .col206'));
        expect(element.length).toEqual(21);
    });
谢谢Utpal
Bas*_*dan 24
你应该使用element.all和count()而不是length:
it('Getting the count of contact names ', function() {
    driver.get("http://mysite.se/kontakt/");
    var elements = element.all(protractor.By.css('.clearfix .col206'));
    expect(elements.count()).toEqual(21);
});
$并且$$等同于element.all和by.css,这样你就可以使用下面的代码
it('Getting the count of contact names ', function() {
    driver.get("http://mysite.se/kontakt/");
    var elements = $$('.clearfix .col206'));
    expect(elements.count()).toEqual(21);
});
| 归档时间: | 
 | 
| 查看次数: | 15296 次 | 
| 最近记录: |