-
-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Debugging
We do a lot of debugging at Oppia, whether because tests are failing on a PR or because of a tricky bug that was found during release testing. These guides will help you get started debugging and offer useful tips:
Start here if failing tests are stopping you from pushing or merging a PR:
Unless the bug you are trying to fix is trivial, we recommend creating a debugging doc to organize your work:
Here are some debugging guides for particular kinds of issues you might encounter or types of tests:
- Interpreting GitHub Actions Results
- Finding the commit that introduced a bug
- Debugging end-to-end tests
- Debugging backend tests
- Debugging frontend tests
- Debugging lighthouse Tests
- Debugging custom ESLint check tests
- Debugging custom Pylint check tests
Finally, see these debugging stories to learn more about how debugging works in practice:
Have an idea for how to improve the wiki? Please help make our documentation better by following our instructions for contributing to the wiki.
Core documentation
Developing Oppia
- FAQs
- How to get help
- Getting started with the project
- How the codebase is organized
- Making your first PR
- Debugging
- Testing
- Codebase policies and processes
- Guidelines for launching new features
- Guidelines for making an urgent fix (hotfix)
- Testing jobs and other features on production
- Guidelines for Developers with Write Access to the Oppia Repository
- Release schedule and other information
- Revert and Regression Policy
- Privacy aware programming
- Code review:
- Project organization:
- QA Testing:
- Design docs:
- Team-Specific Guides
- LaCE/CD:
- Developer Workflow:
Developer Reference
- Oppiabot
- Git cheat sheet
- Frontend
- Backend
- Backend Type Annotations
- Writing state migrations
- Calculating statistics
- Storage models
- Coding for speed in GAE
- Adding a new page
- Adding static assets
- Wipeout Implementation
- Notes on NDB Datastore transactions
- How to handle merging of change lists for exploration properties
- Instructions for editing roles or actions
- Protocol buffers
- Webpack
- Third-party libraries
- Extension frameworks
- Oppia-ml Extension
- Mobile development
- Performance testing
- Build process
- Best practices for leading Oppia teams
- Past Events