SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2023 Summer セッションレポート(AD)

ありがちなテスト自動化の失敗パターンから学ぶ、「T-DASH」導入効果と事例とは

【D-6】テスト自動化で解決したいこと3選~テスト自動化ツールT-DASHを使った自動化事例~

  • このエントリーをはてなブックマークに追加

 ソフトウェアのテスト自動化は、品質の向上やコスト削減などのメリットがある一方で、失敗事例も少なくない。今回のセッションでは、テスト自動化のエキスパートであるバルテスの石原一宏氏が、現場でよく起こりがちなテスト自動化の失敗パターンに対し、テスト自動化ツール「T-DASH」を活用した解決事例をもとに解決策を紹介した。

  • このエントリーをはてなブックマークに追加

なぜ、テスト自動化は失敗しやすいのか?

 テスト自動化はテストケースをコード化することや自動実行することができるため、手動テストでは困難な繰り返しテストや大量のテストケースの実行が可能になる。だが、2022年のデブサミで実施したアンケートでは、「テスト自動化の経験者のうち、約3分の1はやめてしまっている」という結果が出ている。

 テスト自動化が成功すれば、「勝手にテストをしてくれる」「正確に実行してくれる」「バグの発見し放題」といった利点があるにも関わらず、なぜなかなかうまくいかないのか。まずは、テスト自動化の失敗しやすいポイントが言及された。

 石原氏は、テスト自動化が失敗しやすい要因として、「エンジニアが忙しくてメンテナンスができない」「自動化できる人が限られて推進できない」「自動化ツールが高額で行き渡らない」という3つのポイントを挙げている。

テスト自動化の失敗しやすいポイント
テスト自動化の失敗しやすいポイント

失敗ポイント1:エンジニアが忙しくてメンテができない

 開発・実装だけではなく、自動化もテストもできるエンジニアはそう多くはない。どうしても業務のアサインが集中するため、プロジェクトが忙しくなってくると、メンテナンスが放置・後回しになってしまいがちである。

 担当エンジニアが別の案件に異動してしまうと、これまで書いたテストスクリプトが解読できずに使えなくなってしまう。これが多くの自動化が途中で断念せざるを得なくなった理由の大きな一つ。いわゆる属人化とも言える。

失敗ポイント1:エンジニアが忙しくてメンテができない
失敗ポイント1:エンジニアが忙しくてメンテができない

失敗ポイント2:自動化できる人が限られて推進できない

 自動化に対応できる人が限られており、アサインできない点も大きなポイントだ。さまざまな言語でプログラミングができるベテラン、高スキルな人材は、エンジニア市場にそう多く存在するわけではない。

 さらに、自動化のためにチームを組むには複数人が必要となる。人も集められないし、コストもかかるという課題も大きい。

失敗ポイント2:自動化できる人が限られて推進できない
失敗ポイント2:自動化できる人が限られて推進できない

失敗ポイント3:自動化ツールが高額でいきわたらない

 自動化ツールのライセンスが高額なため、チーム全体に行き渡らない場合もある。人材不足やコスト面から考えると、全員経験者でチームを組むのは現実的ではない。

 自動化の経験がない、もしくは少ないメンバーを集めてOJTで育てたいが、ツールが高額なので、全員に与えることが難しいのも課題の1つである。

失敗ポイント3:自動化ツールが高額でいきわたらない
失敗ポイント3:自動化ツールが高額でいきわたらない

テスト専門会社の作ったテスト自動化ツール「T-DASH」とは

 こうしたテスト自動化の失敗しがちなポイントを乗り越えるべく、テスト専門会社であるバルテスが開発したテスト自動化ツールが「T-DASH」だ。どのように解決できるのか、その対策となる特徴が以下スライドのように紹介された。

 やはり大きな特徴は、日本語で書いたテストケースがスクリプトになることである。すぐに使えて操作が簡単であることや、月額3690円という月4000円を切るコストで運用でき、開発スピードを拘束かできる点も嬉しい点ではないだろうか。

 「テスト現場で使いたいときに誰でもすぐに使える点にこだわって、テスト専門会社ならではのテスト自動化ツールをつくりました」(石原氏)

テスト専門会社の作ったテスト自動化ツール「T-DASH」の特徴
テスト専門会社の作ったテスト自動化ツール「T-DASH」の特徴

