Google Summer of Code
#GSoC Empowering Tomorrow's Coders: Igniting, Innovating, and Inspiring Mauticians of the Future with Google Summer of Code.
Week 0: End-to-end test suite for Mautic - The Beginning
Hi there! I’m Priyanshi Gaur. I’m currently pursuing my undergraduate studies in Computer Science and Engineering. I’m excited to share that I’ve been selected as a Google Summer of Code 2024 contributor to work on the project “End-to-end test suite for Mautic” with my mentors John Linhart, Mohit Aghera, and Ruth Cheesley.
Why End-to-End Testing for Mautic?
Mautic currently has around 50% code coverage with unit and functional tests, but lacks comprehensive end-to-end testing. As a result, we mostly rely on users manually testing bug fixes and new features. This reliance creates challenges in ensuring the reliability and stability of new changes introduced through pull requests (PRs). When quality assurance depends on user testing, bugs can be discovered post-release, impacting user experience and trust in the platform.
Goals for this project
This project aims to address these challenges by achieving four main goals:
- Develop an End-to-End Test Suite: Create a comprehensive test suite covering the core bundle and other selected bundles.
- Implement Testing Workflow: Integrate the test suite with GitHub Actions for automated testing. Additionally, ensure compatibility for local testing, allowing developers to run tests before making pull requests (PRs).
- Provide Developer Documentation: Write detailed documentation to support contributors in writing and executing tests effectively.
- Educate Marketers on Contribution: Educate marketers on how they can contribute to the end-to-end testing process.
Community Bonding Period
During the Community Bonding Period, I familiarized myself with the Mautic codebase and the fantastic Mautic community. A key focus of this phase was selecting the most suitable testing framework. After discussions with mentors and independent research, we decided on Codeception due to its simplified syntax, flexibility, easy integration with GitHub Actions, and support for Behavior-Driven Development (BDD).
This Week's Focus
This week, I'll be diving deeper into Codeception and exploring its functionalities. I will be setting up a local testing environment and familiarizing myself with writing basic test cases.
We've officially kicked off the coding period. Stay tuned for future updates!
Do you have any experience with Codeception or Mautic testing? Or maybe some tips for a newbie? Feel free to leave any comments or questions below – I'd love to hear your thoughts!
List of Endorsements
Report inappropriate content
Is this content inappropriate?
Comment details
You are seeing a single comment
View all comments
Conversation with Ruth Cheesley
Great to see this project getting underway. I'm pleased that you did a review of the other options out there for frameworks to use, Codeception does indeed seem like the best choice given the pros and cons of the other options.
I'm hopeful that it also means that we'll be able to easily onboard people to help with writing more tests once we get things up and running, because there are useful tools like the Chrome extension which can help you get a sense of the basics of what a test might look like for a specific action or functionality. I did start learning how to write Codeception tests quite a few years back, I better dust off my notes!
Great start to the project!
Thank you!
Looking forward to seeing your notes on writing Codeception tests—every bit of experience will be valuable!
Loading comments ...