SHOEISHA iD

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

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

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

アジャイル開発を進めよう! アクセシビリティ/統合テストも自働化できるテスト基盤とは?

【10-E-8】今こそ始めよう品質エンジニアリング!~テスト自動化でアジャイル開発の波に乗る!~

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

 テストの自動化が重要なテーマになっている。ソフトウェアの重要性が増す中で、継続的な品質改善が求められているからだ。しかし、アジャイル開発に取り組む多くの開発現場で、テストケースの作成や対応工数などに悩まされていないだろうか。そこで、mablでTestingやQAの啓蒙活動に取り組むodasho氏が「今こそ始めよう品質エンジニアリング!~テスト自動化でアジャイル開発の波に乗る!~ 」と題して講演した。テスト自動化の全体像からアクセシビリティテストまでさまざまなトピックスを解説した。

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

インテリジェントなテスト自動化プラットフォームを提供するmabl

 冒頭、odasho氏は「私が所属するmablですが、ぱっと英語だけ読むとマーブルって読みそうになりますが正しくはメイブルです」と紹介した。

 mablは、Stackdriver(現在のGoogle Cloud Operations)を創業した二人が2017年に新たに始めた企業だ。

 「私たちはソフトウェア品質に革命を起こし、よりアジャイルによりスピードを上げた開発を可能にしていきたいと思っています」と企業ミッションを解説した。

mablの企業紹介
mablの企業紹介

 mablが提供しているのは、インテリジェントなテスト自動化プラットフォームである。単一プラットフォーム上、かつノーコード・ローコードでE2E・API・アクセシビリティがテストできる。特に、UIテストや結合テストの領域で利用される。さらに、豊富なCI/CDを実現する他社製品との統合も可能になっている。

 「普段、Webの画面などを制作していて突然レイアウトが大きく変わってしまったといった経験があると思います。当然、テストも変更しなければいけないのですが、mablにはテストの自動回復機能(Auto Healing)があり、ボタンの位置などを自動的に探し当てて修復します」

mablはインテリジェントなテスト自動化プラットフォームを提供
mablはインテリジェントなテスト自動化プラットフォームを提供

ブラウザ操作を記録してUIテストを手助けする自動化プラットフォームの使い方

 ここで、簡単なブラウザテストをイチから組み立てていく手順の4分ほどのデモ動画を見せた。ログイン画面でログイン・ログアウトする操作をテストするものだ。途中で、パスワードを入力しないとエラーメッセージが表示されるところも捕捉する。

 まず、mablのテストプラットフォームで「作成」ボタンをクリックすると、ブラウザが立ち上がる。このとき右側に「トレーナー」が表示される。ブラウザを操作すると、ここに記録した操作内容が表示されていくのだ。

 パスワードを入力しないでログインしようとすると、エラーメッセージが表示されるが、この内容も記録される。このとき、エラーメッセージのテキストが正しいものかチェックできる(アサート機能)。

ブラウザの操作を記録してUIテストを作成できる
ブラウザの操作を記録してUIテストを作成できる

操作を登録してテストを作成したら、すぐに実行できる。

 mablには、ローカル実行とクラウド実行がある。ローカル実行はログの記録や表示と合否判定だけだが、クラウド実行であれば、ログの記録だけでなくスクリーンショットや操作内容を自動保存できる。加えて、実行するブラウザも選択でき、レポートにも反映できる。

クラウド実行すると、エラーになった個所を示してくれる
クラウド実行すると、エラーになった個所を示してくれる

 こうして作成したテストは、CI/CDインテグレーションと連携させることも可能。

低品質なソフトウェアには170兆円のコストがかかっている

 ここで、昨今のソフトウェアの品質について紹介した。まず見せたのは「1.3兆ドル」という数字だ。これは、アメリカの2020年のレポートで、Information & Software Qualityコンソーシアムが発表したものだ。レガシーなシステム構築やシステム運用のバグ対応などで、日本円にして170兆円もの費用がかかっている。

 「数字が大きすぎて、ちょっと自分事に感じられないですよね。そこで、もう少しブレイクダウンしてみましょう」と語って、下図を見せた。

