Quality Assurance
We don't believe in silo'd QA departments or COEs. And we don't think that QAs are any less than Developers. We bill them at the same rate. We do the same for support and maintenance too. We don't believe in tools with propreitary scripts. We really prefer plain old C#/Java just like the rest of the developers. Thats why we like
- White for testing Desktop Apps
- Nunit, Junit, Javascript unit & TestNG
- Mocking frameworks
- Selenium Grid
We actually also don't agree in a Top Down approach to testing. We don't suggest big upfront test planning or reusable libraries for testing. We always custom assemble frameworks just like we do for our Development. No baggage or technical debt. We maintain our test code as much as we test our functional code. No arbitrary test coverage targets e.g. 85% as we want quality, the most important pieces of code tested forming our Security Net. Our developers believe in Test Driven Development and we transition our clients from No Unit Tests to Unit Test After Code to Test First Development.
Some of the things we do
- Unit Tests
- Integration Tests
- Automated Functional Tests
- Smoke & Regression Test Suites
- Multiple Build Pipelines for complicated dependant product modules or suites
- Performance Tests
We put the Regression test suite in the CI build so that no new code breaks anything developed previously. And we keep te CI build including Regression tests under 20 odd minutes using Test Grids. All our tests are Automated with only exceptions being manual.
We release every 2 week iterations into QA and every 2-3 iterations into Production,our end project UAT is just 2 weeks including automated functional tests for the last iteration being written & the actual UAT, and we have releasable code with an installer ready within 30 minutes of the code patch being checked in...Isn't that what Continous Integration & Agile is for? We get agile...and this is the exact same methodology we pass onto you...