Abstract
This paper presents DART, a framework for distributed automated regression testing of large-scale network applications. DART provides programmers writing distributed applications with a set of primitives for writing distributed tests and a runtime that executes distributed tests in a fast and efficient manner over a network of nodes. It provides a programming environment, scripted execution of multi-node commands, fault injection, and performance anomaly injection. We have implemented a prototype implementation of DART that implements a useful subset of the DART architecture and is targeted at the Emulab network emulation environment. Our prototype is functional, fast, and is currently being used to test the correctness, robustness, and performance of PIER, a distributed relational query processor.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Andersen, D., Balakrishnan, H., Kaashoek, F., Morris, R.: Resilient Overlay Networks. In: Proceedings of the 18th ACM Symposium on Operating Systems Principles (October 2001)
Andersen, D.G., Balakrishnan, H., Kaashoek, M.F., Morris, R.: Experience with an Evolving Overlay Network Testbed. ACM Computer Communications Review 33(3), 13–19 (2003)
Arpaci-Dusseau, R.H.: Performance Availability for Networks of Workstations. PhD thesis, University of California, Berkeley (1999)
Beck, K.: Extreme Programming Explained: Embrace Change, October 1999. Addison-Wesley Professional, Reading (1999)
Dabek, F., Kaashoek, M.F., Karger, D., Morris, R., Stoica, I.: Wide-area cooperative storage with CFS. In: Proceedings of the 18th ACM Symposium on Operating Systems Principles (October 2001)
Demers, A., Keshav, S., Shenker, S.: Anaylsis and Simulation of a Fair Queueing Algorithm. In: Proceedings of the 35th IEEE Computer Society International Conference (COMPCON), March 1990, pp. 380–386 (1990)
Ellen, W., Zegura, K.C., Bhattacharjee, S.: How to Model an Internetwork. In: Proceedings of IEEE Infocom 1996 (March 1996)
Freedman, M., Freudenthal, E., Mazières, D.: Democratizing Content Publication with Coral. In: Proceedings of the 1st Symposium on Networked Systems Design and Implementation (March 2004)
Hand, S.: Self-Paging in the Nemesis Operating System. In: Proceedings of the 3rd USENIX Symposium on Operating Systems Design and Implementation (February 1999)
Huebsch, R., Hellerstein, J.M., Lanham, N., Loo, B.T., Shenker, S., Stoica, I.: Querying the Internet with PIER. In: Proceedings of the 29th International Conference on Very Large Data Bases (September 2003)
Kubiatowicz, J., Bindel, D., Chen, Y., Czerwinski, S., Eaton, P., Geels, D., Gummadi, R., Rhea, S., Weatherspoon, H., Weimer, W., Wells, C., Zhao, B.: OceanStore: An Architecture for Global-Scale Persistent Storage. In: Proceedings of the Ninth international Conference on Architectural Support for Programming Languages and Operating Systems (November 2002)
Muthitacharoen, A., Morris, R., Gil, T., Chen, B.: Ivy: A Read/Write Peer-to-peer File System. In: Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation (December 2002)
Oppenheimer, D., Vatkovskiy, V., Patterson, D.A.: Towards a Framework for Automated Robustness Evaluation of Distributed Services. In: Proceedings of the 2nd Bertinoro Workshop on Future Directions in Distributed Computing (FuDiCo II): Survivability: Obstacles and Solutions (June 2004)
Pai, V.S., Wang, L., Park, K., Pang, R., Peterson, L.: The Dark Side of the Web: An Open Proxy’s View. In: Proceedings of the 2nd Workshop on Hot Topics in Networks (November 2003)
Peterson, L., Culler, D., Anderson, T., Roscoe, T.: A Blueprint for Introducing Disruptive Technology into the Internet. In: Proceedings of HotNets-I (October 2002)
Petrou, D., Rodrigues, S.H., Vahdat, A., Anderson, T.E.: GLUnix: A Global Layer Unix for a Network of Workstations. In: Software - Practice and Experience 28, pp. 929–961 (1998)
Ramasubramanian, V., Sirer, E.G.: The Design and Implementation of a Next Generation Name Service for the Internet. In: Proceedings of the ACM SIGCOMM 2004 Conference on Communications Architectures and Protocols (August 2004)
Ratnasamy, S., Francis, P., Handley, M., Karp, R., Shenker, S.: A Scalable Content-Addressable Network. In: Proceedings of the ACM SIGCOMM 2001 Conference on Communications Architectures and Protocols (August 2001)
Rhea, S., Geels, D., Roscoe, T., Kubiatowicz, J.: Handling Churn in a DHT. In: Proceedings of the USENIX 2004 Annual Technical Conference (June 2004)
Rizzo, L.: Dummynet and Forward Error Correction. In: Proceedings of the USENIX 1998 Annual Technical Conference (FREENIX Track) (June 1998)
Rowstron, A., Druschel, P.: Pastry: Scalable, Distributed Object Location and Routing for Large-scale Peer-to-peer Systems. In: Proceedings of the 18th IFIP/ACM International Conference on Distributed Systems Platforms (November 2001)
Saroiu, S., Gummadi, K.P., Gribble, S.D.: Measuring and Analyzing the Characteristics of Napster and Gnutella Hosts. Multimedia Systems 9, 170–184 (2003)
Shenoy, P., Vin, H.M.: Cello: A Disk Scheduling Framework for Next Generation Operating Systems. In: Proceedings of the 1998 ACM SIGMETRICS Conference, June 1998, pp. 44–55 (1998)
Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. In: Proceedings of the ACM SIGCOMM 2001 Conference on Communications Architectures and Protocols (September 2001)
Subramanian, L., Stoica, I., Balakrishnan, H., Katz, R.: OverQoS: An Overlay Based Architecture for Enhancing Internet QoS. In: Proceedings of the 1st Symposium on Networked Systems Design and Implementation (March 2004)
Vahdat, A., Yocum, K., Walsh, K., Mahadevan, P., Kostic, D., Chase, J., Becker, D.: Scalability and Accuracy in a Large-Scale Network Emulator. In: Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation (December 2002)
Vogels, W.: TestZilla: a Framework for the Testing of Large-Scale Distributed Systems, Available from http://www.cs.cornell.edu/vogels/TestZilla/default.htm
Waldspurger, C.A., Weihl, W.E.: Lottery Scheduling: Flexible Proportional-Share Resource Management. In: Proceedings of the 1st USENIX Symposium on Operating Systems Design and Implementation, pp. 1–11 (1994)
Wawrzoniak, M., Peterson, L., Roscoe, T.: Sophia: An Information Plane for Networked Systems. In: Proceedings of the 2nd Workshop on Hot Topics in Networks (November 2003)
White, B., Lepreau, J., Stoller, L., Ricci, R., Guruprasad, S., Newbold, M., Hibler, M., Barb, C., Joglekar, A.: An Integrated Experimental Environment for Distributed Systems and Networks. In: Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation (December 2002)
Zhao, B.Y., Kubiatowicz, J.D., Joseph, A.D.: Tapestry: An Infrastructure for Fault-tolerant Wide-area Location and Routing. Tech. Rep. CSD-01-1141, University of California, Berkeley, Computer Science Division (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chun, B.N. (2005). DART: Distributed Automated Regression Testing for Large-Scale Network Applications. In: Higashino, T. (eds) Principles of Distributed Systems. OPODIS 2004. Lecture Notes in Computer Science, vol 3544. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11516798_2
Download citation
DOI: https://doi.org/10.1007/11516798_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-27324-0
Online ISBN: 978-3-540-31584-1
eBook Packages: Computer ScienceComputer Science (R0)