Skip to content

Instantly share code, notes, and snippets.

@GOVINDDIXIT
Last active July 28, 2020 13:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save GOVINDDIXIT/c9789e1aa5b71ba535ced46f73e8b42e to your computer and use it in GitHub Desktop.
Save GOVINDDIXIT/c9789e1aa5b71ba535ced46f73e8b42e to your computer and use it in GitHub Desktop.
Work Product Submission for GSoC'19

GSoC 2019

GSoC 2019 Final Submission Report

Project Goal:

The project goal is to establish a test infrastructure which supports unit testing, UI testing and Integration testing. Unit tests and UI tests will be written for the android project to test the new features and code changes in the project before getting merged in the main repository. The goal is to confirm that no new code gets merged unless it passes all the tests that will be run at build time i.e. the new code works as designed and does not cause any regression issues by breaking other functionality/tests. The test infrastructure will be designed in a way that adding new tests or updating old test will be easy and it will tell the developer what method or function or Which piece of code is causing the error or tests to fail. So It will be easy to find the error and the developer can fix that. Proper test automation consists of the generation of test coverage reports as it helps in identifying the areas of missing test coverage. So the generation of test reports will be done which will help in finding the codebase which is missing test coverage .

GSoC Project link: https://summerofcode.withgoogle.com/projects/#6439263770509312

My Contributions:

  • Issues: Link
  • Module Wise Pull Requests: Link
  • Commits: Link

Blogs:

Tests Coverage Reports:

Coverage Reports

Scope of Future Developments to the project

All the work planned for this GSoC project is done but there is still a scope of future improvements. Currently Coroutine methods are not unit tested because of the project limitation (Current Codebase doesn't support Coroutine testing) But at the same time all the coroutine methods are very well tested using UI tests. I have built an infrastructure so that writing new tests and updating old tests in future will be easy. The tests are written in such a way that other organisation using Rocket.Chat fork can also use these tests by doing some minor changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment