Project title: Automatic cross-language screenshots
Community Bonding Period Report
Goals for first half
The first half of the project aims to accomplish the following goals -
- Creating a hooks which can take cropped screenshots for Visual Editor documentation, so that only task remaining will be writing browser tests for getting exact screenshots.
- Meeting twice a week(Monday and Thursday) in Skype/Google Hangout to report my status of the project.
- If anything needs to be communicated, then google chat(with mentor)/IRC/mail(in QA mailing list) is used.
Lessons learnt since April 21st
- Learned to setup environment for running browser tests in local machine.
- Had a pair programming with Zeljko, where he reviewed my code and taught me how to use jenkins.
- Learned the work flow to solve Bug and submit patch: Bug #62152
- Learned to write browser test and wrote one for preference Gadgets: Bug #58900
Week 1: May 19 to May 25
- After hook to take Screenshots.
- Cropping elements with respect to a scenario.
- Working for English and German beta labs.
- Screenshot is named according to the scenario.
Week 2: May 26 to June 2
- Moved the After hook from wikimedia-selenium to mediawiki-extensions-VisualEditor.
- Made tests pass, which were failing because of cross-language.
- Tried running it for all language beta-labs and found that it works for Simple English and Hebrew, others have problems with their VisualEditor.
- Checked if code is run by others and whether it works.
Week 3: June 2 to June 8
- Made a bot using Mediawiki Api(Ruby) to upload into Wikimedia Commons and release new versions of it.
- Made a jenkins job to make it run on my Cloudbees, which runs cucumber for various languages and uploads it to Wikimedia Commons.
Week 4: June 9 to June 15
- Tested the bot with the commons beta labs.
- Learn't to use and create templates in Mediawiki
Week 5: June 16 to June 22
- Done with creating a job for running 3 languages.
- Uploading script modified according to new source for the commons.
Week 6: June 23 to June 29
- Modified the job and redirected it to tests2 beta labs
- Wrote all the simple scenarios for the User guide
- Discussed the complex scenarios with the mentor
Week 7: June 30 to July 6
- Analysed the difference in the image taken from the Jenkins job and the browser running in the local machine.
- Adjusted the size of the images, by correcting the zoom of it.
Week 8: July 7 to July 13
- Made some changes to the User Guide of Visual Editor to check how the documentation looks like in cross languages.
- Got permission to run the Jenkins job in Wikimedia integration.
Week 9: July 14 to July 20
- Wrote complex scenarios for the job, to cover the complex screenshots.
Week 9: July 21 to July 27
- Applied for the bot permission on the Wikimedia commons.
- Uploaded 3 basic languages in the commons to test the bot.
Week 10: July 28 to August 3
- Solved the problem of multiple uploading, which would conflict with the bot rules.
- All the jobs now were run serially.
Week 11 and Week 12: August 3 to August 18
- Created a documentation for the LanguageScreenshots.
- Uploaded screenshots to the commons, after the bot was approved.
- Redirected the job of Jenkins to the production commons.
- Added around 23 languages for the screenshot job.