Unit Testing and Automate Security Testing
In the current context, technology plays a crucial role in our lives, from the moment we wake up until the end of the day we interact directly or indirectly with this new world. Since it appeared, its purpose has been to come to the aid of humanity, to evolve in an efficient and effective way and with all that, it also represented an open door for people who used technology in an obscure way. The number of cases of cyber-attacks has increased exponentially, from data theft to the integrity of critical sectors (health, transport, energy, financial), every possibility was tried to be exploited, leading to serious consequences. Awareness is the first step towards safety, and further it is important how to use technology in order not to be the target of attacks, but also to stay informed and to become better persons in daily activities. This paper presents an analysis of automated testing for software applications, what it is, how automated testing is divided, the benefits brought by it, as well as unit testing details and some examples. Finally, automatic security testing is discussed, the most emerging web application security risks, suggestions about Android security testing tools and some automation frameworks. The focus is on creating an overview, differentiating between the terms used and exemplifying them.
Flaviu Fuior, ”An overview of some tools for automated testing of software applications,” in Romanian Journal of Information Technology and Automatic Control, Vol. 29, No. 3, 97-106, 2019.
Haneen A., Maham K., Zainab S., Muhammad I.B., Saima C., Furkh Z., Muhammad J., Summiyah S., Shahid N.B., “A Comparative Analysis of Quality Assurance of Mobile Applications using Automated Testing Tools” in International Journal of Advanced Computer Science and Applications,Vol. 8, No.7, 2017.
Alexander Aubert. (2020, June 25th). “Why invest in unit testing?”. Available: https://blog.atinternet.com/en/why-invest-in-unit-testing/.
Oliver Moradov. (2022, May 29th ). “Security Testing: Types, Tools, and Best Practices”. Available: https://brightsec.com/blog/security-testing/.
Tony Hsiang-Chih Hsu, “Android Security Testing” in Practical Security Automation and Testing, 2019, ch.7, Available: https://learning.oreilly.com/library/view/practical-security-automation/9781789802023/1f29016b-1353-4061-81c2-1a82a45d1ea6.xhtml.
Alexander Tarlinder, “Developer Testing Activities” in Developer Testing: Building Quality into Software, 2016, ch. 1, pp. 1-8.
Erik Fretheim, Marie Deschene, “The Development Environment”, in Secure Software System, ch. 13, pp. 221-227.
Andrew van der Stock, Brian Glas, Neil Smithline, Torsten Gigler. (2021 September 24). “OWASP Top 10:2021”, Available: https://owasp.org/Top10/.
LAMBDATEST, “Unit Testing Tutorial: A comprehensive Guide With Examples and Best Practices”. Available: https://www.lambdatest.com/learning-hub/unit-testing#n.
Richard Wells. (2018, June 6th). “What is unit testing?”, Available: https://www.linkedin.com/learning/unit-testing-and-test-driven-development-in-python/what-is-unit-testing?autoplay=true&u=2037052.
Tony Hsiang-Chih Hsu, “Automating existing security testing” in Practical Security Automation and Testing, 2019, ch. 2, Available: https://learning.oreilly.com/library/view/practical-security-automation/9781789802023/f3a726d8-f7a4-4cd0-a0c4-fe694e30bb69.xhtml.
Tony Hsiang-Chih Hsu, “Project Background And Automation Approach” in Practical Security Automation and Testing, 2019, ch. 10, Available: https://learning.oreilly.com/library/view/practical-security-automation/9781789802023/34cbdd6a-f26f-4ca0-8c83-a2f125615967.xhtml.
Alexander Tarlinder, “Almost Unit Tests” in Developer Testing: Building Quality into Software, 2016, ch. 11, pp. 151-157.
Alexander Tarlinder, “The Testing Vocabulary” in Developer Testing: Building Quality into Software, 2016, ch. 3, pp. 21-36.