LoginSignup
27
27

More than 5 years have passed since last update.

SeleniumConf 2019 Tokyo 品質保証部立ち上げ中! 勉強会発表資料

Posted at

株式会社クロス・コミュニケーション 亀井です^ ^
弊社では品質保証部立ち上げ中です。Seleniumを含むテスト自動化も推進しています。その事を中心に様々な議論ができれば幸いです。
設計書や仕様書をMarkdownに移行したいのでQiitaに発表資料を各試みをしてみました。

自己紹介

亀井亮介
3児の父親でフリーランスを経て2018年3月クロス・コミュニケーション入社し、品質保証部を立ち上げ中

長女13歳
サッカーやるために寮付きのフットボールアカデミーへ…年頃なのでラインでの会話がちょうどいい距離感

次女11歳
パティシエやりたいらしい。器用で最近はレジン細工にハマっている。

二人に共通点はあまりないが、ポプテピピックが好き…教育上どうかと思いつつ一緒にみて笑ってしまう…

長男7歳
諸事情あり、離れて暮らしている。すげー可愛い。仮面ライダー好き(ガンダム好きになればいいのに…)

個人的な思い
月曜日に楽しくなる職場にしたい

1. 品質保証部立ち上げの背景

https://www.cross-c.co.jp/about/company/
ありがたいことにプライムの案件が多いです。

常時プロジェクトが多数回っている

SeleniumConf 2019 Tokyo 品質保証部立ち上げ中 背景.png

2. クロス・コミュニケーションにおける品質保証部とは

SeleniumConf 2019 Tokyo 品質保証部立ち上げ中 品質保証部とは?.png

3. プロジェクトの標準化・仕組みづくり

開発会社なので品質を技術的なアプローチで解決したいと考えています。
(not 人海戦術・労働集約)

SeleniumConf 2019 Tokyo 品質保証部立ち上げ中 開発標準化 (1).png

  • テスト自「働」化
  • Infrastructure as Code
  • CI/CD DevOps
  • Swagger

4. クロス・コミュニケーションにおけるテスト自「働」化方針(本題)

テスト自動化で失敗した方いませんか?

アンチパターン…だいたい失敗談を聞くとこんな感じ

  1. メンテナンス・スパイラル
  2. テスト熱中症・カバレッジ至上主義
  3. ソフトクリーム型

テスト自「働」化は積み重ねだから無理しなくていいんだよ

アンチパターンを防止するために

スクリーンショット 2019-03-23 9.40.07.png

1. メンテナンス・スパイラル

メンテナンス性が低下して、仕様が変わる度に過度なソース修正発生(メンテナンス・スパイラル)が発生しないように

スクリーンショット 2019-03-23 9.40.45.png

  • Geb, Spockなどを活用し誰が書いても同じようなコードにする
  • id属性を振り、xpathで記載し統一感を持たせる
  • 小難しいアサーションはなるべく使わない
  • エラーメッセージなどの表示確認は文言レベルではなくフィールドの表示/非表示で評価

2. テスト熱中症・カバレッジ至上主義

テストすることが楽しくなったり、テストを書くことが目的になったり(テスト熱中症)を防止するために

スクリーンショット 2019-03-23 9.40.26.png

  • コード:テストコードは8:2か7:3
  • カバレッジはあまり重要視せずに目安程度にする

3. ピラミット型(not ソフトクリーム型)

スクリーンショット 2019-03-23 9.40.07.png

  • 原則的にはユニットテストを書き、APIのテストも自動化する
  • その上で、Seleniumの得意なテストのみに集中する

課題 工数 vs テスト自動化

弊社は原価管理に厳しいので工数がかかることは避けがち

そもそも…

UT, ITの自動化してコスト上がるのは製造初期だけでテストで回収できるはず。
とはいえ、UIテスト(Selenium)まで原価に持つのはちょっと厳しい
→ UT, ITはプロジェクトがもち、Seleniumは品質保証部がもつ

課題 アプリのテスト

Test lab + XcodeやKotlinのUIテスト活用かな(現在テスト戦略立案中)

次回は成功事例を紹介したいなぁ〜と^ ^

27
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
27
27