LoginSignup
6
1

More than 5 years have passed since last update.

Javascriptでselenium-webdriverを使ったテスト(メモ)

Last updated at Posted at 2018-06-19

はじめに

自分がnode.js環境でwebdriverを使ってテスト書きたいなあと思って調べてみると、意外とJSの記事が少なくて、また触る機会がありそうなのでとりあえずメモ的な形でいくつか残そうかと思い、記事を作りました。
まず、selenium-webdriverをimportしました。

webdriver = require('selenium-webdriver')
{By} = webdriver

要素を見つける

classとかテキストから見つけるのが一般的な感じがします。

elems ={
 hoge: By.css('.hogeClass') #hogeClassというクラスを見つける
 hogehoge: By.xpath("//div[text()='hogehoge']") #hogehogeというテキストを持つdivを見つける
}

要素の確認

@driver.findElement(elems.hoge)

要素をクリックする

@driver.findElement(elems.hoge).click()

Inputに書き込んでENTER

@driver.findElement(elems.hoge).sendKeys('name', webdriver.Key.ENTER)

マウスを要素の上まで動かす

@driver.actions().mouseMove(elems.hoge).perform()

ドラッグアンドドロップ

@driver.actions().dragAndDrop(elems.hoge, {x: 150, y: 0}).perform()

要素を数える

(これはあまり自信がない)

@driver.findElements(elems.hoge).then (els) => {
  @driver.findElement(By.xpath("//a[text()='hogehoge']")).findElement(By.tagName('hoge')).getText().then (text) => {
    return els.length.toString()
  }
}
6
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1