2011年8月7日日曜日

Androidテスト祭りでTDD晒してきたよ

Androidテスト祭りが開催されました。


ご来場いただいた皆様、USTをご覧になった皆様、および講演を引き受けてくださった皆様、大変ありがとうございました。
この場を借りて御礼申し上げます。

また、忙しい中、準備に奔走したスタッフの皆様お疲れさまでした。

当日の模様ですが、Togetterなどで少しまとめられております。

@sakura_bird1 のAndoroid テスト祭り実況

あと、手前味噌ですがこちらでもまとめています。

さて、恥ずかしながら、私も拙いスキルを晒して参りました。

プチライブコーディングとかはABC2011Summerにて晒していたし、Android埼玉支部の支部会でも晒してきたので、それほど緊張はしていないつもりでしたが、やはり70人、UST150人を前にしてのTDDはプレッシャーがありますね。全然スピードが悪かったと思います。

まあ、お題はいつものアレです。

そう、ボーリングですね。

比較的面倒なロジックな割にはルールは結構知られているという面白い題材です。

まあ、実際にはTDD以外にも仕様化テストの話もして参りました。
仕様化テストの話は明日にでも書きます。

資料は次のとおりです。



きっと、いろいろな方もブログを書かれると思いますので、私なりに簡単にまとめました。


KeyNote :: より効率的に開発するために

井芹 洋輝(TDD研究会) 太田 健一郎(TDD研究会)


いや、これはレベルが高かった。
単純に言うと、Activityにビジネスロジックを書くな」ということですね。

ゲームでもなんでもいいんですが、アプリケーションの中心となる機能(ゲームで言えば、ボールが当たるとか、点数を計算するなど)をActivityに書いてしまうと、途端にアプリケーションのテストができなくなって、品質を担保できなくなるということが話しの中心でした。
そして、テスト容易性を考慮しつつアプリケーションの設計を行おうというものです。

結構内容は高度なもので、ボリュームもたくさんだったため、ふたりとも早口でした。
というわけで、レベルが高いかな…などと思いました。

ちなみに、二人に聞いたところ、「妥協を一切しなかった」とのことです。

Android製品テストマップ

鈴木 利彦(株式会社ベリサーブ)


え~っと、まず、すんませんした!…m(_ _)m
どうやら、私が太田さんのノパソの操作を誤ったらしく、スクリーンが途切れてしまいました。
その後も回復がうまく出来ず、snskさんに応急処置をしてもらいました。
いや、ほんと、まじすんませんした。

話は端末の品質の話から、テスト観点の話など多岐にわたりました。

印象的だったのは、今後品質の良くなるメーカーの特徴を述べていたところで、社名は伏せられていましたが、BTSに登録したイシューに真摯に対応している端末メーカーの品質が向上しているとのことです。

品質を向上させるためには日々少しずつ改善していく必要があり、それにちゃんと取り組んでいるメーカーにはノウハウが溜まっていくであろうという話でした。

Android受け入れテストガイドライン

生路 茂太(株式会社ACCESS)


製品のQAに関するお話です。
フィードバックされた意見をどのようにして次のリリースに活用するかといったあたりの分析の仕方が述べられていました。


Android向けUIテスト自動化ツール「Scirocco」のご紹介

立花 優人(株式会社ソニックス/ファウンダー スマートデバイスソリューション事業部 アーキテクト)


UIテストツール「Scirocco」の紹介とデモです。

通常、UIテストをJUnit形式で書こうとすると、10行以上のテストコードになりますが、Sciroccoを使うとほんの2~3行でテストコードが書けるようになります。
UI周りのテストを書く場合には非常に参考になりますね。
Scirocco自体はオープンソース「Apache2.0ライセンス」で提供されています。

なお、ソニックスさんはこれほどよいツールを何故無償提供したかというと、「社会貢献」だそうです。
大人ですね~。

SQLite 周りのテストをしよう

@ussy00 (Androidテスト部/株式会社ヌーラボ)


uss00さんがすんごいのを作ったそうです(棒
自分の番が次なので内容をほとんど覚えていない…

とりあえず、SQLiteのテストをやり易くするためにライブラリーを作ったとのことで、
GitHubにて公開されています。

招待講演 :: テスト可能なUI設計パターン

MVCとかMVPといった責務の役割をAndroidにも適用しようというお話です。
実はAndroidの開発になってからJavaのプロダクトコードの品質が7~8年前のレベルに戻ってしまったそうです。
MVCとかMVPというのは古い、使い古された考えですが、目的は責務の分割です。しかし、現状AndroidのアプリではActivityにモデルロジックが書かれてしまったり、Viewの役割をもつコンポーネントにモデルが記述されたりしていて、責務分割が忘れられている傾向があるようです。
原因のひとつはAndroid入門書の本をそのまま写経することなどがあったりします。(これは悪いことではない)。
ただ、入門書はその本としての可読性を優先するために、ソフトウェアとしての品質を犠牲にしています。
なので、責務分割は必ずして品質を担保しようということでした。
ちなみに紹介されたAndroid-Bindingは試してみたいと思います。

クロージング :: これからのアンドロイドテストの話をしよう

宮田 友美 (Androidテスト部部長/株式会社オープンストリーム)


これからのテストの話しです。
これまでのテスト部は「どうテストをするか」にフォーカスを当てていましたが、今後は「ユーザーは何を求めているのか」という方向にも進んでいくという宣言がなされました。
また、テストの自動化も積極的にやっていきたいし、testterのコミッターももっと増やしたいとのこと。

あと、私事でしたが、お子様が3/9予定日だということです。おめでとうございます。


魂心会もとい懇親会

いろいろな方とお話…しませんでした…orz
LTの準備全然やっていなかったので…

というわけで、Groovyの宣伝だけしました。
他のLTで、一番衝撃的だったのは、某G**gleの社員さんでNative Driverの開発者の方がLTしたことでしょうか。
いや、むしろメインセッションでやってほしいくらいでした。

懇親会ではKORODROIDさんや、デ部の方々とご挨拶致しました。
また、Android埼玉支部ではいつもお世話になっているねこすけさんともご挨拶いたしました。

今後ともよろしくおねがいします。

まあ、こんな感じですが、こんごともAndroidテスト部よろしくお願いします。

0 件のコメント:

コメントを投稿