Upload
koyaman-2
View
381
Download
4
Embed Size (px)
Citation preview
@koyaman2(コヤマン) on SIGSTJ ICST2015まるわかりDay
ひとことで言うと: SBST盛り上がってきた!課題は見えてるし、 あとはFiFiVerifyTool(自動バグ検出+修正+テスト)作ろう!
u Introduction u A brief history of SBST u Search Based Energy Testing(SBET) u Search Based Test Strategy
Identification(SBTSI) u Multi-Objective Search Based
Testing(MoSBaT) u Find,Fix,Verify(FiFiVerify) u Conclusion
u Search Based Software Testingはテストの最適化問題を策定した。
u それはSearch Based Software Engineeringの領域からコンピューティングサーチ技術をアタックに使うことができる。
u 我々は、不具合と修正方法・検証方法を自動的に見つけるFiFiVerifyツールのビジョンを結論づける。
u 我々はなぜFiFiVerifyツールというエキサイティングな挑戦を、SBSEコミュニティがすでに到達していると思うのかを説明する。
u SBST、盛り上がってまいりました! u いくつか課題がある。
u SBET u SBTSI u MoSBaT u FiFiVerifyTool
u SBSTの隆盛、トレンドについて見せた。 u そしてSearch Based Energy
Testing(SBET)という分野も出てきた。 ここに適合関数(fitness function)を再利用することでいくつかの問題を解決する。
u そして、複数の目的をもつテストデータの生成を例示した。
u そして我々は近い将来FiFiVerifyツールが実現されると考える!
u ヒューリスティックサーチの技法(近似解を求めるアルゴリズム)をソフトウェア工学に使うこと。
u 論文比でいうと、テストの割合は多い(というか、最初の頃はテストにしか使ってなかった)。
u やっとテスト関連の論文の割合が減ってきて健全になってきたように見える。
u ヒューリスティックサーチの技法をテストに使うこと。 u RepresentationとFitness Functionが必要。 u いろいろなテストに使える(論文が存在する)。 • Structural(構造) • Integration(統合) • Temporal(時間関連) • Combinatorial Interaction Test
(組み合わせ) • SPLs(プロダクトライン) • Augment • Regression • Functional(機能)
• Mutation(変異) • State Based(状態遷移) • Model Based(モデルベースド) • Black Box(ブラックボックス) • Failure Analysis • Security • Web/Service • Agents
u 使うアルゴリズム u Tabu Search u Particle Swarm Optimization u Ant Colonies u Genetic Algorithms u Genetic Programming u Hill Climbing u Simulated Annealing u Greedy u LP u Random u Estimation of Distribution Algorithms
u Search Based Energy Testingの略。 u 検索ベースエネルギーテスト u 研究が少ない。 u エネルギー消費についての最適化を検索する u 最初は粗い粒度で計測してホットスポットを見つ
けたりできそう u そのうち細かい粒度で計測できるのでは、と考え
ているようだ。 u エコだからあと20年注目されそう。
u Search Based Testing Strategy Identificationの略。
u 検索ベースドテスト戦略識別 u 対象に対して無限にあるテストから、バグを見つ
けるテストを検索し割り当てを計算する。 u 「特定の入力(specific inputs)」を見つけるので
はなく、「入力をする戦略(strategies for finding inputs)」を見つけるか。
u 共同進化的アプローチ(a co-evolutionary approach for SBTSI) バグの進化と、テストデータの進化。
u Multi Objective Sarch Based Testingの略。 u 多目的検索ベースドテスト u 複数のテスト目的を達成するテストデータ生
成をする。 u 多目的最適化の技術は検索ベースでよく使う
ので、あとはフレームワークを作ればできそう u 2つの非機能特性、例えばセキュリティとユー
ザビリティをテストするなど。
u Find,Fix,Verify Tool。 u 自動的に問題を検出、修正、検証するツール u 構築するための技術要素はもうある。
u 検証(Verify) u 障害局在化(fault localization)アプリ u 検索と修正(FiFi) u 検索と修正と検証(FiFiVerify)
u 近い未来、このツールができる!
u Paper u http://www0.cs.ucl.ac.uk/staff/mharman/icst15.pdf
u Slide u http://icst2015.ist.tu-graz.ac.at/icst2015_harman_s.pdf
u 関連資料 u SBSEのpaper
http://crest.cs.ucl.ac.uk/fileadmin/crest/sebasepaper/HarmanMZ09.pdf
u SBSTの簡易説明 http://a-lifelong-tester.cocolog-nifty.com/publications/STM07_Notes_on_new_software_testing_techniques.pdf
u ASTERによるレポート http://www.aster.or.jp/activities/investigation/icst2015.html