Published October 2, 2017
| Version 10008224
Journal article
Open
Automated Java Testing: JUnit versus AspectJ
Authors/Creators
Description
Growing dependency of mankind on software
technology increases the need for thorough testing of the software
applications and automated testing techniques that support testing
activities. We have outlined our testing strategy for performing
various types of automated testing of Java applications using
AspectJ which has become the de-facto standard for Aspect Oriented
Programming (AOP). Likewise JUnit, a unit testing framework is
the most popular Java testing tool. In this paper, we have evaluated
our proposed AOP approach for automated testing and JUnit on
various parameters. First we have provided the similarity between
the two approaches and then we have done a detailed comparison
of the two testing techniques on factors like lines of testing code,
learning curve, testing of private members etc. We established that
our AOP testing approach using AspectJ has got several advantages
and is thus particularly more effective than JUnit.
technology increases the need for thorough testing of the software
applications and automated testing techniques that support testing
activities. We have outlined our testing strategy for performing
various types of automated testing of Java applications using
AspectJ which has become the de-facto standard for Aspect Oriented
Programming (AOP). Likewise JUnit, a unit testing framework is
the most popular Java testing tool. In this paper, we have evaluated
our proposed AOP approach for automated testing and JUnit on
various parameters. First we have provided the similarity between
the two approaches and then we have done a detailed comparison
of the two testing techniques on factors like lines of testing code,
learning curve, testing of private members etc. We established that
our AOP testing approach using AspectJ has got several advantages
and is thus particularly more effective than JUnit.
Files
10008224.pdf
Files
(158.4 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:28a97618bb084d120e3e136f867d508b
|
158.4 kB | Preview Download |
Additional details
References
- A. Hussain, A. Razak, and E. Mkpojiogu, "The perceived usability of automated testing tools for mobile applications," Journal of Engineering Science and Technology, vol. 12, pp. 89–97, 04 2017.
- P. S. Kochhar, F. Thung, N. Nagappan, T. Zimmermann, and D. Lo, "Understanding the test automation culture of app developers," in 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST), April 2015, pp. 1–10.
- M. Jain and D. Gopalani, "Use of aspects for testing software applications," in 2015 IEEE International Advance Computing Conference, June 2015, pp. 282–285.
- M. Jain and D. Gopalani, "Memory leakage testing using aspects," in 2015 International Conference on Applied and Theoretical Computing and Communication Technology, Oct 2015, pp. 436–440.
- M. Jain and D. Gopalani, "Aspect oriented programming and types of software testing," in 2016 Second International Conference on Computational Intelligence Communication Technology, Feb 2016, pp. 64–69.
- M. Jain and D. Gopalani, "Testing application security with aspects," in 2016 International Conference on Electrical, Electronics, and Optimization Techniques (ICEEOT), March 2016, pp. 3161–3165.
- F. V. C. Ficarra, C. de Castro Lozano, M. P. Jiménez, E. Nicol, A. Kratky, and M. Cipolla-Ficarra, Advances in New Technologies, Interactive Interfaces, and Communicability. Springer, 2011.
- A. Z. Javed, "Model-driven framework for context-dependent testing of components," Ph.D. dissertation, School of Information Technology and Electrical Engineering, The University of Queensland, August 2007.
- X. Li and X. Xie, "Research of software testing based on AOP," in IEEE 3rd International Conference on Intelligent Information Technology Application, vol. 1, 2009, pp. 187–189. [10] E. Duclos, S. L. Digabel, Y. G. Gueheneuc, and B. Adams, "Acre: An automated aspect creator for testing C++ applications," in IEEE 7th European Conference on Software Maintenance and Reengineering, 2013, pp. 121–130. [11] A. Sioud, "Gestion de cycle de vie des objets par aspects pour C++," Master's thesis, UQaC, 2006. [12] D. Sokenou and S. Herrmann, "Aspects for testing aspects?" in 1st Workshop on Testing Aspect-Oriented Programs, 2005. [13] S. Copty and S. Ur, "Multi-threaded testing with AOP is easy, and it finds bugs!" Lecture Notes in Computer Science, vol. 3648, pp. 740–749, 2005. [14] J. Pesonen, M. Katara, and T. Mikkonen, "Production-testing of embedded systems with aspects," Lecture Notes in Computer Science, vol. 3875, pp. 90–102, 2006. [15] S. L. Tsang, S. Clarke, and E. Baniassad, "An evaluation of aspect-oriented programming for Java-based real-time systems development," in Seventh IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, 2004. Proceedings., May 2004, pp. 291–300. [16] R. Laddad, AspectJ in Action: Practical Aspect-Oriented Programming. Greenwich, USA: Manning Publications Co., 2003. [17] D. Gotseva and M. Pavlov, "Aspect-oriented programming with AspectJ," International Journal of Computer Science Issues, pp. 212–218, 2012. [18] P. Bouillon, M. Burger, and A. Zeller, "Automated debugging in Eclipse: (at the touch of not even a button)," in Proceedings of the 2003 OOPSLA Workshop on Eclipse Technology eXchange, ser. Eclipse '03. New York, USA: ACM, 2003, pp. 1–5. [19] S. Tyagi and P. Tarau, "A most specific method finding algorithm for reflection based dynamic prolog-to-java interfaces," in PADL. Berlin, Heidelberg: Springer Berlin Heidelberg, 2001, pp. 322–326. [20] Z. Shams, "Reflection support: Java reflection made easy," The Open Software Engineering Journal, vol. 7, pp. 38–52, 01 2014. [21] C. Artho and A. Biere, "Advanced unit testing: How to scale up a unit test framework," in Proceedings of the 2006 International Workshop on Automation of Software Test, ser. AST '06. New York, USA: ACM, 2006, pp. 92–98. [22] D. R. Kuhn and V. Okun, "Pseudo exhaustive testing for software," in 30th Annual IEEE Software Engineering Workshop, 2006, pp. 153–158. [23] D. Rafi, K. Moses, K. Petersen, and M. Mantyla, "Testing non-functional requirements with aspects," in IEEE 7th International Workshop on Automation of Software Test AST, 2012, pp. 36–42.