JaSST '17 Tokyoに参加してきた話
JaSSTことソフトウェアテストシンポジウム 2017 東京に参加してきました。
「次世代システムに求められるソフトウェア検証技術~静的解析の価値と有効性~」
MathWorks Japanさんの製品紹介でした。
静的解析の導入はバグの早期発見につながる。(フィードバックの前倒し)
という部分だけは納得しつつも、静的テストで見つかるバグって、どれだけ動的テストで問題になるバグに紐づくのだろう、というのは永遠の謎。
CIとも相性が良いですし、少ない工数でバグを防げるならやっとこうっていうノリでしょうか。
「楽天トラベルの開発プロセスに関して」
楽天トラベルさんの開発プロセスを改善しましたよ。というお話。
かなりざっくり言うと、QAが開発に参加するタイミングを早めましたよ。という内容だったと思います。
要件定義の段階でQAも参加する。テスタビリティを担保する。(=QA観点で漏れている観点を早期にフィードバックできる。)というところは、すごいな、と思いました。自分のところは要件定義の段階では絡めていないので、見習いたいと思いました。
PdM、開発、QAの三権分立の体制もパワーバランスが取れているそうで、QA的にはやりやすいだろうなあと思いました。うちはなんとなくPdMの下請けとして開発とQAが働いているようなイメージです。
もう少し前衛的に働いて、開発に貢献することで、こういう良いパワーバランスで働けるのかなと思いました。
受け入れテストの自動化 ~ OpenCVの「眼」で捉え、Pythonの「脳」が思考し、Appiumの「指」で動かす」
自動化ネタです。昨年のCEDECで一部発表されたネタで、CEDECで聴き逃した自分としてはかなり興味があったネタです。
Appiumが技術的な主軸なのかと思っていましたが、Image Recognitionが主軸な内容でした。確かに、ゲームのようなUnityとかGLなんかでゴリゴリ書かれるようなモバイルアプリは、 Appiumでelementは簡単に取れないので、そうならざるを得ないですね。
あとゲームというある程度の反応速度を求められる試験対象の性質上、モバイルの画面をMHL出力経由でHDMIキャプチャに入力し、そのストリームをリアルタイムに画像処理にかけるというようなことをしているようです。
大掛かりで力技な感じですけど、それを作っちゃうあたりはすごいなと思いました。
自分のところはゲームではないモバイルアプリの評価なので、素直にAppiumに頼るのが良いのかなと思っています。
詳しい内容は CygamesさんのTech blogを御覧ください。
【JaSST’17 Tokyo フォローアップ】受け入れテストの自動化 | Cygames Engineers' Blog
「教科書に載らないテストマネジメント」
テストマネージャとして活躍している方々をパネリストに迎え、あるお題に関して、本には載らないような生の声を聞けるセッションでした。
個人的にはこのセッションがベストセッションでした。
以下がお題と印象に残った言葉。
テストマネージャの役割と責任
- 知ること・知らせること。何を知りたいかをステークホルダーに聞くこと。知りたくないことを報告していない?
- ぶれない心。対等に渡り合う精神力。
- これを実現するためには、これだけの努力が必要です。と言えるような準備。
1週間残業が続いたときに、メンバーに何を話すか
- 可視化(残テスト数、バグ数)
- スコアボードを作る。すべてのステークホルダーが対等に、すべての状況を正しく理解できるもの。例えば野球のスコアボード2アウト満塁の状況でフライがあったらそれぞれが何をするかは明確。
テストプロジェクトを成功に導くための秘訣
- バグを出すことが仕事ではない。バグを直さないなら、直してもらうためには何ができるのか。
- バグの修正率を健全な状態に保ちましょう。(一定かつ、高い数字)
- 正直でいられるようにする。悪い嘘の上塗りをせずに、誠実に状況を伝えるような健全なプロジェクトを目指す。
テストマネージャとしてどんな努力をしてきたか・しているか
- とりあえずやってみる。(興味を持つ・楽しむ)
- 社外⇛社内への還元
- JSTQBのシラバスを読む。(Learning Object)
- 知ったことを自分たちのやり方に適用する。
- 多くの人と共同で仕事をする訓練。自分の事だけやればOKと思っていたら絶対にうまくいかない。
本当は他にも参加したセッションがあったんですが、あまり書くことがないので省略します。
JaSSTはテストの楽しさを再認識させてくれる場所で、テストに関するインスピレーションや気付き与えてくれます。
JaSSTで得られた知識を少しでも現場で役立てればと思います。