It has been over a month since I started my internship with Wikimedia under the outreachy program. Wikimedia is a global movement whose mission is to bring free educational content to the world and strives to bring about a world in which every single human being can freely share in the sum of all knowledge. Wikimedia is the platform that runs Wikipedia and it's sister projects. Wikimedia constitutes a global community of educators, learners, librarians, software developers, to mention but a few. The project that I'm working on is called MediaWiki which is used to collect and organize knowledge and make it available to people. It's implemented in PHP and powers a number of websites. I'm specifically working on the Evaluation of Microsoft Playwright as a replacement for the Wikimedia browser automation project.
Wikimedia supports a large number of repositories as well as extensions. In order to ensure good code practices across all these repositories, an extensive amount of testing is performed and one of the tests performed is an end to end test. WebdriverIO is the current browser automation framework being used for implementing end to end test. However, with the recent increase in awareness about an end to end testing, a number of equally competitive non-selenium solutions have been introduced and one of them is Microsoft Playwright. So, the goal of the project is to evaluate Microsoft Playwright against WebdriverIO as a potential replacement for the Wikimedia browser automation framework.
There has been a lot of learning new things during this process so far. I have implemented unit test before, however, it is my first time implementing automated browser testing and there has been a lot of learning and implementation of new things such as; the different browser automation frameworks, how to use Github actions as continuous integration(CI) pipeline, learn about Microsoft Playwright and its implementation to mention but a few. This is both a challenging and exciting project for me to work on and hopefully, the evaluation of Microsoft Playwright will turn out to be successful and become the automation tool for Wikimedia.