Google Summer of Code’ 17 with phpMyAdmin – Summary
This post summarizes the work done and tasks accomplished during the last twelve weeks. It was carried out as a part of Google Summer of Code 2017 with phpMyAdmin.
The project involved two separate sub-lists of tasks, one related to phpMyAdmin’s Error Reporting Server and the other related to phpMyAdmin’s selenium test-suite.
Tasks related to Error Reporting Server:
- Use cleaner syntax for control structures in views:
- Allow reports search by filename:
- Sanitize versions in reports:
- Simplify issue state:
- Improve generated issues content:
- Provide email notification for new reports:
- Read-only public interface:
- Follow linked Github-issue state:
- Some more pull requests were made as a part of fixing related issues:
Tasks related to selenium testing:
- Fix database-related selenium tests
- Fix selenium tests related to Login, Normalization, ChangePassword, ServerSettings
- Fix selenium tests related to Table, Export, XSS, Tracking
- Fix import-related selenium tests
- Add tests for typing and executing SQL query on phpMyAdmin
- Add tests for Query-by-example UI in phpMyAdmin
- Fix random failures in selenium tests
- Minor refactoring in selenium tests
The detailed weekly reports are available on this blog at the following links:
- Week 1:
- Week 2:
- Week 3:
- Week 4:
- Week 5:
- Week 6:
- Week 7:
- Week 8:
- Week 9:
- Week 10-11:
- Week 12:
The project led to a few good improvements to phpMyAdmin’s error reporting server, which I hope would make it more developer-friendly and the public interface would help more non-team contributors in fixing the errors reported on it.
phpMyAdmin’s selenium test-suite has finally stabilized in green (i.e. passing), albeit some errors popping up once in about ten runs. I do hope to fix these as they are encountered. Improvement in selenium test-suite and moving it out of allowed failures in Travis has already started to show its impact as we could track a few errors introduced while refactoring. These would otherwise be missed as the refactored code was not well-covered by the unit tests.
Finally, it has been another wonderful summer working with phpMyAdmin and its wonderful community. I would like to thank my mentor, Michal Čihař and the entire phpMyAdmin team, for their continued support throughout this project.