要素がDOMに存在するかどうかを判断します。

isPresent()コマンドは、要素が存在するまで(指定されたタイムアウトまで)自動的に待機します。要素が見つからない場合は、エラーがスローされ、テストが失敗します。 selector引数をオブジェクトとして指定し、suppressNotFoundErrors = trueオプションを渡すことで、要素が見つからないエラーを抑制できます。

NightwatchでDOM要素を操作する方法の詳細については、DOM要素の検索と操作ガイドページを参照してください。

使用方法

                    .isPresent(selector, [callback])
                
                    .isPresent(using, selector, [callback])
                

module.exports = {
  demoTest(browser) {
    browser.isPresent('#main ul li a.first', function(result) {
      this.assert.equal(typeof result, "object");
      this.assert.equal(result.status, 0);
      this.assert.equal(result.value, true);
    });

    // with explicit locate strategy
    browser.isPresent('css selector', '#main ul li a.first');

    // with selector object - see https://nightwatch.dokyumento.jp/guide/writing-tests/finding-interacting-with-dom-elements.html#postdoc-element-properties
    browser.isPresent({
      selector: '#main ul li a',
      index: 1,
    });

    browser.isPresent({
      selector: '#main ul li a.first',
      timeout: 2000 // overwrite the default timeout (in ms) to check if the element is present
    });
  },

  demoTestAsync: async function(browser) {
    const result = await browser.isPresent('#main ul li a.first');
    console.log('isPresent result', result);
  }
}

パラメータ

名前 タイプ 説明
using
オプション
文字列

使用するロケーター戦略。 W3C Webdriver - ロケーター戦略を参照してください。

selector 文字列 | オブジェクト

要素を見つけるために使用されるセレクター(CSS/Xpath)。文字列、または要素のプロパティを指定するオブジェクトを指定できます。

callback 関数

結果値とともに呼び出されるコールバック関数。