T-DASHを活用して開発現場の課題を解決した事例を紹介

 実際にT-DASHを使って開発現場の課題を解決し、テスト自動化の利点を高めた事例が3つ紹介された。

リグレッションテストをするために

 あるECサイトのWebフロント案件では、デグレードが高頻度で発生している課題があった。原因は、開発チーム内でアドホックテストを簡単にしているだけだったこと、時間がないときはテストをせずに本番リリースしていたこともあったことだ。

 開発チームの自動化を実装できる人が自動化に時間をさけない、3週間1スクリプトで年間15回のアップデート、いつも忙しくて時間を割けないので高価なツールの導入を検討する時間すらとれない状況だった。

 そこでT-DASHを活用してリグレッションションテスト実装を行ったところ、それまで常に4名体制で10日間(2人月分)、4名が半月分の工数を割く必要がある状態だったものが、6名体制で5カ月分(30人月)となった。増えたように思えるが、5カ月目から2人月分が1人日、つまり40分の1の負担で済むようになったのである。

 「リグレッションテストもできるようになり、品質は上がり工数は下げることができました。運用フェーズの負担を軽減させた上で課題解決することができた好事例です」(石原氏)

「リグレッションテストをしてない」に対するT-DASH活用の効果
「リグレッションテストをしてない」に対するT-DASH活用の効果

自動化導入をするために

 ある大手サプライヤーの社内システム開発案件では、テスト自動化の導入・実装のためのエンジニアを4人集めて、自動化導入チームを組もうとしていた。しかし、フリーの自動化ツールは複雑で難しいため、開発スキルが必要となるが、エンジニア単価が非常に高い。有償の自動化ツールは高額で準備が難しいといった事情から苦戦していた。

 スクリプトが書けるエンジニアを集めるには、単価150万円×4人で600万円かかってしまう。だが、T-DASHを使ったところ、自動化エンジニア1人(150万円)とQAエンジニア3人(単価80万円×3=240万円)で390万円。約35%のコストを下げることができた。

 「インターフェースが簡単で、日本語で使えることができたため、開発スキルがなくても実質2日で、合流できるレベル習熟することができました」(石原氏)

「自動化導入のチームが組めない」に対するT-DASH活用の効果
「自動化導入のチームが組めない」に対するT-DASH活用の効果

自働化の構築・実装でテストケースを削減

 ある保険会社の申し込み受付ページの開発案件では、20万件の膨大なテストの実施がサービスローンチのために必要だった。チェック作業もテストデータの準備作業もすべて人手で行っていたが、人の手では捌き切れず、短期間ではローンチできない状況だった。

 自動化スキルを持った人材がいないこと、テストを行うタイミングが夜ということもあり、リリース要件を満たせない。20万件のテストケースをテストするためには、1日1万件を手動でテストする必要があったが、大量すぎて捌けないため、T-DASHを使ってこの自動化の構築・実装を行った。

 T-DASHでは、1人・1か月で夜間作業のみの制約の中、4日間でテストを完了することができた。さらに次月以降は、実質80分の1まで工数が削減できている。RPA的な使い方も可能であり、CI/CD連携が可能になったことについてもメリットを提供することができたと、石原氏は振り返っている。

「テストケースが大量すぎて捌けない」に対するT-DASH活用の効果
「テストケースが大量すぎて捌けない」に対するT-DASH活用の効果

 バルテスの社員がテスト自動化のエキスパート集団であること、テスト自動化の経験・スキル向上に関する取り組みなども紹介された。

  • 社員全員にライセンス付与している
  • 入社時研修で全員が必修科目として受けている
  • 社内エバンジェリスト認定制度を導入している
  • テストツールとして標準利用 など

 最後に石原氏は、開発現場のQCDクオリティのD(Delivery・納期)を早くするために、Q(Quality・品質)を削りがちになることを指摘。以下のように語り、セッションをまとめた。

 「QCDを充実させるためには、Qを削らずにむしろ上げることが大切です。結果として、手戻りが減り、コストもカットできる。納期も早くなるでしょう。Qは自動化で担保することで、うまい、安い、早いを実現し、快適な自動化ライフを送りましょう」(石原氏)

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加

提供:バルテス株式会社

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18181 2024/04/24 12:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング