2021.12.17
【第2回】:ローコード開発を適用するメリット
昨今のサービス開発において、「ローコード開発」がトレンドとなっています。
ローコード開発とは、専用のGUIを用いてソースコードの記述量を最小限に抑える開発手法です。
開発・QA現場のQCD向上を実現する有力な手法であるものの、その適用は設計・コーディング (実装) 工程のみにとどまっています。これからのサービス開発には、テスト工程における「テスト自動化」にも、ローコードに対応したプラットフォームを構築すべきです。連載第1回では、ローコード開発の基礎やテスト工程への適用について解説しました。詳細については、次の記事をご一読ください。
「ローコード」で変わるテスト自動化プラットフォーム【第1回】:ローコード開発の基礎とテスト工程への適用
連載第2回となる本記事では、テスト工程にローコード開発を適用するメリットについてご紹介します。
テスト自動化にローコード開発を適用する3つのメリット
テスト自動化を試みる現場の多くが、様々な課題をクリアできずに断念してしまいます。あるいは、実現できても期待ほど費用対効果が上がらない、というケースも少なくありません。
ローコード開発は、テスト自動化におけるこうした現実を打開する有力な手法といえます。ローコード開発を適用する3つのメリットについて、順番に解説します。
なお、テスト自動化そのもののメリットについては、下記の記事をご一読ください。
開発・QA現場向け「テスト自動化」のススメ 【第1回】:テスト自動化の定義とメリット
メリット1:スキルに依存しないテスト自動化が可能
従来のテスト自動化では、テストスクリプトの大部分、あるいは全てをエンジニアがコーディングする必要がありました。サービスや開発環境に適したプログラミング言語を用いて、あらかじめ設計されたテストケースに沿ってソースコードを記述します。
高品質なテストスクリプトの作成には、高いプログラミングスキルを持つエンジニアが欠かせません。しかしスキルの高いエンジニアは、上流工程やリリース向けのコーディングにアサインされることが一般的であり、テスト自動化に十分な要員を確保することは容易ではありません。
ローコード開発を適用することで、こうした課題を解決することが可能です。ローコード対応のテスト自動化ツールを用いれば、GUI操作によって大部分のテストスクリプトを作成できます。ソースコードの記述量を大幅に削減できるため、経験の少ないエンジニアでもテスト自動化を実現できるのです。
メリット2:工数・コストの削減が可能
ローコード開発を適用しない場合、テスト自動化に要する工数はテストケース数に大きく影響を受けます。現代の複雑・高機能なサービスのテストでは、網羅性を担保するために膨大なテストケースが必要です。そのため、熟練したエンジニアでもテストスクリプトの作成に多大な工数を費やすこととなります。
またプログラミング言語の習得には、基礎レベルでも200時間以上の学習を要すると言われています。難易度の高い言語であれば、さらなる教育コストの増大は避けられません。テスト自動化に適した人材の育成には、工数・コスト面で大きな初期投資が必要となるのです。
一方ローコード開発を適用すれば、本来エンジニアが記述していたソースコードの大部分をツールでカバーできます。たとえば、ユーザーの操作を記録・再現できるツールを用いることで、テストケースの多くを自動で実行可能です。テストケース1件あたりに費やすエンジニアの工数を大幅に削減でき、人的コストの抑制につながります。
なおサービス更新時の回帰テストでは、いずれのテスト自動化方法でもテストスクリプトのメンテナンスが必要です。ローコード対応していれば、こうしたメンテナンスに要する工数も最小限に抑えられます。短いサイクルでテストが行われるアジャイル開発では、特に費用対効果が大きくなります。
メリット3:テスト品質・サービス品質の向上につながる
前述の通りローコード開発を適用しない場合は、テストスクリプトの大部分、あるいは全てをエンジニアがコーディングすることとなります。
特に品質を求めれば求めるほどテストケースは膨大となるため、より多くのリソースとコストを要します。たとえコーディングの担当者が熟練したエンジニアでも、人的ミスの発生を防ぐことは困難です。膨大なテストスクリプトの一部でも問題があれば、テストが適切に実行されず、バグの流出リスクが生じます。
ローコード開発を適用することはテスト品質、ひいてはサービス品質の向上にもつながります。ソースコードの記述の大部分をツールに代替することで、人的ミスの発生を大幅に削減できるのです。
また、ローコード対応のテスト自動化ツールではテスト結果の判定も自動化できるため、目視による判定ミスも防止できます。さらに、GUIによりカバレッジ (網羅率) を可視化し、テストケースの漏れを検出することも可能です。一例として、テスト自動化プラットフォーム構築サービス「ADOC Testing Service (ATS) for Eggplant」のコア・ツールである『Eggplant』などが挙げられます。
ローコード対応のテスト自動化を実現する上での課題とは?
今回は、ローコード開発をテスト自動化に適用するメリットについてお伝えしました。サービスや現場のニーズに合った高品質なテストプログラムを作成するために、ソースコードの記述は欠かせません。しかしソースコードの記述が、テスト自動化を適用するにあたって大きな障壁となります。
ソースコードの記述量を抑えるローコード開発は、テスト自動化を実現する上で有力な手法です。エンジニアのスキルに依存しない柔軟な要員確保が可能となるのはもちろん、QCD向上にもつながります。
一般にローコード対応のツールを導入することで、テスト自動化における課題の多くを解決できます。
その一方で、こうしたツールの活用だけでは解決できない課題も存在します。ローコード適用によりテスト工程で高い費用対効果を上げるためには、こうした課題やその解決策を把握することが重要です。
次回は、ローコード対応のテスト自動化を実現する上での課題についてご紹介します。
■ ADOC Testing Service for Eggplantの概要へ
■ ADOC Testing Service for Eggplantの資料請求へ
- 2022.1.14
- 【第4回】:ローコード開発適用のための最適解とは