Software Testing Best Practices in Large-Scale Projects

Authors

  • Mouna Mothey  Independent Researcher, USA

DOI:

https://doi.org/10.32628/CSEIT182546

Keywords:

Software Development Lifecycle, Software Applications, Development Process, Software Quality, Automation Testing, Test Driven, Test Data, Test Optimisation, Test Cases.

Abstract

Innovative and long-lasting testing techniques are required as the difficulties of testing software programs rise in tandem with their complexity and scope. —A crucial step in the software development process is software testing. Unfortunately, despite testing efforts, defects still plague many projects, and testing still consumes a large amount of time and money. Software testing offers a way to lower the system's total cost and mistake rate. To improve software quality, a variety of software testing approaches, strategies, and tools are available. Given its importance in both the earlier and later creation phases, software validation is an essential component of the life cycle of software development. Should be supported by improved and effective processes and procedures. This article offers a brief overview of software testing, including its goals and fundamentals. Additionally it also responds to inquiries concerning the fundamental abilities needed for software testers, or those who want to pursue a career in testing. Focuses on the fundamentals that are considered while creating test cases and planning. Writing effective test cases is another topic covered in this article. This is among the crucial elements in testing.

References

  1. E. Daka and G. Fraser, “A survey on unit testing practices and problems,” in ISSRE, 2014, pp. 201–211.
  2. X. Xia, D. Lo, P. S. Kochhar, Z. Xing, X. Wang, and S. Li, “Experience report: An industrial experience report on test outsourcing practices,” in ISSRE, 2015, pp. 370–380.
  3. X. Xia, D. Lo, J. Tang, and S. Li, “Customer satisfaction feedback in an IT outsourcing company: a case study on the Insigma Hengtian company,” in EASE, 2015, pp. 34:1–34:5
  4. X. Xia, D. Lo, F. Zhu, X. Wang, and B. Zhou, “Software internationalization and localization: An industrial experience,” in ICECCS, 2013, pp. 222–231.
  5. R. Opdenakker, “Advantages and disadvantages of four interview techniques in qualitative research,” Forum: Qualitative Social Research, (Last accessed on March 9, 2016), vol. 7, no. 4, 2006.
  6. B. Ray, D. Posnett, V. Filkov, and P. Devanbu, “A large scale study of programming languages and code quality in github,” in FSE, 2014, pp. 155–165.
  7. A. Zaidman, B. V. Rompaey, A. van Deursen, and S. Demeyer, “Studying the coevolution of production and test code in open source and industrial developer test processes through repository mining,” Empirical Software Engineering, vol. 16, no. 3, pp. 325–364, 2011.
  8. J. Cleland-Huang and J. Guo, “Towards more intelligent trace retrieval algorithms,” in RAISE, 2014, pp. 1–6.
  9. G. Meszaros, XUnit Test Patterns: Refactoring Test Code. Prentice Hall PTR, 2006.
  10. B. V. Rompaey, B. D. Bois, S. Demeyer, and M. Rieger, “On the detection of test smells: A metrics-based approach for general fixture and eager test,” IEEE Transactions on Software Engineering, vol. 33, no. 12, pp. 800–817, 2007.
  11. M. Greiler, A. van Deursen, and M.-A. Storey, “Automated detection of test fixture strategies and smells,” in ICST, 2013, pp. 322–331.
  12. F. Palomba and A. Zaidman, “Does refactoring of test smells induce fixing flaky tests?” in ICSME, 2017, pp. 1–12.
  13. Guide to the Software Engineering Body of Knowledge, Swebok, A project of the IEEE Computer Society Professional Practices Committee, 2004.
  14. E. F. Miller, “Introduction to Software Testing Technology”, Software Testing & Validation Techniques, IEEE, 1981, pp. 4-16.
  15. M. Shaw, “Prospects for an engineering discipline of software,” IEEE Software, November 1990, pp.15-24.
  16. D. Nicola et al. "A grey-box approach to the functional testing of complex automatic train protection systems." Dependable Computing-EDCC 5. Springer Berlin Heidelberg, 2005. 305-317.
  17. J. A. Whittaker, “What is Software Testing? And Why Is It So Hard?” IEEE Software, 2000, pp. 70-79.
  18. N. Jenkins, “A Software Testing Primer”, 2008, pp.3-15.
  19. Luo, Lu, and Carnegie, "Software Testing Techniques-Technology Maturation and Research Strategies’, Institute for Software Research International-Carnegie Mellon University, Pittsburgh, Technical Report, 2010.
  20. M. S. Sharmila and E. Ramadevi. "Analysis of performance testing on web application." International Journal of Advanced Research in Computer and Communication Engineering, 2014.
  21. Siripong Roongruangsuwan, Jirapun Daengdej” Test Case Prioritization Techniques”Journal of Theoretical and Applied Information Technology” (2005 – 2010).
  22. Shivkumar Hasmukhrai Trivedi “Software Testing Techniques “Volume 2, Issue 10, October 2012.
  23. S. Sampath and R. Bryce, Improving the effectiveness of Test Suite Reduction for User-Session-Based Testing of Web Applications, Elsevier Information and Software Technology Journal, 2012.
  24. B. Pedersen and S. Manchester, Test Suite Prioritization by Costbased Combinatorial Interaction Coverage International Journal of Systems Assurance Engineering and Management, SPRINGER, 2011.
  25. S. Sprenkle et al., "Applying Concept Analysis to User-sessionbased Testing of Web Applications", IEEE Transactions on Software Engineering, Vol. 33, No. 10, 2007, pp. 643 – 658.
  26. C. Michael, “Generating software test data by evolution, Software engineering”, IEEE Transaction, Volume: 27, 2001.
  27. A. Memon, “A Uniform Representation of Hybrid Criteria for Regression Testing”, Transactions on Software Engineering (TSE), 2013.
  28. Kuhn, A.: On extracting unit tests from interactive live programming sessions. International Conference on Software Engineering, pp. 1241-1244 (2013).
  29. Mihindukulasooriya, N., Rizzo, G., Troncy, R., Corcho, O., García-Castro, and R.: A two-fold quality assurance approach for dynamic knowledge bases: The 3cixty use case. CEUR Workshop Proceedings (2016).
  30. Rashmi, N., Suma, V.: Defect Detection Efficiency of the Combined Approach. Advances in Intelligent Systems and Computing 249 VOLUME II, pp. 485-490 (2014).
  31. Schaefer, C.J., Do, and H.: Model-based exploratory testing: A controlled experiment. 7th International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2014, pp. 284-293 (2014).
  32. Ghazi, A.N., Garigapati, R.P., Petersen, K.: Checklists to support test charter design in exploratory testing. Lecture Notes in Business Information Processing 283, pp. 251-258 (2017).
  33. Sviridova, T., Stakhova, D., Marikutsa, U.: Exploratory testing: Management solution. 12th International Conference: The Experience of Designing and Application of CAD Systems in Microelectronics, CADSM 2013, pp. 361 (2013).
  34. Ghazi, A.N., Petersen, K., Bjarnason, E., Runeson, P.: Levels of Exploration in Exploratory Testing: From Freestyle to Fully Scripted. IEEE Access 6, pp. 26416-26423 (2018).
  35. Raappana, P., Saukkoriipi, S., Tervonen, I., Mäntylä, M.V.: The Effect of Team Exploratory Testing - Experience Report from F-Secure. International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2016, pp. 295-304 (2016).

Downloads

Published

2018-08-30

Issue

Section

Research Articles

How to Cite

[1]
Mouna Mothey, " Software Testing Best Practices in Large-Scale Projects" International Journal of Scientific Research in Computer Science, Engineering and Information Technology(IJSRCSEIT), ISSN : 2456-3307, Volume 3, Issue 6, pp.712-721, July-August-2018. Available at doi : https://doi.org/10.32628/CSEIT182546