テストの「作成・実行・分析」を高速化するTricentis Testim
Tricentis Testim(以下、Testim)は、Tricentis社が提供するウェブやモバイルアプリケーションに特化したテスト自動化ソリューションである。Tricentis社では、Testimだけではなく、テストスコープを特定するソリューションや負荷テスト、データ整合性テスト、さらにはテスト全体を管理するソリューションなども提供している。
現在のような変化の激しいビジネス環境において、今やリリースサイクルの高速化は必須となっている。だが、「開発スプリントは高速で進行するのに、自動化スクリプトの作成が追いつかない」「UIの変更が頻繁に発生し、自動化スクリプトが動かない」「テスト環境を準備するのに時間がかかる」など、テストがボトルネックとなり、「品質担保とスピードがトレードオフになることに頭を悩ませているエンジニアも多いのではないか」とTricentis Japanのプリンシパル・ソリューション・コンサルタントの片倉氏は問いかける。

そのような困りごとを解決するには、Web・モバイルなど多様な環境をカバーしつつ、CI/CDのパイプラインに組み込み、テスト自動化を高速化させていく仕組みが重要になる。それを可能にするのがTestimだ。
テスト自動化とはいえ、「テストを作成する作業は必要」と片倉氏は言う。Testimでのテスト作成は、ユーザー操作を録画するだけで自動化テストそのものが生成されるため、非常に高速にテストを構築できる。また事前アクションも用意しており、「特定画面の文字列をバリデーションしたり、CSSのプロパティをバリデーションしたりするなどの事前アクションを提供することで、テストにかかる時間の節約ができる」と片倉氏は付け加える。さらにJavaScriptを使って自由にカスタマイズすることも可能だ。
テスト実行のフェーズでも高速化を実現できる。クラウド環境でのテスト実行もその一例だ。クラウド上のテスト実行環境「Grid」を使用することで、クロスモバイル/クロスブラウザでのテストや、特定の機種・OSを指定したテストが可能になる。
さらに、Gridでは並列実行も可能であり、すべてのブラウザ、OSパターンでのテストを一気に実行することができる。
テスト実行が終わると次は分析のフェーズだ。ここでは実行内容をスクリーンショットで取得し、テストが失敗した場合の原因の分析を素早くできるという。Jiraとも連携し、QAチームと開発チームのシームレスな情報共有が可能になるという。

同セッションでは、片倉氏が挙げたこれらのテスト高速化の手法をデモで披露した。テストの対象としたのは航空券予約アプリ。片倉氏は自動テストを5分もかからずに作成してみせた。「基本的にはユーザー操作だけでテスト作成ができるので、開発者だけではなく、ビジネスユーザーやQAエンジニアでも比較的容易に使えるようになっています」(片倉氏)
デモでは、実際にクラウド環境のGridで機種やOSを選択し、テスト実行する様子を実演。テスト結果の確認画面では、テストは全体を通して何%成功したのか、どのステップで失敗したのかをドリルダウンで確認し、詳細ステップを比較する様子などを紹介した。

エン・ジャパンが抱えていたテスト自動化の課題
続いて登壇したのは、Testimを導入したエン・ジャパンの齊藤氏だ。齊藤氏は、テスト自動化の推進のほか、QA組織運営やAIを活用した業務改善に携わっている。

