IT業界LT小規模発表勉強大会でXvfb + Seleniumについて発表してきた
2016年06月04日 22時36分
「発表慣れ」する為に発表者として「IT業界LT小規模発表勉強大会」に参加してきました。
http://connpass.com/event/31359/
Lravel Meetup Tokyo Vol.6でのLTでは、緊張から上手く喋れず、しかも帰宅してから緊張のあまり一晩中腹痛に襲われるという散々な結果に終わりました。
緊張はまぁ相変わらずでしたが、少なくとも前回よりは上手く喋れた…と思います。
上手く喋れた理由としては
* 前回よりも人が少ない(20名程度?
* LT発表者が参加者の過半数
* 聴者と距離感が近かった
というような要因があった気がします。
発表した内容はSelenium勉強会で話題に出てたXvfb + Selenium WebDriverについてです。
http://www.crossl.net/slides/itlt/
Selenium勉強会でのじゃんけん大会で勝ち進んで本を貰った手前、恩送りにもこの内容にしたかったのでこれに決めました。
会場にはSeleniumという単語を初めて聞く人が半数近くいたので、興味を持ってくれた人が一人でもいたのなら嬉しいですね。
他の方の発表は、バリエーションに富んでいてそういうことまで考えるんだなぁということが幾つもありました。
技術戦略フレームワークとかリトゲンシュタインとか今まで通り生活していると間違いなく接点ないですからね、とても面白かったです。
前回同様、発表のプレッシャーで話がなかなか入ってこなかったのが勿体なかったですが、、
場を設けていただいたこうこさん、発表者の方々、参加者の方々、貴重な場をありがとうございました。
sql server management studio 2014 日本語版のダウンロード先
2016年04月26日 00時56分
PCのセットアップでsql server management studioをインストールした時にハマったのでメモ。
sql server management studioのダウンロードページ( https://msdn.microsoft.com/ja-jp/library/mt238290.aspx )からstableな2014をダウンロードしようとPrevious releasesのリンク先からインストーラをダウンロードしてインストールしてみたら英語版だった。
よく見たらファイル名にENUて含まれていた、、結構時間かかるしアンインストールしてもファイルやらレジストリやらは色々と残るのでこの失敗は悔しい。
日本語版はsql server2014 Expressに含まれているのでそちらからダウンロードする。
https://www.microsoft.com/ja-jp/download/details.aspx?id=42299
ダウンロードをクリックした後に、ExpressAdv (32|64)BIT\SQLEXPRADV_x(86|64)_JPN.exeにチェックを付けてダウンロード。
Vagrantのboxをバージョンを指定して他のPCに取り込む手順
2016年03月27日 22時45分
これ叩くと大体8時間待たされる。
|
vagrant box add laravel/homestead |
ので他のPCにインポートしたboxを移植したい時の手順。
1. add済みの移行元PCでboxエクスポート
|
// カレントディレクトリにpackage.boxができる vagrant package |
2. 移行先PCでboxをインポートするためのmetadata.jsonを作成する
laravel/homestead 0.4.2の例。vmwareの場合とかは該当箇所を変更する。
package.boxと同じディレクトリに作成する。
|
{ "name": "laravel/homestead", "provider": "virtualbox", "versions": [ { "version": "0.4.2", "providers": [ { "name": "virtualbox", "url": "./package.box" } ] } ] } |
3. metadata.jsonをインポートする
boxをインポートせずにmetadata.jsonをインポートする。
|
vagrant box add metadata.json |
box名を気にしない場合はこんな手順踏まなくてもいいのだが、
名前を揃える場合はバージョンも揃えないとboxのアップデートが走ってしまって結局は8時間待たされてしまうことになるので注意。
参考リンク
第3回 日本Seleniumユーザーコミュニティ勉強会に参加してきた
2016年02月06日 23時16分
第3回 日本Seleniumユーザーコミュニティ勉強会に参加してきました。
前回も参加したんですがこの勉強会はとても楽しいです、その記事はこちらです。
第2回 日本Seleniumユーザーコミュニティ勉強会に参加してきた
前回って2014年10月だったんですね、月日が経つのは早い。
一言コメント。
- 「Seleniumデザインパターン & ベストプラクティス」の勘所 / 太田健一郎さん & 玉川紘子さん (SHIFT)
-
去年、オライリーから出版された本の内容に沿って色々なデザインパターンを紹介。
抽象化を進めていくためにはIDEのサポートがないと厳しいということを忘れてはいけない!
- 「Selenium実践入門」で学ぶテスト自動化の世界 / 伊藤望さん (TRIDENT)
-
本は「Seleniumの使い方にとどまらない、より実践的な内容を」ということでCIや運用など様々な分野を網羅している! Gebの章もあるとな
- E2Eテストフレームワークを使用したテスト自動化事例 / 太田 邦昭さん(ヤフー株式会社)
-
フレームワークの選定から実際の運用に至るまでの流れを解説していただきました。
紹介していただいた例ではNightwatch.jsが採用されていました。
ヘッドレス ブラウザはPhantomJSは導入を検討していたが不具合が多く、最終的には見送ってXVfbで普通のブラウザを仮想デスクトップで使うようにして対応した。
- STFとAppiumをもちいたAndroidアプリの自動テスト / 平田敏之さん (DeNA)
-
畑違いだったので自動でAndroidアプリを操作している動画が新鮮で心がときめいた。
STF / Smartphone Test Farm
Appium ServerはDockerで起動と…
- Azureを使って手軽にブラウザテストをはじめよう / 小島直也さん
-
エビデンス!エビデンス! Excelスクショの辛み…
- Gebで実践入門するために / PoohSunnyさん (株式会社リクルートジョブズ)
-
とりあえず動かそう精神大事。
Gebの環境構築はGradleやGroovyなど普段使ってない人だとハードルが高いかもしれないのでその場合は本家のexampleを使用しよう。
https://github.com/geb/geb-example-gradle
- エビデンス取るのも自動化したい! / 桑原雄一さん (Monocrea)
-
自動で生成されるエビデンスの操作した要素に印をつけて画像化しているのを開くと会場から歓声が…みなさん苦労されているようです。
- Seleniumアンチパターン / 宮田淳平さん (サイボウズ株式会社)
-
何でもかんでもSeleniumでやればいいってもんでもない!
全ブラウザのクロスブラウザテストなんて無理。
過去データからブラウザ依存のバグでクリティカルなものは無かったのでブラウザはChromeに絞った。
ブラウザを絞ることでメンテ・運用できるようになった!これは重要。
- 薄っすい話百八式 / 戸田広さん
-
「Selenium実践入門」でとあるポート番号はハトヤの番号とか音声合成してエラー通知してもらうとか、、恐ろしい
仕事にもユーモアが必要!
ということでボリューム盛り沢山で楽しかったです。
また、じゃんけん大会で勝ち残りSelenium実践入門をいただきました。
無料でこんな勉強会まで開いていただいて本までいただけるなんて、、、なんか気が引けてしまいますがしっかり勉強してブログなどでSeleniumを広めることで恩返しできるように精進します。
オライリー本に関しては購入済みでした。こちらも楽しい本ですよ。
React+Babel+WebpackでHello World
2016年01月11日 19時16分
流れが速すぎてWebの情報がすぐ古くなる界隈なので環境構築に手こずったのでメモ。
オフィシャル見るのが確実なんだろうけど…
1.必要パッケージをインストール
|
npm init npm install --save-dev babel-core babel-loader babel-preset-es2015 babel-preset-react babel-preset-stage-0 npm install --save-dev webpack npm install -g webpack-dev-server |
2.ファイル一覧
.
..
package.json
webpack.config.js
src/
src/main.js
src/hello.jsx
src/world.jsx
dist/
dist/bundle.js
dist/index.html
node/modules/省略
3.ソース記述
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
// webpack.config.js module.exports = { entry: __dirname + "/src/main.js", output: { path: __dirname + "/dist", filename: "bundle.js" }, module: { loaders: [ { test: /\.jsx?$/, loader: "babel-loader", exclude: /node_modules/, query: { presets: ["es2015", "stage-0", "react"] } } ] } }; |
|
// src/hello.jsx import React from 'react'; class Hello extends React.Component { render() { return <h1>Hello</h1> } } React.render(<Hello/>, document.getElementById('hello')); |
|
// src/world.jsx import React from 'react'; class World extends React.Component { render() { return <h1>World</h1> } } React.render(<World/>, document.getElementById('world')); |
|
// src/main.js import Hello from './hello.jsx'; import World from './world.jsx'; |
|
<!-- dist/index.html --> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Hello React</title> </head> <body> <div id="hello"></div> <div id="world"></div> <script src="bundle.js"></script> </body> </html> |
4.実行
下にアクセス。
※ 最後のスラッシュが必須なことに注意
http://localhost:8080/webpack-dev-server/
ファイルを編集すると勝手にリロードされる。とても便利。
- BABEL
- https://babeljs.io/
- webpack
- https://github.com/webpack/webpack
- webpack-dev-server
- https://webpack.github.io/docs/webpack-dev-server.html