Joomla GSoC 18 with Samarth Sharma

Hello everyone!
I am Samarth Sharma from India and am currently doing my Bachelors in Computer Science at Manipal Institute Of Technology. I have also worked on the website of IEEE Manipal Branch in the past. I am a web developer and also Machine Learning enthusiast. Now enough about me, let's dive into the work that I did with the Joomla Project in this first evaluation (May 14 - June 11).

System testing for Joomla is a project focused on increasing the test coverage of Joomla 4, we are using Codeception and Selenium to achieve the same.

It has been a great experience to work for the Joomla Project till first evaluation. I have learnt a lot from Puneet, Nhung, Yves and Sandra as they have been helpful at every step of my project. They have been patient with me regarding Joomla coding standards and GitHub workflow and taught me lot of cool and essential stuff about Git and Codeception. Tobias helped me set up Joomla coding standards on my Local. They also guided me on what all changes are necessary in the code and how we can make the code more efficient and useful.

You can find the repository/branch on which we will work at

Now, the tasks that I have completed so far are as follows.

Community Bonding Period Task ()

  1. Setup Joomla 4 on local and run all the tests that have been covered using both headless browser (Chrome)  and Chrome
  2. Make an excel sheet and mark all the tests that are not covered
  3. Learn about Git
  4. Setup PHPStorm IDE to follow Joomla Coding Standards
  5. Understand the current test architecture of Joomla 4
  6. Learn about task runner.

Evaluation One (Till Present)

  1. Test Menu, MenuItem, and check Frontend

    In this task:
    • Create a menu
    • Apply Toolbar actions on Menu (Rebuild, Delete)
    • Create a menu item
    • Apply Toolbar actions and check on frontend
    • Those Toolbar actions included unpublish/publish/rebuild/home/check in/trash.
  2. Article with Menu Items, and check Frontend

    In this task:
    • Create an article
    • Create a menu item for article
    • Apply Toolbar actions on article and check on front end
    • Those toolbar actions include publish/unpublish/trash
  3. Categories with Articles, Menu Items, and Check Frontend

    In this task:
    • Create a category
    • Create 2 articles under that category
    • Create a Menu item for that category
    • Apply Toolbar options on menu item and check on frontend
    • Those toolbar actions on menu item include publish/unpublish/home/rebuild/trash

In this evaluation period, I have successfully completed tests for Menu (Menu and Menu Items) and Content.

Target for Evaluation 2

  1. Test all Global configuration options and check on frontend
  2. Test Joomla extension: Modules
    • Publish and verify on frontend
    • Unpublish and verify its not on frontend
    • Login Module
    • Status Module
  3. Test Joomla Components such as
    • Banners
    • Contacts
    • News Feed
    • Tag

It will be easy to integrate these component tests with Menu item as I have created a menuitem.php (Step file) which includes all the options.

Please follow the project updates and meeting reports at the Volunteers Portal, and if you have any question please feel free to contact our team.