テストの目的は、よりよい顧客体験を生み出すこと
テストの目的は、よりよい顧客体験を生み出すこと

 コロナ禍によるデジタルトランスフォーメーションの加速や自宅で複数のデバイスを使い分ける、ユーザー体験の品質が悪いとそのサービスから離れてしまう、といった辺りは肌感覚があるところだろうと語り掛けた。

 じつは、テストカバレッジと顧客満足度には相関関係がある。mablが毎年実施している調査(Testing in DevOps)によると、テストカバレッジが優れているとするチームでは顧客満足度が高いという回答が実に80%に上るのだ。

 では、こうしたテスト品質の改善はどうしたら実現できるのだろうか。

 「従来のテストアプローチでQA:品質保証をしっかりやろうとすればするほど、開発スピードが遅くなったり、メンテナンスコストが高くなったりしてしまいます。テストのサイロ化も進みがちです。

 ちょうどIPAから、今年のDX白書が出ていましたが、DevOpsやCI/CDパイプラインを意識した開発をやっている企業が、日本はわずか10%程度に対して、アメリカは50%を超えています。まだまだ国内では手動テストやテストコードのメンテナンスが当たり前の状況であると思います」

DevOpsが従来のテストアプローチを破壊する
DevOpsが従来のテストアプローチを破壊する

アクセシビリティの低い要素を自動的にテストする

 こうした課題の解決に取り組むには品質保証(QA)をさらに進化させた「品質エンジニアリング」が必要になるとodasho氏は強調した。そして、品質エンジニアリングの成熟度を示して、レベルを向上させていく重要性を説いた。開発後に手動でテストを行っていると、どうしても属人化やサイロ化が起きやすくなってしまう。適切にテスト項目の棚卸を実施し、そのうえで自動テストを開発に組み込みシフトレフトを進めていく。さらにはアクセシビリティなどの非機能要件まで含めて、最終的にデータに基づいて継続的な品質の改善を行っていくことを指す。

品質エンジニアリングの成熟度
品質エンジニアリングの成熟度

 ここで、odasho氏はアクセシビリティテストについて掘り下げた。 アメリカやヨーロッパ、日本を中心とする国々が、W3Cが策定したアクセシビリティのガイドラインであるWCAG(Web Content Accessibility Guidelines)を採用している。アメリカでは、昨年約4000件のアクセシビリティ関連の訴訟が起こっている。ここでいうアクセシビリティとは、どのような人でも十分にウェブサイトへアクセスできるようにするといった内容を指している。

Web Content Accessibility Guidelines(WCAG)とは
Web Content Accessibility Guidelines(WCAG)とは

 「こうしたガイドラインに適合しているか人間がチェックをするのは簡単ではありません。多くの項目を手動でチェックしていくのは現実的ではないと思います。そこで、mablのようなテスト自動化プラットフォームを使っていただく必要性をご理解いただけると思います」

 そこでodasho氏は、mablのテスト自動化プラットフォームを使ってアクセシビリティをテストするデモ動画を見せた。たとえば、ダークモードでの表示で著しく視認性の悪い要素を自動的に検出できるのだ。

アクセシビリティの低い要素を自動的にテストできる
アクセシビリティの低い要素を自動的にテストできる

継続的な品質改善に求められる取り組みとは

 ここでodasho氏は話を戻して、品質エンジニアリングで具体的にどのような取り組みが必要になるのか解説した。

 まずは、目標設定だ。たとえば、本番環境までのリリース時間の短縮やテストカバレッジの改善などが考えられる。続いて、この目標についてチームとして合意した上でKPIを設定する。そして、このKPIを基にして現状の測定と改善を進めていく。

継続的な改善のための目標設定とKPI
継続的な改善のための目標設定とKPI

 さらに、こうした取り組みのために明確にしておくと役立つ、情報やテスト体制の階層化についても紹介した。mablでは、こうした情報をmabl University内での学習コンテンツや定期ウェビナーなどで提供し、認定資格制度も用意している。改めて、mablはアジャイルチームのために作られたインテリジェントなテスト自動化プラットフォームであると強調した。

インテリジェントなテスト自動化プラットフォームを提供
インテリジェントなテスト自動化プラットフォームを提供

 「テストカバレッジの向上や信頼性の高いテストの構築は、QAでボトルネックになりがちな部分です。そこを自動化することで、スピードを落とさずに開発を進められます。すでにDevOpsを採用したり、CI/CDに取り組んでいたりする開発チームでも違和感なくご利用いただけると思いますので、興味があればご活用いただけると嬉しいなと思います」このように語ってセッションを終えた。

テスト自動化サービス「mabl」を14日間無料でお試し!

 高速なデリバリーパイプラインを目的として作られたmablなら、エンド・ツー・エンドの自動テストをソフトウェア開発プロセスに簡単に統合できます。信頼性の高いテストの作成・実行・保守が驚くほど簡単に可能になります。14日間無料トライアルでぜひご体験ください!

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

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

提供:mabl K.K.

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

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

この記事をシェア

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

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング