Web surfing
This presentation is the property of its rightful owner.
Sponsored Links
1 / 12

Web Surfing PowerPoint PPT Presentation


  • 81 Views
  • Uploaded on
  • Presentation posted in: General

ICSE 2011 勉強会. Web Surfing. 担当:名大・阿草研. ICSE 2011 勉強会. Automated Cross-Browser Comparibility Testing. 担当:渥美 紀寿. Contribution. cross-browser の互換性問題について定義し,可能な解決案について議論 cross-browser compatibility の自動テスト手法の提案 オープンソースと商用の Web アプリケーションに適用して手法の評価. Cross-Browser Compatibility Problem.

Download Presentation

Web Surfing

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Web surfing

ICSE2011勉強会

Web Surfing

担当:名大・阿草研


Automated cross browser comparibility testing

ICSE2011勉強会

Automated Cross-Browser Comparibility Testing

担当:渥美 紀寿


Contribution

Contribution

  • cross-browser の互換性問題について定義し,可能な解決案について議論

  • cross-browser compatibility の自動テスト手法の提案

  • オープンソースと商用のWebアプリケーションに適用して手法の評価

ICSE2011 勉強会


Cross browser compatibility problem

Cross-Browser Compatibility Problem

  • クライアントサイドの内部状態の違い

  • ブラウザを通して確認可能な違い

  • A∩B

  • 提案手法で検出

  • B-A: CSSの表現の違いなど (本研究の対象外)

  • A-B: ユーザが観測できない DOM 表現の違い

    (互換性の問題ではない)

  • C: 検出したい問題

Figure 2: Browser incompatibility landscape.

ICSE2011 勉強会


Approach

Approach

  • 異なるブラウザ環境でWebアプリケーションをクロールし,キャプチャ,観測される振舞いを蓄積 (CRAWLJAX)⇒finite state machine

  • state graph の構築

    • 状態:Webブラウザの画面を表現

    • 遷移:ユーザのアクション(クリック,マウスオーバ)(アクションによってラベル付け)

  • ブラウザ間の比較

    • 状態を単に頂点とみなして比較

    • DOM の(screen model)比較

      • CSS などのブラウザ間の表現の違いを無視

        (valign=“center” or “middle”)

ICSE2011 勉強会


Evaluation

Evaluation

  • オープンソース,商用エンタープライズWeb Application を対象に実験

  • false-negative (C-D) : なし

  • false-positive (D-C) :

    • state graph のエッジのラベルの違い

    • 順番が入れ替わっても問題のないタグの順番違い

  • 検出された例

    • メニュアイコンが表示されるか否か

      <LABEL class=“icon—538763880”></LABEL>

    • Firefox のバグにより,load が完了しない

    • ブラウザによって実行されない JavaScript 関数

ICSE2011 勉強会


A framework for automated testing of javascript web applications

A Framework for Automated Testing of JavaScript Web Applications

担当:渥美 紀寿


Contribution1

Contribution

  • JavaScript Web アプリケーションに対する自動 feedback-directed テストのための柔軟なフレームワークの提案

  • 異なる優先付け方法,入力生成方法を用いることによって,実用的なテスト生成アルゴリズムを得られた

  • シンプルなアルゴリズムでも100テストでカバレッジが69%で,ベストなアルゴリズムで 72 %

ICSE2011 勉強会


Test framework

Test Framework

  • worklist ←(URL u0, State S0, Sequence s0)

  • worklistから優先度の高い順にテストケースを取り出す

    (u, S, s1...sn)

  • ページをロード

  • フォームフィールド,ブラウザパラメータのセット,イベントの実行

  • worklist中の優先度の再計算

  • シーケンスの最後のイベントの入力を変更したものをworklistに加える

    add(u, S, s1...sn-1.G.generateVariants(sn))

  • worklistにページ中のイベント piを全て加える

    add (u, S, s1...sn.G.generateNew(pi))

  • worklistにページ中の URL uiを全て加える

    add(ui, S0, s0)

  • 2 に戻る (worklist が空になるまで)

    (*) worklistへの追加は優先度を付けて行う

ICSE2011 勉強会


Prioritization and input generation

Prioritizationand Input Generation

  • Prioritization

  • Input Generation

    G0

    button parameter = 0

    empty string, unselected

    ソースプログラム中でセットされた定数をランダムに選択

    G1

    イベントハンドラの実行で利用される定数をランダムに選択

カバレッジが低いほど高い

シーケンスが長いほど高い

前に実行したイベントに関連するものほど高い

generateNew

generateVariants

ICSE2011 勉強会


Evaluation1

Evaluation

Table 1: Test generation Algorithms

  • シンプルなアルゴリズムでも高いカバレッジになった

  • いくつかのHTMLエラー,実行エラーを検出できた

  • このフレームワークを利用することによって,他の戦略を利用するなど今後の発展が期待できる

Table 2: Benchmark characteristics and summary of experimental results

ICSE2011 勉強会


Coalescing executions for fast uncertainty analysis

ICSE2011勉強会

Coalescing Executions for Fast Uncertainty Analysis


  • Login