Dynamic Characterization of Web Application Interfaces

  • Marc FisherII
  • Sebastian Elbaum
  • Gregg Rothermel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4422)


Web applications are increasingly prominent in society, serving a wide variety of user needs. Engineers seeking to enhance, test, and maintain these applications and third-party programmers wishing to utlize these applications need to understand their interfaces. In this paper, therefore, we present methodologies for characterizing the interfaces of web applications through a form of dynamic analysis, in which directed requests are sent to the application, and responses are analyzed to draw inferences about its interface. We also provide mechanisms to increase the scalability of the approach. Finally, we evaluate the approach’s performance on six non-trivial web applications.


Disjunctive Normal Form Minimum Price Dynamic Characterization Directed Request Valid Request 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Christensen, E., Curbera, F., Meredith, G., Weerawarana, S.: Web services description language (2001),
  2. 2.
    Fisher II., M., Elbaum, S., Rothermel, G.: Dynamic characterization of web application interfaces. Technical Report UNL-TR-CSE-2006-0010, University of Nebraska - Lincoln (2006)Google Scholar
  3. 3.
    GraphViz (2006),
  4. 4.
    Cohen, D., Dalal, S., Fredman, M., Patton, G.: The AETG system: An approach to testing based on combinatorial design. IEEE Trans. on Softw. Eng. 23(7), 437–444 (1997)CrossRefGoogle Scholar
  5. 5.
    Cohen, M., Colbourn, C., Gibbons, P., Mugridge, W.: Constructing test suites for interaction testing. In: Int’l Conf. on Softw. Eng., pp. 38–48 (2003)Google Scholar
  6. 6.
    Elbaum, S., Chilakamarri, K.R., Fisher II., M., Rothermel, G.: Web application characterization through directed requests. In: Int’l Workshop on Dynamic Analysis (2006)Google Scholar
  7. 7.
    Elbaum, S., Chilakamarri, K.R., Gopal, B., Rothermel, G.: Helping end-users “engineer” dependable web applications. In: Int’l Symp. on Softw. Reliability Eng., pp. 31–40 (2005)Google Scholar
  8. 8.
  9. 9.
    Benedikt, M., Freire, J., Godefroid, P.: VeriWeb: Automatically testing dynamic web sites. In: Int’l WWW Conf. (2002)Google Scholar
  10. 10.
    Elbaum, S., Rothermel, G., Karre, S., Fisher II., M.: Leveraging user-session data to support web application testing. IEEE Trans. on Softw. Eng., 187–201 (2005)Google Scholar
  11. 11.
    Ricca, F., Tonella, P.: Analysis and testing of web applications. In: Int’l Conf. on Softw. Eng., pp. 25–34 (2001)Google Scholar
  12. 12.
    Software QA and Testing Resource Center: Web Test Tools (2006),
  13. 13.
    Tilley, S., Shihong, H.: Evaluating the reverse engineering capabilities of web tools for understanding site content and structure: A case study. In: Int’l Conf. on Softw. Eng., pp. 514–523 (2001)Google Scholar
  14. 14.
    Ammons, G., Bodik, R., Larus, J.: Mining specifications. In: Symp. on Principles of Prog. Lang., pp. 4–16 (2002)Google Scholar
  15. 15.
    Ernst, M., Cockrell, J., Griswold, W., Notkin, D.: Dynamically discovering likely program invariants to support program evolution. In: Int’l Conf. on Softw. Eng., pp. 213–224 (1999)Google Scholar
  16. 16.
    Hangal, S., Lam, M.: Tracking down software bugs using automatic anomaly detection. In: Int’l Conf. on Softw. Eng., pp. 291–301 (2002)Google Scholar
  17. 17.
    Henkel, J., Diwan, A.: Discovering algebraic specifications from Java classes. In: Eur. Conf. on OO Prog., pp. 431–456 (2003)Google Scholar
  18. 18.
    Savage, S., Burrows, M., Nelson, G., Sobalvarro, P., Anderson, T.: Eraser: A dynamic data race detector for multithreaded programs. ACM Trans. on Comp. Systems 15(4), 391–411 (1997)CrossRefGoogle Scholar
  19. 19.
    Yang, J., Evans, D.: Dynamically inferring temporal properties. In: Workshop on Prog. Analysis for Softw. Tools and Eng., pp. 23–28 (2004)Google Scholar
  20. 20.
    Pacheco, C., Ernst, M.: Eclat: Automatic generation and classification of test inputs. In: Eur. Conf. on OO Prog., pp. 504–527 (2005)Google Scholar
  21. 21.
    Xie, T., Notkin, D.: Tool-assisted unit test selection based on operational violations. In: Int’l Conf. on Auto. Softw. Eng., pp. 40–48 (2003)Google Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Marc FisherII
    • 1
  • Sebastian Elbaum
    • 1
  • Gregg Rothermel
    • 1
  1. 1.University of Nebraska-Lincoln 

Personalised recommendations