Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2610384.2628051acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

ProCrawl: mining test models from multi-user web applications

Published: 21 July 2014 Publication History

Abstract

Today's web applications demand very high release cycles--and consequently, frequent tests. Automating these tests typically requires a behavior model: A description of the states the application can be in, the transitions between these states, and the expected results. Furthermore one needs scripts to make the abstract actions (transitions) in the model executable. However, specifying such behavior models and writing the necessary scripts manually is a hard task. We present ProCrawl (Process Crawler), a tool that automatically mines (extended) finite-state machines from (multi-user) web applications and generates executable test scripts. ProCrawl explores the behavior of the application by systematically generating program runs and observing changes on the application's user interface. The resulting models can be directly used for effective model-based testing, in particular regression testing.

References

[1]
J.-R. Abrial. The B-book: Assigning Programs to Meanings. Cambridge University Press, New York, USA, 1996.
[2]
R. V. Binder. Testing Object-Oriented Systems: Models, Patterns, and Tools. Object Technology Series. Addison Wesley, 1999.
[3]
K. T. Cheng and A. S. Krishnakumar. Automatic functional test generation using the extended finite state machine model. In Proc. of the 30th International Design Automation Conference, DAC ’93, pages 86–91, New York, USA, 1993. ACM.
[4]
J. C. Corbett, M. B. Dwyer, J. Hatcliff, S. Laubach, C. S. Pasareanu, Robby, and H. Zheng. Bandera: extracting finite-state models from java source code. In ICSE, pages 439–448, New York, USA, 2000. ACM.
[5]
V. Dallmeier, N. Knopp, C. Mallon, S. Hack, and A. Zeller. Generating test cases for specification mining. In ISSTA, pages 85–96, New York, USA, 2010. ACM.
[6]
M. D. Ernst, J. Cockrell, W. G. Griswold, and D. Notkin. Dynamically discovering likely program invariants to support program evolution. IEEE Trans. Softw. Eng., 27(2):99–123, 2001.
[7]
D. Lorenzoli, L. Mariani, and M. Pezzè. Automatic generation of software behavioral models. In ICSE, pages 501–510, New York, USA, 2008. ACM.
[8]
A. Mesbah, A. Van Deursen, and S. Lenselink. Crawling Ajax-based web applications through dynamic analysis of user interface state changes. ACM Trans. Web, 6(1):1–30, Mar. 2012.
[9]
J. R. Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann, San Francisco, CA, USA, 1993.
[10]
M. Schur, A. Roth, and A. Zeller. Mining behavior models from enterprise web applications. In ESEC/SIGSOFT FSE, pages 422–432, 2013.
[11]
N. Walkinshaw, B. Lambeau, C. Damas, K. Bogdanov, and P. Dupont. Stamina: A competition to encourage the development and assessment of software model inference techniques. Empirical Softw. Eng., 18(4):791–824, Aug. 2013.
[12]
N. Walkinshaw, R. Taylor, and J. Derrick. Inferring extended finite state machine models from software executions. In WCRE, pages 301–310, 2013.
[13]
S. Wieczorek, V. Kozyura, A. Roth, M. Leuschel, J. Bendisposto, D. Plagge, and I. Schieferdecker. Applying model checking to generate model-based integration tests from choreography models. In TestCom/FATES, pages 179–194, 2009.
[14]
A. Zeller. Program analysis: A hierarchy. In ICSE Workshop on Dynamic Analysis (WODA 2003), pages 6–9, 2003.

Cited By

View all
  • (2021)Automatic Web Testing Using Curiosity-Driven Reinforcement LearningProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00048(423-435)Online publication date: 22-May-2021
  • (2020)Fully Automated HTML and JavaScript Rewriting for Constructing a Self‐healing Web ProxySoftware Testing, Verification and Reliability10.1002/stvr.173130:2Online publication date: 14-Feb-2020
  • (2018)Fully Automated HTML and Javascript Rewriting for Constructing a Self-Healing Web Proxy2018 IEEE 29th International Symposium on Software Reliability Engineering (ISSRE)10.1109/ISSRE.2018.00012(1-12)Online publication date: Oct-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ISSTA 2014: Proceedings of the 2014 International Symposium on Software Testing and Analysis
July 2014
460 pages
ISBN:9781450326452
DOI:10.1145/2610384
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 July 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Specification mining
  2. dynamic analysis
  3. model-based testing

Qualifiers

  • Research-article

Conference

ISSTA '14
Sponsor:

Acceptance Rates

Overall Acceptance Rate 58 of 213 submissions, 27%

Upcoming Conference

ISSTA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)1
Reflects downloads up to 14 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Automatic Web Testing Using Curiosity-Driven Reinforcement LearningProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00048(423-435)Online publication date: 22-May-2021
  • (2020)Fully Automated HTML and JavaScript Rewriting for Constructing a Self‐healing Web ProxySoftware Testing, Verification and Reliability10.1002/stvr.173130:2Online publication date: 14-Feb-2020
  • (2018)Fully Automated HTML and Javascript Rewriting for Constructing a Self-Healing Web Proxy2018 IEEE 29th International Symposium on Software Reliability Engineering (ISSRE)10.1109/ISSRE.2018.00012(1-12)Online publication date: Oct-2018
  • (2017)H-Switch CoverSoftware Quality Journal10.1007/s11219-015-9300-825:2(373-405)Online publication date: 1-Jun-2017
  • (2015)Automating performance bottleneck detection using search-based application profilingProceedings of the 2015 International Symposium on Software Testing and Analysis10.1145/2771783.2771816(270-281)Online publication date: 13-Jul-2015
  • (2015)Mining Workflow Models from Web ApplicationsIEEE Transactions on Software Engineering10.1109/TSE.2015.246154241:12(1184-1201)Online publication date: 1-Dec-2015
  • (2015)Recent Advances in Automatic Black-Box Testing10.1016/bs.adcom.2015.04.002(157-193)Online publication date: 2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media