「第４回Selenium談話会 in Slack」 のまとめ

# Selenium談話会 in Slackとは
* 私、@oh_rusty_nail が主催しているSlackを使ったオンライン勉強会です
 * https://seleniumjp.slack.com
 * 地方に住んでいて勉強会に行くのも遠征しないときびしい！といった方には特におすすめです
* 月１回程度の頻度で計画しています
* [日本Seleniumユーザーコミュニティ](https://groups.google.com/forum/#!forum/seleniumjp)で開催の案内を出しています
* ラフな感じでやってますのでお気軽にご参加ください！
 * ![チャットの様子](https://08275154297963728543.googlegroups.com/attach/4236d4fdf8cf405b/slack.png?part=0.1&view=1&vt=ANaJVrFYAk2sse1_p9dtcEakDE4AiQVeKYJHN0S6NzBO4jleAUmzhx1DafHjNU9fGtgGP2wt7F9M_mN73a0ekmpwLYwZNI332m1wJVcNyHWkr56kXGIjnaA)
* 情報を共有し合ったり、流行のツールについてしゃべったり、困りごとや相談をしたり...etc
* 2015/08/04現在の登録ユーザ数：57名

# 参加方法
* 以下どれからも可能です
 1. https://seleniumjp.herokuapp.com から登録してください
 1. TwitterID: @oh_rusty_nail をフォロー後にDMで受信可能なメールアドレスをお知らせください
 1. takonoyawarakaage@gmail.com宛に受信可能なメールアドレスをお知らせください

# 前回のまとめ
* [「第１回Selenium談話会 in Slack」 のまとめ](http://qiita.com/oh_rusty_nail/items/21e0014c40853571c87b)
* 開催日時：　2015/04/22(Wed) 21:00～
* [「第２回Selenium談話会 in Slack」 のまとめ](http://qiita.com/oh_rusty_nail/items/ccf40fe2d3381ad0ce4f)
* 開催日時：　2015/05/13(Wed) 21:00～
* [「第３回Selenium談話会 in Slack」 のまとめ](http://qiita.com/oh_rusty_nail/items/6efffcb71818914f776e)
* 開催日時：　2015/06/16(Tue) 21:00～

# 「第４回Selenium談話会 in Slack」の議事録
* 日時
 * 2015/07/29(Wed)
* 参加者
 * 13名程度
* 今回はAppiumネタだったので#appiumで進めました
 * #general　：　連絡事項がある場合に使用するチャンネル
 * #ide　：　SeleniumIDEを中心とした話題をするチャンネル
 * #webdriver　：　SeleniumWebdriverを中心とした話題をするチャンネル
 * #appium　：　appiumを中心とした話題をするチャンネル
 * #random　：　雑談用チャンネル

## 第４回のお題
* Appium入門講座
 * Appiumの実行環境を整えて、サンプルコードを動かすところまでをみんなでガヤガヤするのが目的です
* 九州ソフトウェアテスト勉強会で過去に勉強会を主催された実績のある[@shinya16jp](https://twitter.com/shinya16jp) さんに講師を依頼しました

## はじめに　～九州ソフトウェアテスト勉強会の紹介～
* 九州ソフトウェアテスト勉強会はソフトウェアテストに関する情報の共有や勉強会の開催を行っているコミュニティ
 * 福岡を中心に活動をされている
* Facebookページ：https://www.facebook.com/groups/Testing.Qshu/
* 九州である勉強会のご案内
 * https://atnd.org/events/68117
 
## Appiumの紹介
### Appiumとは？
* 公式リンク：http://appium.io/
 * 公式サイトからAppiumの紹介ビデオ(Youtube)を見ることができるので、初めての方はそれをみると掴みやすいかも
* Appiumとは「モバイルアプリを対象としたテスト自動化のためのフレームワーク」
* Seleniumの流儀でモバイルアプリのテスト自動化のコードを書くことができるのが特徴 
* Seleniumを使ったテスト自動化経験のあるエンジニアにとっては、比較的簡単にモバイルアプリのテスト自動化のコードを書くことができる

### 対象としているプラットフォーム
* iOS、Android、FirefoxOS
 * iOSは6.0、6.1、7.0、7.1、8.0、8.1に対応している
 * Androidは、2.3以降に対応している

### Appiumでテスト自動化する際に使用できる言語
1. Java
1. Ruby
1. Python
1. PHP
1. Perl
1. JavaScript(Node.js)
1. C#

## Appium体験談　～Appium公式サイトの翻訳依頼キター～
* 今回講師をしてくださった[@shinya16jp](https://twitter.com/shinya16jp)さんはAppiumの開発者Dan Cuellar(@thedancuellar)さんからAppiumの公式サイト翻訳を依頼されたというお話
 * そのツイートときの：https://twitter.com/thedancuellar/status/359336333451333632
* DanさんがAppiumを作ろうと思った経緯は公式サイトの「History」のページを参照

### DanさんがAppium開発に至ったきっかけ
* Danさんが会社でテストマネージャをしていた際にテストに関して以下のような問題に直面したらしいです
 * 当時開発していたiOSアプリのテストの量があまりに多くなって、テストに時間がかかってしまう...
 * 実施するテストの量を減らすことも考えたが、iOSアプリならではのリスクがあるのでテストの量を減らすのは難しい...
 * App Storeで公開する際にAppleの審査を受けないといけないが、いつ通るかわからない
* Appleの審査のことを考えて、たくさんのテストをこなすためにはどうしたらよいかと考えて思いついたのが**テスト自動化**
* 既存のサービスを利用しようと最初はAppleが提供しているUIAutomationを検討したが以下の理由で断念
 * XCodeに付属しているInstrumentを使わないと実行できない
 * リアルタイムにテストを自動化したい
* 他にもサードパーティ製の製品を使おうと考えたが、その製品が提供しているSDKやHTTPサーバーをiOSアプリの中に組み込まないといけなかったので、サードパーティ製の製品も断念
* そして、既存製品を調査して納得のいくものが見つからなかったので、Danさんは自分でテスト自動化のツールを実装し始めたと

## Appiumの環境構築
* このチュートリアルさえあれば誰でも簡単にできちゃうとても丁寧な構築ガイドを作ってくださいました
 * [qte-study-vol15-appium-workshop-doc-v1.0.1.zip](https://bitbucket.org/skinoshita/qte-study-vol15-appium-workshop-doc/downloads/qte-study-vol15-appium-workshop-doc-v1.0.1.zip)
* ２時間あれば構築とおためしまでできます

----

# ～ただの宣伝～
* [全国のSeleniumer必読](http://qiita.com/oh_rusty_nail/items/b8ba525d31ea7c522856)
* Selenium, SauceLabs, Travis, Jenkinsに関するノウハウ書いているのでよかったら参考にしてみてください