Hi all, As my fellowship comes to an end, in this post, I’ll share a summary of what I did throughout the past 7 months. I started my fellowship as a QA engineering fellow in February 2023. Since then, I have primarily focused on improving the overall product quality of OpenMRS and enhancing the OpenMRS developer experience.
Here are some of the tasks I completed during my fellowship:
- Created the marking rubric for rating GSoC contributor applications.
- Proposed a unit and integration test strategy for O3 and initiated a Google Summer of Code (GSoC) project based on that.
- Presented in the OpenMRS virtual mini-community meeting.
- Reviewed GSoC applications for the two QA-related projects.
- Mentored in two GSoC projects (one as the primary mentor and one as the secondary).
- Conducted research on test management tools (Xray and Zephyr).
- Added automated WebDriver management to the QA Framework.
- Updated O3 documentation with E2E test-related documentation.
- Reduced the time taken for E2E tests by more than 75% (with pre-filled Docker images for the backend and database).
- Reduced the resource consumption of E2E tests by more than 80% (with lightweight dynamic frontend Docker images).
- Delivered a lightning talk at the OpenMRS '23 conference.
- Improved 3.x end-to-end (E2E) test coverage by writing tests.
- Addressed various bugs and test failures in the QA framework.
Top achievements:
- Optimized the automated E2E testing process:
- Reduced test execution time by over 75%.
- Minimized test execution resource consumption by more than 80%.
- Led squad calls and provided mentorship to community members.
- Mentored two projects in GSoC (one as the primary mentor and the other as a backup mentor).
- Resolved numerous critical bugs and issues in the testing procedures.
Contributions:
Code contributions:
- 20+ Pull Requests in 8 Repositories:
- Patient management - 5 PRs
- Patient chart - 2 PRs
- Admin tools - 5 PRs
- Core - 1 PR
- Form builder - 2 PRs
- Cohort builder - 1 PR
- QA framework - 5 PRs
- Distro Ref App - 1 PR
- 1 Bamboo plan improvement
Talk Threads (6+ topics | 50+ posts):
- Using pre-filled Docker images for running E2E tests
- Seeking project ideas for OpenMRS QA Fellowship Capstone Project
- Streamlining the test automation using Jira
- Configuring MockServiceWorker on O3 repos
- Bugs related to 3.x Patient Lists
- Fixing random failures in QA Framework E2E tests
Demos and presentations:
Next steps:
- Continue refining the automated testing processes for further optimization.
- Enhance the manual testing procedure by incorporating test management tools.
- Keep creating and reviewing tests for O3.
- Explore additional domains, including frontend development and DevOps, to broaden expertise.
Final Reflection:
I really enjoyed mentoring, contributing, and collaborating with the OpenMRS community, especially during GSoC 2023. The experience of leading squad calls, delivering demos in squad meetings, participating in mini-community meetings, and presenting lightning talks at the OpenMRS conference was truly fulfilling. I am immensely grateful for the invaluable opportunities that have allowed me to grow both personally and professionally.
I would like to express my gratitude to the OpenMRS community for giving me this incredible opportunity, especially my mentor, @jayasanka , and the fellowship program administration. I am thankful for their guidance throughout the program.
Here is a short video reflecting on my final thoughts:
Slide deck: