gatling

自分でソース作成

ブラウザ記憶してソース

プロダクト

Selenium

Xpath

CSSSelector

JSoupでもほぼ等価なのでこちらを推奨

div[class*='_middle_']クラス名部分一致
div[class^='prefix']クラス名前方一致
div[class$='_suffix']クラス名後方一致

カスタマイズ属性で絞る

div[data-custom='xxxx']通常の属性ならhrefなりに変えれば良い

一つに絞れない時はループで回して強引に

       List<WebElement> webElementList =driver.findElements(By.cssSelector("div[class^='prefix_']"));
       WebElement login = webElementList.stream().filter(webElement -> webElement.getText().contains("ログイン")).findFirst().get();
       login.click();

リンクのテキストで取得

By.linkText("hogehoge")

JSoup

クラスで複数取得Elements masthead = doc.select("div.masthead");
クラスで単数取得Element masthead = doc.select("div.masthead").first();
階層構造で複数取得Elements resultLinks = doc.select("h3.r > a"); // direct a after h3
ファイルから読み込みDocument doc = Jsoup.parse(new File("/tmp/input.html"), "UTF-8", "http://example.com/");

HTMLUnit

HtmlElement input = page.getHtmlElementById(id);
input.setAttribute("value", value);
webClient.getPage("file:///Users/

XPath

//a[@id='idname']AタグのIDで抽出
//a[@href='/login.html']Aタグのリンク先で抽出
//input[@type='submit']type=submitのタグを取得
//input[@value='検索']検索のinputタグを取得
//td[contains(.,'検索したい文字列')]検索したい文字列が含まれているものを取得
img[alt='ログアウト']altで検索
//a[text()='ログアウト']"Aのテキストで検索
final HtmlDivision div = (HtmlDivision) page.getByXPath("//div[@name='John']").get(0);無理やりキャスト

xpathの検証

chromeのコンソールで $x('xpath')でOK!

css selectorの検証

chromeのコンソールで $('div div div p')

htmlunit

主にPHPバッチで利用

クラスやID指定div[class=tbl-pc]
親子関係table tbody tr td

Selenium(java ラッパーで Selenide がある)

Macでwebdriver

成功バージョン

brew update
brew install chromedriver
brew tap homebrew/cask && brew cask install chromedriver

C:\Users\xxx\AppData\Local\Microsoft\WindowsApps

失敗バージョン

brew update
brew install selenium-server-standalone
brew install chromedriver

だとだめ!jarを直接実行する。

java -Dwebdriver.chrome.bin="/Applications/Google Chrome.app" -Dwebdriver.chrome.drir=/usr/local/bin/chromedriver -jar selenium-server-standalone-3.4.0.jar

しかし上記のchromedriverさえインストールできればあとはサーバー不要なのであった!

JMeter

Geb(groovy)


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS