Automatic cross-language screenshots/progress


Project title: Automatic cross-language screenshots

Community Bonding Period Report[edit]

Goals for first half[edit]

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.

Communication plan[edit]

  • 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[edit]

  • 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

Weekly Reports[edit]

Week 1: May 19 to May 25[edit]

  • 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[edit]

  • 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[edit]

  • 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[edit]

  • Tested the bot with the commons beta labs.
  • Learn't to use and create templates in Mediawiki

Week 5: June 16 to June 22[edit]

  • 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[edit]

  • 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[edit]

  • 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[edit]

  • 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[edit]

  • Wrote complex scenarios for the job, to cover the complex screenshots.

Week 9: July 21 to July 27[edit]

  • 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[edit]

  • 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[edit]

  • 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.