2014 Fiscal Year Research-status Report
Webアプリケーションのテストにおける正確で実用的な評価指標及び改善手法の確立
Project/Area Number |
26730043
|
Research Institution | National Institute of Informatics |
Principal Investigator |
坂本 一憲 国立情報学研究所, アーキテクチャ科学研究系, 助教 (60609139)
|
Project Period (FY) |
2014-04-01 – 2017-03-31
|
Keywords | テストケース評価指標 / HTML文書の差分計算 / 動的部分 / テストオラクル |
Outline of Annual Research Achievements |
本研究では,(A) Webアプリケーションの正確で実用的なテストケース評価指標の確立,(B) 監視処理を生成するテストケース改善手法の確立,(C) 実Webアプリ開発における有効性の確認に取り組む.本年度は前述の(A)および(B)に着手して,以下で述べるような成果が得られた.
(A)の評価指標を確立するために,Webページ中の動的部分に対して,テスト中に参照した割合を計算することで,従来のテストカバレッジとは異なる評価指標の提案を行った.また,Webページ中の動的部分を検出するために,HTMLテンプレートを解析するだけではなく,同一だと思われるWebページ間において,HTML文書の差分を計算することで,動的部分を検出する手法を開発した.Webページは必ずしもHTMLテンプレートから生成されるわけではなく,JavaScriptコード等の操作によっても生成されるため,最終的な成果物であるWebページのみから動的部分を生成することで,提案する評価指標を利用可能な範囲の拡大に成功した.
(B)WebページのHTML文書に対する差分計算から抽出した動的部分について記録することで,リグレッションテストを実施する際に,記録した動的部分が変化したかどうかを確認するテストオラクルを生成する手法を開発した.従来手法ではWebページの内容を全て記録して,ページ内容が変化したかどうかを検出していたが,バグによる変化だけでなく,仕様変更による変化を大量に検出する問題が存在する.一方,提案手法では動的部分のみについて変化を検出するため,仕様変更による変化の検出を抑えることができ,その結果,仕様変更時の保守コストを低減することに成功した.
|
Current Status of Research Progress |
Current Status of Research Progress
1: Research has progressed more than it was originally planned.
Reason
当初の予定では,(B) 監視処理を生成するテストケース改善手法の確立については,平成27年度に実施する予定であった.しかし,(A) Webアプリケーションの正確で実用的なテストケース評価指標の確立を実施する上で開発した,HTML文書の差分計算によるWebページ中の動的部分の抽出手法を利用することで,容易に保守コストの低いテストオラクルを生成できることに気付いた.そのため,(A)を構成する実施項目の一つである,提案する評価指標の正確性・実用性の評価を後回しにして,先行して,テストオラクルの自動生成によるテストケース改善手法の提案,つまり,(B)の研究課題を実施した.
したがって,当初の計画通りに研究が進んでいるわけではないが,平成27年度に実施予定の研究課題の大半が既に完了しており,平成26年度の研究課題が一部残ってはいるものの,全体でみると当初の計画よりも研究が進んでいるという状態になっている.
|
Strategy for Future Research Activity |
平成26度に開発したHTML文書間の差分に基づく,Webページ中の動的部分の抽出手法を応用することで,(A) Webアプリケーションの正確で実用的なテストケース評価指標の確立,および,(B) 監視処理を生成するテストケース改善手法の確立の大半が完了している.一方で,指標および手法の評価は1つのWebアプリケーションでのみ実験を行っており,十分な評価の実施が完了していない. オープンソースソフトウェアのWebアプリケーションを対象として評価を実施することも考えられるが,本研究の最後の課題である,(C) 実Webアプリ開発における有効性の確認を期間中に実施する必要があるため,先行して(C)を実施することで,(A)および(B)の評価を行うことを検討する.
また,HTML文書館の差分計算では,該当するWebページを開く操作内容に関わらず変化する部分(例えば,時刻の表示部分やログイン中のユーザ数)も動的部分として抽出してしまうため,不必要な箇所まで動的部分と解釈してしまう問題がある.そこで,操作内容というコンテキストに依存せずに変化する部分を取り除くために,同じ操作内容で何度も同じWebページを開き,その時点で変化する箇所があった場合は,動的部分から取り除くという工夫を実施する予定である.
|
Causes of Carryover |
平成26年度は物品費,旅費,人件費・謝金について計画当初よりも支出が少ない結果となった.研究実績で述べたように,提案手法の評価を先送りしたことから,評価実施用のPC購入が当該年度で不要になったため,物品費の支出が少なくなった.なお,小規模な実験をする上でPC購入の代わりにサーバレンタルを行った.旅費については,学会発表よりも論文誌の執筆に注力したため,支出が少なくなった.人件費・謝金については,当初,雇用を予定していた研究補助者の都合のため雇用ができなくなり,また,謝金が必要な被験者実験を行わなかったため,支出がなくなった.
|
Expenditure Plan for Carryover Budget |
平成27年度は大規模な評価実験を予定しており,高性能なPCを物品費から支出して購入する予定である.また,国際会議への投稿を予定しており,海外出張費を旅費から支出する予定である.さらに,新たな研究補助者の雇用および謝金を用いた被験者実験を予定しており,人件費・謝金から支出する予定である.その他の費用については計画通り使用する予定である.
|
Research Products
(1 results)