Posts

More of Test Doubles

  The blog post I selected is “Understanding Test Doubles - Fakes, Stubs, Mocks, and Spies” by Sarah Dutkiewicz. I chose this resource because it gives our view of how we do test doubles with better examples for class as it explains several kinds of test doubles and shows how each one supports more focused and maintainable tests through concrete code examples. The article explains that “test doubles” is an umbrella term for objects that replace real dependencies during testing, and that not all doubles should be used in the same way. The post explains that fakes are simple working implementations made for testing, stubs return pre-programmed responses, mocks are used to verify that certain interactions happened, and spies record calls so the test can inspect them later. It continues to uses small C# examples with interfaces like IUserRepository and IExternalService to show when each type is appropriate and why choosing the right one matters. It also emphasizes that using the wro...

After the second sprint

  During this sprint, our team focused on setting up automated testing tools within our development environment, working with Vitest and Playwright. Unlike the previous sprint where we mainly researched tools, this time we attempted to implement them into our actual project workflow using Docker. A large portion of the work involved configuring the environment, installing dependencies, and troubleshooting issues that prevented the tools from running correctly. Although there are limited successful GitLab commits due to setup failures, the effort was focused on building the foundation for testing integration. However, we were able to get a working version that can be used as a base for every test. First half-working git commit : https://gitlab.com/LibreFoodPantry/client-solutions/theas-pantry/guestinfosystem/guestinfofrontend/-/commit/9382538b27224d0d6ffc4815798cfe0207040781 One thing that worked well during this sprint was persistence in troubleshooting. Even though the setu...

Equivalence Partitioning Testing

  The article “Comprehensive Guide to Equivalence Partitioning Testing” from TestGrid explains an important software testing technique used to design efficient test cases. Equivalence partitioning is a black-box testing method where input data is divided into groups, or “partitions,” that are expected to behave the same way in the system. Instead of testing every possible input value, testers can choose one representative value from each partition to verify the system’s behavior. This approach reduces the number of test cases while still maintaining good test coverage. The article explains how the equivalence partitioning is useful when the range of possible inputs is large and testing every value would be wasting time. By grouping similar inputs together, testers assume that if one value in the group works correctly, the rest of the values in that group should behave the same way. For example, if a form only accepts ages between 18 and 59, the test cases can be divided into thr...