アルパカの生態

@tototoshi

自己紹介

作ってるもの

Scala PHP

今日の内容

Web ブラウザをぐりぐりうごかす

注意

テストがしたいわけじゃありません

Web ブラウザを動かす

Selenium

Capybara

ScalaTest


implicit val webDriver: WebDriver = 
  new HtmlUnitDriver

val host = "http://localhost:9000/"

"The blog app home page" should "have the correct title" in {
  go to (host + "index.html")
  pageTitle should be ("Awesome Blog")
}

ScalaTest

問題

とにかくもっと手軽に動かして日常的に使いたい

もしかして、Web ブラウザを動かすためだけのスクリプト言語(DSL)があればよいのでは?
作ってみました

Alpaca

http://github.com/tototoshi/alpaca

Alpaca

世界最恐動物 アルパカ
名前の由来

Syntax

#!/usr/bin/env alpaca
visit("http://www.pixiv.net")
fill("#user", $USER)
fill("#pass", $PASSWORD)
submit()
            

Syntax

def login(user, name) {
  ...
}

var user = "tototoshi"
var password = "scalachankawaii"
login(user, password)
            

Syntax

require "util.alpaca"
            

Syntax

print $(date +%Y%m%d)
            

Demo

実装

  1. パーサコンビネータでパースして木構造を作る
  2. それを評価する

イメージ

ポイント

まとめ

告知