プログラミングにおける不安定なテストがプロジェクトの枠を超えて広がっていることを確認

OpenStack エコシステムの約 55% に波及し、1,156 日分の時間ロスが発生

システム情報科学研究院
亀井靖高 教授

ポイント

・クラウドや社会インフラを支えるソフトウェアでは、テストの不安定さが開発の遅れにつながっています。
・本研究では、不安定なテスト(※1)が1つのプロジェクトにとどまらず、エコシステム(※2)内の複数プロジェクトに広がる現象を確認しました。
・今回の成果は、開発時間の短縮、計算資源の削減、信頼できるソフトウェア基盤の実現に貢献すると期待されます。

概要

 ソフトウェアは、クラウド、金融、通信、行政サービスなど、私たちの生活や産業を支える重要な基盤です。こうした開発では、プログラムを変更するたびに、自動テスト(※3)で不具合の有無を確認します。しかし実際には、同じプログラムでも成功したり失敗したりする不安定なテストがあり、開発の遅れや計算資源の無駄を招いています。これまで、この問題は主に1つのプロジェクトの中で調べられてきましたが、多くのプロジェクトがコードやテスト環境を共有する現在、その影響がどこまで広がるかは十分に明らかになっていませんでした。
 本研究では、不安定なテストが1つのプロジェクトにとどまらず、複数のプロジェクトに広がることを明らかにしました。さらに、同じテストでも、あるプロジェクトでは不安定になり、別のプロジェクトでは安定して動く現象も確認しました。これは、テストの不安定さが個別の開発だけではなく、ソフトウェア群全体で捉えるべき課題であることを示しています。
 九州大学大学院システム情報科学研究院の亀井靖高教授らの国際共同研究グループは、大規模なクラウド基盤ソフトウェア群であるOpenStackのエコシステムを対象に、649プロジェクト、29,175件のコードレビュー(※4)、73,707件のパッチセット(修正案)を分析しました。その結果、Zuul CI(※5)を採用するOpenStackエコシステム内のプロジェクトの約55%が、複数プロジェクトに広がる不安定なテストの影響を受けていることがわかりました。また、複数のプロジェクトに影響する不安定なテストを1,535件、同じテストでもプロジェクトによって起き方が異なるものを1,105件確認しました。
 さらに、小さな部品を確認する基本的なテスト(単体テスト)の約7割が、複数のプロジェクトにまたがる不安定さを示しました。不安定さの主な原因は、サーバの一時的な障害や同時実行のずれ、依存ソフトの変化、CI(※5)設定の食い違いでした。加えて、この問題によって、コード確認の過程で合計1,156日分の時間が失われていました。今回の成果は、不安定なテストを早く見つける仕組みや、原因を自動で整理する仕組みの開発につながり、大規模ソフトウェアや社会インフラを支えるシステムの信頼性向上に役立つと期待されます。
 本研究成果は、米国の雑誌「IEEE Transactions on Software Engineering」(オンライン)に2026年5月26日(火)(日本時間)に掲載されました。

研究者からひとこと

 不安定なテスト(Flaky Test)は、開発者の時間と計算資源を奪う見えにくい問題です。本研究では、その不安定さが1つのプロジェクトの枠を超えて拡散し、エコシステム全体に波及している実態を明らかにしました。今回の成果を、より信頼できるソフトウェア開発環境の実現につなげたいと考えています。(亀井靖高)

用語解説

(※1) 不安定なテスト
同じプログラムを同じ条件で実行しても、成功したり失敗したりするテストです。 英語では「Flaky Test」と呼ばれます。

(※2) エコシステム
複数のソフトウェアや開発者・組織が、共通の部品やルールを共有しながら互いに依存し合い、ひとつの集合体として進化していく開発環境のことです。OpenStack のように、多数のプロジェクトが連携して開発される仕組みを指します。

(※3) 自動テスト
ソフトウェアが正しく動くかを、プログラムで自動的に確認する仕組みです。 人が毎回確認する手間を減らし、開発の速度と品質を高めます。

(※4) コードレビュー
プログラムを書いた本人以外の開発者が、変更内容を確認し、不具合や改善点を指摘する仕組みです。品質や安全性を保つために多くのソフトウェア開発で実施されています。

(※5) CI/Zuul CI
CI(Continuous Integretion)はプログラムに変更が加えられるたびに、自動テストやビルドを行い、不具合を早期に発見する仕組みです。Zuul CIは OpenStack 開発で使われている代表的な CI ツールの一つで、本研究の分析対象になっています。

詳細

本件の詳細についてはこちら

お問い合わせ先

システム情報科学研究院 亀井靖高  教授

北米最大級アラスカ金鉱開発のダイナミクス分析

[6/3開催]第233回アジア・オセアニア研究教育機構(Q-AOS)Brown Bag Seminar Series「農家の目を代替する植物センシング技術は作れるか?」

関連記事

  1. 抗血栓性高分子のバリア機能の原因を解明

    中性子散乱による中間水の状態の解析に成功先導物質化学研究所田中賢 教…

  2. 【11/29開催】中国社会科学院日本研究所と九州…

    ~九州大学&中国社会科学院日本研究所の交流会を開催します~11月29…

  3. カオス軌道を用いた地球–月系における探査機の軌道…

    工学研究院坂東 麻衣 教授月周回有人拠点への貨物輸送や惑星探査機の軌…

  4. 令和4年度第1回I²CNER Webinar

    令和4年度第1回I²CNER Webinarカーボンニュートラル・エ…

  5. 《6/25開催》 第192回アジア・オセアニア研…

    オカフオー エケネチユク チジオケ 准教授(工学研究院 機械工学部門)…

  6. 少ないモータで多数の関節を巧みに操る「移動関節式…

    ロボティクスに関するトップ国際論文誌でBest Paper Awardを受賞…

  7. Beyond 5G世代向け超小型発振器の設計指針…

    ~スピントロニクス技術で小型、周波数可変、室温動作可能なミリ波発振器を実現~…

  8. 世界初!熱圏宇宙空間におけるエネルギーカスケード…

    理学研究院リユウ・フイシン 教授人工衛星軌道の予測と宇宙天気予報の精…