dc.description.abstract |
This work has successfully summarized the topic of testing in the lifecycle of Software Development and can help a vast range of companies/organizations make the decision of which software testing strategies may be the best to implement in their case. Different types of testing have been compared to each other, and examples of each have been given. The topic of whether a software development team should implement automated testing, or stick to manual tests has been covered, showing when each of the types is valid, and hopefully could help with solving such a dilemma. Furthermore, testing in different Software Development methodologies was compared with emphasis put on the Agile methodologies following the DevOps practices. The DevOps practices are crucial for this work, as the tests implemented are to be run as part of the Continuous Deployment (Delivery) methodology.
Use Case diagrams and Use Case scenarios, along with Activity Diagrams, have been modelled, to help with the preparation of Test Scenarios and Test Cases for each of the scenarios. The importance of UML diagrams has also been highlighted from both the testers and the whole project team’s perspective. The implementation of tests was done in Python using Selenium (unittest framework), but to make better use of the prepared tests, they were run on the Azure DevOps platform.
The main goal of this work was to streamline an example software development project through the implementation and integration of automated tests. The OpenCart store now has a series of automated regression UI tests successfully running on Azure DevOps, which will greatly decrease the time and effort it would test to fully test the application during the release of its next version. All the authorized team members on the Azure DevOps have access to view past test results, and run new tests if need be |
pl_PL |