Ludovico Besana

My Testing Philosophy

My perspective on software testing, quality, and the role of testers in modern development teams.

Quality Is Everyone's Responsibility

I believe that quality is not just the responsibility of testers but of the entire development team. Testing is not a phase that happens after development; it's an integral part of the software development lifecycle that should be considered from the very beginning.

My mission is not to become famous in the testing world, but to spread awareness about the importance of testing and quality in software development. I want to see more developers and organizations prioritize testing and incorporate it into their processes from day one, rather than treating it as an afterthought.

I'm particularly passionate about ensuring that critical aspects like accessibility aren't relegated to the end of a project or, worse, completely overlooked. Accessibility should be a fundamental consideration in design and development, not a checkbox to tick right before release.

Core Principles

Early Testing

Testing should start as early as possible in the development process. The earlier we find issues, the less expensive they are to fix.

Collaboration

Testers and developers should work closely together, sharing knowledge and perspectives to build better software.

Automation

Strategic test automation frees up time for exploratory testing and provides fast feedback on changes.

Quality Metrics

Measuring quality through meaningful metrics helps teams understand their progress and identify areas for improvement.

The Modern Tester

I firmly believe that the role of a tester has evolved significantly in recent years. Today's testers need to have strong technical skills, including programming knowledge. Without these skills, it's difficult to effectively identify issues in software and propose meaningful improvements to the codebase.

A modern tester should be able to:

  • Write code and understand software architecture
  • Automate tests at various levels (unit, integration, end-to-end)
  • Analyze and debug complex issues
  • Provide constructive feedback on code quality and best practices
  • Collaborate effectively with developers and other stakeholders
  • Understand and advocate for the end user's perspective

This technical foundation doesn't diminish the importance of traditional testing skills like critical thinking, attention to detail, and exploratory testing. Rather, it enhances these skills by enabling testers to apply them more effectively in modern development environments.

Testing Approaches I Advocate For

Shift-Left Testing

Moving testing activities earlier in the development process to catch issues before they become expensive to fix. This includes practices like TDD, BDD, and Three Amigos.

Preventive

Risk-Based Testing

Focusing testing efforts on the areas of the application that pose the highest risk to users or the business. This approach helps teams make the most of limited testing resources.

Strategic

Inclusive Testing

Ensuring that software works for all users, including those with disabilities or using assistive technologies. This includes accessibility testing, internationalization, and testing across different devices and platforms.

Empathetic

Let's Work Together

Interested in having me speak at your event, collaborate on a project, or discuss work opportunities? Get in touch!