Protractor: 分度器のルートdiv要素内に存在する子div要素の数を取得する方法

作成日 2014年02月25日  ·  3コメント  ·  ソース: angular/protractor

Protractorを使用してWebアプリケーションプロジェクトをテストしています。 私が書いたいくつかのテストケースは正常に実行されていますが、親のdiv要素内に存在するdiv要素の数を数えようとすると問題が発生します。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 &amp; system.  &nbsp;Skicka in din ansöka
    </p>
    <p>&nbsp;</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://likipe.se/kontakt/");
        var element = driver.findElement(protractor.By.css('.clearfix .col206'));
        expect(element.length).toEqual(21);

    });

ありがとう
Utpal

最も参考になるコメント

サブdiv要素にクラスがない場合はどうなりますか? 次の状況で子div要素の数をどのように数えることができますか?

<div class="row clearfix">
    <div data-selectable>1</div>
    <div data-selectable>2</div>
    <div data-selectable>3</div>
    <div data-selectable>4</div>
    <div data-selectable>5</div>
    <div data-selectable>6</div>
</div>

全てのコメント3件

私は最新の分度器を使用しているので、 browser.driver代わりにdriver browser.driver使用しています。これは、必要なことを実行するコードです。

it('should get correct count of contact names', function() {
    browser.driver.get("http://likipe.se/kontakt/");
    browser.driver.findElements(by.css('.clearfix .col206')).
        then(function(elems) {
            expect(elems.length).toEqual(21);
        }
    );
});                

どうもありがとう。 問題を解決します。

サブdiv要素にクラスがない場合はどうなりますか? 次の状況で子div要素の数をどのように数えることができますか?

<div class="row clearfix">
    <div data-selectable>1</div>
    <div data-selectable>2</div>
    <div data-selectable>3</div>
    <div data-selectable>4</div>
    <div data-selectable>5</div>
    <div data-selectable>6</div>
</div>
このページは役に立ちましたか?
0 / 5 - 0 評価