2.25 Conduct Regular Audits, Regression, and Non-Regression Tests
Products and services at any stage of a project can suffer bugs or issues that need to be resolved. Fixing these regressions also generates additional development and environmental costs. By resolving such issues, you can reduce the chances of a visitor giving up on a session and thereby reduce the amount of wasted energy your website emits overall.
Criteria
- Regular Issue Testing: Check your codebase for bugs, identify any performance issues, and account for accessibility or security problems at either monthly or quarterly timeframes (depending on your scheduling allowance).
- Non-Regression Tests: Non-regression tests are implemented for all important functionality.
- Regression Tests: Incorporate regression testing into each release cycle to ensure that new features don’t introduce bugs or otherwise conflict with existing software functionality.
Impact
Medium
Effort
Medium
Benefits
- Environmental:
Regular service audits reduce technical debt, which improves performance and environmental sustainability. Regression analysis also supports continuous improvement and lowers resource use over time, which also reduces emissions. - Security:
Regular auditing of a product or service will not only identify potential sources of breaches, but it will also identify areas of improvement both in security and privacy. - Accessibility:
Maintaining inclusivity over time through regular audits and testing reduces outages, improves access to information, and creates a better experience for all users, not just those with accessibility needs. - Economic:
Ongoing regression testing improves security, which reduces risk and its associated costs.
GRI
- materials: Medium
- energy: Medium
- water: Medium
- emissions: Medium
Example
- It is important to automate measurements of page speed, time-to-first-byte, and page score to verify recent changes didn’t increase these metrics. Automatic threshold alerts or anomalies on metrics help indicate regression. Identify target “page weight budgets” to help establish a baseline. Popular performance tools like Google Lighthouse can help too. Similarly, environmental metrics can be measured or assessed and evaluated against thresholds defined in a sustainability budget. Here is a checklist for auditing a web design.
Resources
- Access Guide
- Accessibility
- AWS WAF: SEC11-BP02 – Automate testing throughout the development and release lifecycle
- Building a Greener Digital Future: Catchpoint Launches Carbon Control
- Front-End Performance Checklist 2021
- Hacksplaning
- High Performance Browser Networking
- How UX design can help tackle climate change
- Inclusive Design Principles
- Learn Accessibility
- Learn Performance
- Measuring Web Performance in 2024: The Definitive Guide
- OWASP Web Application Security Testing Checklist
- Power profiling with the Firefox Profiler
- Regression testing
- Regression Testing: A Detailed Guide
- Software and Data Integrity Failures
- Software regression testing
- The Basics of Web Application Security
- The Simple and Complete Guide on Non-Regression Testing
- Top 10 Web Application Security Risks
- W3C Web Content Accessibility Guidelines
- Web performance
- Web security
- WebPageTest
- Why does speed matter?