「エン転職」「エンゲージ」「engage」「ASHIATO」などの求人メディア・採用支援ツール・リファレンスチェックといったHRサービスを提供しているエン・ジャパンでは、以前から商用のE2Eテスト自動化ツールを活用していた。だが既存ツールには、「契約面、機能面、運用面という3点で課題があった」と齊藤氏は明かす。
契約面の課題とは、利用規約や約款に疑義があるとの法務からの指摘が入ったこと。加えて、同社ではengageを中心に自動化ツールを利用していたが、他のプロダクトにも利用を拡大した際に、コストが膨らむとの試算結果が出たことだ。
機能面では、既存ツールが機能不足で柔軟な実装ができず、テストケースの作成やメンテナンスの効率が落ちていたという。「メンバーからも、使いにくいのでどうにかしてほしいという声が上がっていました」と齊藤氏は話す。
運用面の課題は、同一プロダクトに対して複数の商用テスト自動化ツールを併用していたことだ。「利用コストはもちろん、テストケース作成やメンテナンスなどの運用コストも高い状態で、なんとかしなければならないと思っていました」(齊藤氏)
こうした課題を解決するために、併用していた商用ツールのいずれかに統一する案や、昨今注目を集めるMicrosoftが提供するオープンソースのテスト自動化フレームワーク「Playwright」を用いてコードベースで実装する案も検討したという。しかし「予算の問題やQAエンジニアの体制事情から、こうした移行案の実現は難しく頭を悩ませていました。そんなときに出会ったのがTestimでした」と齊藤氏は振り返る。
Playwrightも検討、それでもTestimを選んだ4つの理由
Testimに惹かれたポイントは4つある。
1点目はローコードであること。プログラミングを前提とせず、開発エンジニア以外でもテストの作成とメンテナンスを容易に行える点だ。
2点目は豊富な機能。GUI操作でのアクション登録に加え、JavaScriptによるコードベースの拡張にも対応しており、統合管理などの管理機能も充実していたことだ。
3点目は迅速かつ効率的なテストが可能で、並列実行によりテスト実行時間を短縮できること。「特にポイントとなったのは、ローカル、クラウド双方の環境を利用できることだ」と齊藤氏は言う。
4点目はコスト削減と高い費用対効果。利用ユーザー数やプロジェクト数、テストケース数が無制限で、テスト実行回数もローカル、クラウドともに無制限だ。「この点もメリットが大きいと感じました」(齊藤氏)
Testimは片倉氏も紹介したように、豊富な機能を備えている。その中で齊藤氏が魅力的に感じた機能の一部が紹介された。第1はプロジェクト機能。「単一のワークスペース内で複数のプロジェクトを作成でき、オブジェクトが階層構造であるため、複数のプロダクトの管理も容易です。例えば、同一プロダクトでもプロジェクトを分けることで、機能別やチーム単位で分けて運用・管理できます」(齊藤氏)
第2に、GitHubライクなブランチ機能。masterに指定したブランチに読み取り専用の保護ルールを設定でき、UIでプルリクエストの作成やブランチ運用が行える点も魅力だった。
第3はAPIテスト機能。APIクライアントのような画面でAPIテストを実装できる。その他にもマルチプラットフォーム対応、JavaScriptで複雑なアクションを実装できるCustom Action Steps、CIとの連携が容易で開発フローへシームレスに統合できるCI連携機能が紹介された。

テスト時間は半減、実行回数は3倍に──数字で見るTestim導入効果
Testimの導入効果についても、齊藤氏は言及した。1点目はテスト実行回数が3倍になったこと。「テスト実行回数が無制限になったことで、リリース前のテストに加えて、懸念箇所のスポットテストや毎日のリグレッションテストも継続的に実行できるようになった」と齊藤氏は語る。
2点目はテストカバレッジが向上したこと。現在はリグレッションテストの約7割をTestimでカバーしているという。
3点目はテスト時間が短縮されたこと。Testimに移行したことで、既存ツール利用時に比べテスト実行時間が半減した。
4点目は運用コストが半減したこと。「ツールを統一し、比較的操作が簡単でメンテナンスがしやすいことから、運用コストは半分になりました」(齊藤氏)

さらに齊藤氏は、Testim導入によって「予想外の恩恵も得られた」と言う。まず、ユーザー数とプロジェクト数に制限がないため、さまざまなメンバーが気軽に触れられる環境を構築でき、ユーザー基盤が広がったことだ。
続いて、テストに対する心理的ハードルが下がったこと。同社ではプログラムに明るいQAメンバーが少なく、テスト自動化に対して難しそうな印象を持っていた。だがTestimはGUIで簡単にテスト作成ができる。それを体験したことで、難しそうなイメージを払拭できた。「さらに嬉しいことに、その成功体験をきっかけに、メンバーの間でより前向きに挑戦しようという意識が広がり、JavaScriptなどのプログラミングをはじめとする技術領域への関心も高まりました」(齊藤氏)
さらに、品質意識やE2Eテスト自動化に対する社内認知の向上も、得られた効果の1つだ。その他、ブランチ機能を通じた開発フローの理解の向上や、テストデータ作成時間の削減などの副次的効果もあったという。
しかし、簡単であるがゆえに、積極的に運用する中で予想外の「事件」もあったという。現在、同社はプルリクエストベースでテストケースの運用管理をしているが、ある時、メンバーの1人が別のメンバーの作業ブランチに誤ってマージしてしまい、混乱が生じた。「運用時のこうした失敗談も共有しておきたい」と齊藤氏は語る。しかし、この失敗の嬉しい背景としては、社内の利用促進が進んだ結果として起こったことであり、さらにTestimにはこうした失敗をリカバリーする機能も備わっており安心して使える点も特徴だ、と付け加えられた。
「ローカライズ対応やGUIアクションの拡充、UI/UXの改善、AIエージェント機能の実装など、Testimに改善してほしい点もありますが、定量的な効果を出せただけではなく、社内のテスト文化に変革をもたらすことができました。これからもTestimを積極的に活用していきたい」と齊藤氏は展望を語る。
テストにおいて、スピードは非常に重要な要素になっている。品質とトレードオフにならないようにするためにも、「まずはTestimを使ってほしい」と片倉氏。そのときに重要なのは、組織単位で利用しやすいものを選ぶこと。片倉氏は「Testimは無償トライアルを利用できるので、関心のある方は試してほしい」と最後に呼びかけ、セッションを締めた。
2週間のTestim トライアルをぜひご検討ください! トライアルはこちらから。