KeepTrack.space is an open-source space exploration tool designed for visualizing satellites and space debris. It allows users to simulate space debris breakups, visualize debris patterns, search through a catalog of satellites, and much more.
The primary objective of regression testing is to ensure that recent changes have not adversely affected existing functionalities or performance of the application.
- Complete End-to-End Testing: This includes testing all major functionalities of the application such as searching the catalog, simulating breakups, launching satellites, and visualizing debris patterns.
- Performance Checks: Ensure the application still loads in under 2 seconds and maintains a smooth performance at 60 frames per second during simulations.
- Local Development Setup: Tests will be conducted in the development environment hosted locally.
- Tools Required: Visual Studio Code for code edits and debugging, and the Brave browser for interacting with the application.
- Launch Application: Ensure the application loads correctly and reaches the main interface within the expected time.
- Database Integrity: Check that the database loads correctly, and all satellite and debris data are accessible.
- Search Functionality:
- Search for various satellites using name, NORAD ID, and international designator to ensure accuracy and responsiveness.
- Test sorting and filtering capabilities in the search results.
- Simulation Tests:
- Simulate a debris breakup and verify the debris spreads as expected.
- Simulate a satellite launch and observe the visualization from different points on Earth.
- Test the responsiveness of the application when adjusting simulation parameters.
- Sensor Data Visualization:
- Select different sensors and verify the output against expected results.
- Test the application's response to switching between multiple sensors rapidly.
- Debris Visualization:
- Check various debris patterns and ensure they update and display correctly over time.
- Test the performance of the visualization under different scenarios (e.g., high debris density).
- User Interface Consistency:
- Ensure that all UI elements are consistent across different pages.
- Test responsiveness and layout adjustments on different browser sizes.
- Presets:
- Check that http://localhost:5544?preset=debris works.
- Check that http://localhost:5544?preset=starlink works.
- Check that http://localhost:5544?preset=ops-center works.
- Check that http://localhost:5544?preset=education works.
- Check that http://localhost:5544?preset=epfl works.
- Check that http://localhost:5544?preset=outreach works.
- Check that http://localhost:5544?preset=million-year works.
- Check that http://localhost:5544?preset=million-year2 works.
- Check that http://localhost:5544?preset=altitudes works.
- Check that http://localhost:5544?preset=facsat2 works.
- Load Performance:
- Verify that the application still loads within 2 seconds.
- Measure response times for critical actions.
- Simulation Performance:
- Ensure simulations run smoothly at 60 fps with no noticeable drops in frame rate.
- Test the impact of long-duration simulations on performance.
- GitHub Tracking: All issues discovered during testing should be reported and tracked using GitHub's issue tracking system.
This regression testing guide should serve as a baseline for ensuring that KeepTrack.space maintains its functionality and performance after each update. Since testing is conducted by a solo developer, it's crucial to prioritize testing based on recent changes and known trouble areas, specifically unexpected settings combinations and concurrent feature usage.
- Use diverse scenarios and settings to uncover hidden issues.
- Regularly update test cases to reflect new functionalities and edge cases identified in previous tests.