Software Tester

JUnit Mockito TDD Java

Work Experience Overview

This role focused on implementing comprehensive software testing methodologies to ensure product reliability and compliance with requirements. Working within a specialised quality assurance team, I developed and executed test strategies for complex e-commerce systems with particular emphasis on discount calculation logic and payment processing validation.

As part of the Software Testing Team at King's College London, I was responsible for designing and implementing testing frameworks for a sophisticated shopping cart system. This project-based position involved working in a structured testing environment with an emphasis on systematic fault identification and comprehensive test coverage.

Code Coverage: 92%  |  Critical Defects Found: 14

Key Outcomes

Identified 14 critical functional defects in the e-commerce system that would have impacted a large majority of customer transactions
Developed a comprehensive test suite that achieved 92% code coverage across core system components
Reduced potential customer payment errors significantly through rigorous boundary value testing

Key Responsibilities

  • Designed and implemented test cases for complex e-commerce functionality
  • Conducted thorough structural testing of discount calculation algorithms
  • Performed boundary value analysis to identify edge cases in payment processing
  • Implemented mock objects to isolate and test individual system components
  • Documented and reported discovered defects with detailed reproduction steps
  • Verified critical system functionality against specified requirements
  • Created automated test suites to ensure ongoing system reliability

Selected examples from my software testing work illustrating defect identification and verification processes. More comprehensive testing documentation and test cases are available upon request.

Technical Achievements

  • Successfully implemented unit tests with mocking frameworks to isolate system components
  • Developed comprehensive boundary value tests for complex numerical calculations
  • Created test suites for multiple discount strategies and customer classification types
  • Conducted thorough negative testing to validate system error handling
  • Implemented structural testing to ensure all logic paths were properly validated
  • Performed integration testing across multiple interdependent system components
  • Developed detailed test documentation with clear traceability to requirements

Technologies Used

JUnit Testing Framework
Mockito
Code Coverage Tools
Test-Driven Development
Boundary Value Analysis
Equivalence Partitioning
Structural Testing
Java
Python
Software Testing Methodologies

Experience Impact & Reflection

This role significantly enhanced my ability to design and implement comprehensive testing strategies for complex software systems. The systematic approach to identifying and documenting defects developed my skills in ensuring software quality and reliability.

Working with the Software Testing Team at King's College London provided valuable experience with industry-standard testing methodologies and tools. The knowledge gained from this experience has directly contributed to my expertise in quality assurance and software validation.

The testing methodologies implemented during this project demonstrate my ability to:

  • Design test cases that effectively validate compliance with requirements
  • Identify and document software defects with clear reproduction steps
  • Apply various testing techniques including unit, integration, and system testing
  • Develop comprehensive test documentation for complex systems
  • Isolate and test individual components using mock objects
  • Balance testing coverage with time and resource constraints