Page MenuHomePhabricator

Proposal: Write e2e test against WikiLambda, develop workflow integrates with deployment, improve testing experience
Closed, DeclinedPublic

Description

Proposal for T328587

Profile Information

  • Name: Takaharu Nakamura
  • IRC nickname on libera.chat IRC: appare45
  • Web Page: https://appare45.com
  • Location: Japan
  • Time Zone: UTC+9h
  • Typical Working Hours: 6 PM to 11 PM (UTC+9h) On not college day: 8 AM to 11 PM (UTC+9h)

Synopsis

WikiLamda is a part of the Wikimedia project. Writing the E2E test helps WikiLamda developers to find a bug that occurs in a particular environment and integrating the test into the pipeline lessens the trouble with testing locally.

Project goal:

  • Write more e2e tests against WikiLamda
  • Develop e2e testing workflow runs on GitLab integrated with commit and deployment
  • Expand e2e test runs on not only Chrome but also on other browsers
  • Make a bot visualize the result of the e2e tests such as failed tests and the time test takes
  • Write documentation about e2e testing and integration for other contributors

Wikimedia is planning to migrate from Gerrit to GitLab and my project helps other Wikimedia projects start the e2e test.

Possible Mentors: @SDunlap, @Jdforrester-WMF

Deliverables

Community Bonding Period

  • Create the project's task
  • Set up my MediaWiki page
  • Study and summarize current Wikifunction's testing workflow
  • Study Wikifunction's deployment process
  • Find out other user journies tests required

Phase 1

WeekTask
Week 1 (May 29-June 5)Write tests for critical user journey
Week 2~3 (June 6-19)Write tests for other user journies found during the community bonding period
Week 4 (June 20-26)Investigate Gitlab CI and deployment process and summarize it
Week 5 (June 27-July 2)Design e2e testing workflow integrates with deployment
Week 6 (July 3-9)Start developing the Gitlab CI workflow
Week 7 (June 10- July 14)Midterm evaluation

Phase 2

WeekTask
Week 1 (July 14-20)Develop deployment workflow on Gitlab
Week 2-3 (July 21-August 3)Develop workflow integrates e2e tests with deployment
Week 4 (August 4-10)Expand e2e testing workflow not only runs on Chrome
Week 5-6 (August 5-18)Develop test result visualization bot
Week 7 (Aug 19-26)Write a documentation about e2e testing and the workflow
Week 7-8 (Aug 19-28)Final evaluation

Extended Phase

  • Write documentation about the e2e testing and the integrated workflow
  • Improve e2e test running time

Participation

  • I'll be online on the IRC channel during the working hour
  • I'll use Phabricator to discuss, track tasks, and ask questions
  • I'll be available by the email(kaibatsu35.7m45@gmail.com)

About Me

Starting this April, I will be studying at the College of Information Science, University of Tsukuba in Japan.

I began programming two years ago, with a focus on JavaScript and React. I first heard about this program from a senior student at my university who contributed to it several years ago.

During the class period on weekdays from April to July, I will be studying at the university. Typically, I can work after 6 PM on days with classes, but it may be not easy to maintain my usual schedule during test periods.

While I'm not yet proficient in English, I believe this project will help me improve my communication skills in the language.

I understand the importance of quality assurance (QA) in product development, particularly in end-to-end testing, which is one of the most challenging aspects of QA. This project will provide me with valuable knowledge and experience in QA.

Currently, I lack experience in contributing to open-source software (OSS), but upon completing this project, I hope to gain a better understanding of OSS contribution standards, such as using Git and effective communication, and become an active contributor.

Past Experience

bugfix: T331880, https://gerrit.wikimedia.org/r/c/mediawiki/extensions/WikiLambda/+/898676

I've developed an attendance management and communication app for my high school: demo
I learned JavaScript, git, Firebase, vite, and React through development.

Currently, I have limited experience contributing to open-source software (OSS). But through this project, I hope to gain the skills necessary to contribute to OSS.

Event Timeline

Aklapper renamed this task from Proposal: Write e2e test against WikiLamda, develop workflow integrates with deployment, improve testing experience to Proposal: Write e2e test against WikiLambda, develop workflow integrates with deployment, improve testing experience.Mar 28 2023, 8:59 AM

Hi @Appare45, as the deadline for GSoC is quickly approaching in less than 48 hours (April 4th, 2023, 18:00 UTC), it's crucial that you submit your proposal on Phabricator and Google's program website in the recommended format as soon as possible. To avoid any potential last-minute rushes or server failures, we highly recommend that you submit your proposal early and keep updating it as needed before the deadline. Once you have submitted your proposal, please move it from the "Proposals in Progress" column to the "Proposals Submitted" column on the Phabricator workboard by simply dragging it. If you have any inquiries, please do not hesitate to ask. Good luck with your application!

Hi! GSoC application deadline has passed. If you have submitted this proposal on the GSoC program website and would like your proposal to be considered for review, please move it from the "Proposals in Progress" to the "Proposals Submitted" column by clicking and dragging it on the workboard:
https://phabricator.wikimedia.org/project/view/6344/. TY!

@Appare45 We are sorry to say that we could not allocate a slot for you this time. Please do not consider the rejection to be an assessment of your proposal. We received over 100 quality applications, and we could only accept 9 applicants. We were not able to give all applicants a slot that would have deserved one, and these were some very tough decisions to make. Please know that you are still a valued member of our community and we by no means want to exclude you. Many applicants who we did not accept in previous rounds have become Wikimedia maintainers, contractors and even GSoC students and mentors this year!

Your ideas and contributions to our projects are still welcome! As a next step, you could consider finishing up any pending pull requests or inform us that someone has to take them over. Here is the recommended place for you to get started as a newcomer: https://www.mediawiki.org/wiki/New_Developers.

If you would still be eligible for GSoC next year, we look forward to your participation!