25.07.2014 Views

Analysis and Testing of Ajax-based Single-page Web Applications

Analysis and Testing of Ajax-based Single-page Web Applications

Analysis and Testing of Ajax-based Single-page Web Applications

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3.3.4 <strong>Single</strong>-<strong>page</strong> UI Model Definition . . . . . . . . . . . . . . 59<br />

3.3.5 Target UI Model Transformation . . . . . . . . . . . . . . 60<br />

3.4 Navigational Path Extraction . . . . . . . . . . . . . . . . . . . . 60<br />

3.4.1 Page Classification . . . . . . . . . . . . . . . . . . . . . . 60<br />

3.4.2 Schema-<strong>based</strong> Similarity . . . . . . . . . . . . . . . . . . . 61<br />

3.4.3 Schema-<strong>based</strong> Clustering . . . . . . . . . . . . . . . . . . 62<br />

3.4.4 Cluster Refinement/Reduction . . . . . . . . . . . . . . . 62<br />

3.5 UI Component Identification . . . . . . . . . . . . . . . . . . . . 64<br />

3.5.1 Differencing . . . . . . . . . . . . . . . . . . . . . . . . . . 64<br />

3.5.2 Identifying Elements . . . . . . . . . . . . . . . . . . . . . 65<br />

3.6 Tool Implementation: Retjax . . . . . . . . . . . . . . . . . . . . 65<br />

3.7 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br />

3.7.1 JPetStore . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br />

3.7.2 Reference Classification . . . . . . . . . . . . . . . . . . . 66<br />

3.7.3 Automatic Classification . . . . . . . . . . . . . . . . . . . 67<br />

3.7.4 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />

3.8 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70<br />

3.9 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71<br />

3.10 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . 72<br />

4 Performance <strong>Testing</strong> <strong>of</strong> Data Delivery Techniques for <strong>Ajax</strong> 75<br />

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75<br />

4.2 <strong>Web</strong>-<strong>based</strong> Real-time Notification . . . . . . . . . . . . . . . . . 78<br />

4.2.1 HTTP Pull . . . . . . . . . . . . . . . . . . . . . . . . . . . 78<br />

4.2.2 HTTP Streaming . . . . . . . . . . . . . . . . . . . . . . . 79<br />

4.2.3 Comet or Reverse <strong>Ajax</strong> . . . . . . . . . . . . . . . . . . . 79<br />

4.3 Comet Implementations . . . . . . . . . . . . . . . . . . . . . . . 81<br />

4.3.1 Cometd Framework <strong>and</strong> the Bayeux Protocol . . . . . . 81<br />

4.3.2 Direct <strong>Web</strong> Remoting (DWR) . . . . . . . . . . . . . . . . 82<br />

4.4 Experimental Design . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />

4.4.1 Goal <strong>and</strong> Research Questions . . . . . . . . . . . . . . . . 83<br />

4.4.2 Outline <strong>of</strong> the Proposed Approach . . . . . . . . . . . . . 83<br />

4.4.3 Independent Variables . . . . . . . . . . . . . . . . . . . . 84<br />

4.4.4 Dependent Variables . . . . . . . . . . . . . . . . . . . . . 84<br />

4.5 Distributed <strong>Testing</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . 85<br />

4.5.1 The Chiron Distributed <strong>Testing</strong> Framework . . . . . . . 86<br />

4.5.2 <strong>Testing</strong> Environment . . . . . . . . . . . . . . . . . . . . . 89<br />

4.5.3 Example Scenario . . . . . . . . . . . . . . . . . . . . . . . 90<br />

4.5.4 Sample Application: Stock Ticker . . . . . . . . . . . . . 91<br />

4.6 Results <strong>and</strong> Evaluation . . . . . . . . . . . . . . . . . . . . . . . . 92<br />

4.6.1 Publish Trip-time <strong>and</strong> Data Coherence . . . . . . . . . . 92<br />

4.6.2 Server Performance . . . . . . . . . . . . . . . . . . . . . 92<br />

4.6.3 Received Publish Messages . . . . . . . . . . . . . . . . . 95<br />

4.6.4 Received Unique Publish Messages . . . . . . . . . . . . 95<br />

4.6.5 Received Message Percentage . . . . . . . . . . . . . . . . 98<br />

4.6.6 Network Traffic . . . . . . . . . . . . . . . . . . . . . . . . 98<br />

Contents<br />

v

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!