Skip to main content

An Agent-Based Approach Toward Smart Software Testing

  • Conference paper
  • First Online:
Proceedings of the Future Technologies Conference (FTC) 2023, Volume 2 (FTC 2023)

Part of the book series: Lecture Notes in Networks and Systems ((LNNS,volume 814))

Included in the following conference series:

Abstract

As the field of software testing continues to advance, cooperative software testing and analysis has been proposed as a new methodology to help combat the challenges involved with performing highly effective software testing. Motivated by the understanding that auto-testing systems on their own are not powerful enough to address complications in testing complex real-world software, this model involves human-machine and machine-machine cooperation to make automated software testing processes more interactive and user-friendly. It is with this in mind that we propose an agent-based approach to software testing that involves teaming humans with virtual assistants on smart devices to help coordinate the tasks associated with testing complex real-world software. Currently, virtual assistants are widely used for interpersonal tasks such as purchasing items from restaurants, interfacing with mobile applications to create events and reminders, and composing and sending messages on behalf of the user. In this research, we create an agent-based framework and use it to demonstrate that a virtual assistant on a smart device can also be utilized to work closely with software testers to efficiently and effectively verify software functionality, generate reports, and communicate results with developers. We utilize unit testing to evaluate our proposed methodology by applying it to a set of Java projects. Our results show that virtual agents can be used to work with humans to coordinate tasks associated with unit-testing software.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Abdellatif, A., Badran, K., Shihab, E.: MSRBot: using bots to answer questions from software repositories. Empir. Softw. Eng. 25(3), 1834–1863 (2020). https://doi.org/10.1007/s10664-019-09788-5

    Article  Google Scholar 

  2. Adamopoulou, E., Moussiades, L.: An overview of Chatbot technology. In: Maglogiannis, I., Iliadis, L., Pimenidis, E. (eds.) AIAI 2020. IAICT, vol. 584, pp. 373–383. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-49186-4_31

    Chapter  Google Scholar 

  3. Ahuja, M.K., et al.: Opening the software engineering toolbox for the assessment of trustworthy AI. CoRR abs/2007.07768 (2020)

    Google Scholar 

  4. Aniche, M.: Effective Software Testing: A Developer’s Guide. Simon and Schuster (2022)

    Google Scholar 

  5. David, T.: Computational approaches to dialogue. In: The Routledge Handbook of Language and Dialogue, pp. 143–161. Routledge (2017)

    Google Scholar 

  6. Dialogflow: Dialogflow (2022). https://cloud.google.com/dialogflow/docs. Accessed 19 Aug 2022

  7. EclEmma. Java code coverage for eclipse (2023). Accessed 07 Feb 2023

    Google Scholar 

  8. Eclipse Foundation. Eclipse ide. https://www.eclipse.org/ide/. Accessed 20 Mar 2023

  9. Hao, D., Zhang, L., Zhang, L., Sun, J., Mei, H.: VIDA: visual interactive debugging. In: 2009 IEEE 31st International Conference on Software Engineering, pp. 583–586. IEEE (2009)

    Google Scholar 

  10. Dan Hao, L., Zhang, T.X., Mei, H., Sun, J.-S.: Interactive fault localization using test information. J. Comput. Sci. Technol. 24(5), 962–974 (2009)

    Article  Google Scholar 

  11. JUnit: Junit: Simple framework to write repeatable tests. https://junit.org/junit5/. Accessed 20 Dec 2022

  12. Nembhard, F., Carvalho, M.M.: Conversational code analysis: the future of secure coding, chap. 6. In: Radhakrishnan, S., Naduvath, S. (eds.) Coding Theory. IntechOpen, Rijeka (2021)

    Google Scholar 

  13. Nembhard, F.D., Carvalho, M.M.: Teaming humans with virtual assistants to detect and mitigate vulnerabilities. In: Arai, K. (eds.) Intelligent Computing, SAI 2023. LNNS, vol. 711 pp 565–576. Springer, Cham (2023). https://doi.org/10.1007/978-3-031-37717-4_35

  14. Slhoub, K., Carvalho, M.: Towards process standardization for requirements analysis of agent-based systems. Adv. Sci. Technol. Eng. Syst. J. 3(3), 80–91 (2018)

    Article  Google Scholar 

  15. Slhoub, K., Carvalho, M., Nembhard, F.: Evaluation and comparison of agent-oriented methodologies: a software engineering viewpoint. In: 2019 IEEE International Systems Conference (SysCon), pp. 1–8. IEEE (2019)

    Google Scholar 

  16. Tony, C., Balasubramanian, M., Ferreyra, N.E.D., Scandariato, R.: Conversational DevBots for secure programming: an empirical study on SKF Chatbot. In: Proceedings of the International Conference on Evaluation and Assessment in Software Engineering 2022, EASE 2022, New York, NY, USA, pp. 276–281. Association for Computing Machinery (2022)

    Google Scholar 

  17. Urli, S., Yu, Z., Seinturier, L., Monperrus, M.: How to design a program repair bot? Insights from the repairnator project. In: 2018 IEEE/ACM 40th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP), pp. 95–104. IEEE (2018)

    Google Scholar 

  18. Vogel, L.: How to use JUnit with eclipse (2017). https://www.vogella.com/tutorials/JUnit/article.html. Accessed 12 Jan 2023

  19. Wikipedia contributors. Tic-tac-toe—Wikipedia, the free encyclopedia (2002). Accessed 14 Jan 2023

    Google Scholar 

  20. Xiao, X., Xie, T., Tillmann, N., De Halleux, J.: Precise identification of problems for structural test generation. In: Proceedings of the 33rd International Conference on Software Engineering, pp. 611–620 (2011)

    Google Scholar 

  21. Xiao, Z., Zhou, M.X., Chen, W., Yang, H., Chi, C.: If i hear you correctly: building and evaluating interview Chatbots with active listening skills. In: Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems, pp. 1–14 (2020)

    Google Scholar 

  22. Tao Xie, L., Zhang, X.X., Xiong, Y.-F., Hao, D.: Cooperative software testing and analysis: advances and challenges. J. Comput. Sci. Technol. 29(4), 713–723 (2014)

    Article  Google Scholar 

  23. Zhang, S., Li, R., Li, J., He, Y., Wang, Y.: UniLife–game: a role-playing game for college life simulation (2021). https://github.com/sophiaszy/UniLife--Game

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fitzroy D. Nembhard .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Nembhard, F.D., Slhoub, K.A., Carvalho, M.M. (2023). An Agent-Based Approach Toward Smart Software Testing. In: Arai, K. (eds) Proceedings of the Future Technologies Conference (FTC) 2023, Volume 2. FTC 2023. Lecture Notes in Networks and Systems, vol 814. Springer, Cham. https://doi.org/10.1007/978-3-031-47451-4_21

Download citation

Publish with us

Policies and ethics