Aditya Yadav & Associates

Architecting World Class Engineering Companies

Home
Mobile
Books
Pocket Guides
Research Reports
Products
Web Services
Appliances
Consulting
User eXperience
Presentations
EAI / SOA / ROA / MOA
CEP
Low Latency
GPU/FPGA
QA & DevOps
Web2.0 & Enterprise2.0
Internet Scale Websites
DSCP
Cloud Computing
Peer To Peer
Technology Strategy
Agile
Lean
LOGn(X) Ops.
OFI
Labs
Articles & Whitepapers
Blogs
Training
Motivation
Tools We Recommend
Press Release(s) And News
MBA
Books We Recommend
The Way We Work
Contact Us
Quality Assurance & DevOps

 

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

 

  1. White for testing Desktop Apps
  2. Nunit, Junit, Javascript unit & TestNG
  3. Mocking frameworks
  4. 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

  1. Unit Tests (Functional Unit Tests, Performance Latency & Jitter Unit Tests, & Memory Footprint & Leak Unit Tests)
  2. Integration Tests
  3. Automated Functional & Regression Tests
  4. Smoke Tests
  5. Performance Tests
  6. Multiple Build Pipelines for complicated dependant product modules or phases ...
    1. Unit Tests & Integration Tests
    2. Smoke, Functional & Regression Tests
    3. Smoke, Performance Tests
    4. Smoke, Acceptance Tests on Integrated Production Systems & Data
  7. Manually Triggered Deployment into QA, Pre-Production, Production
  8. Artefact Management, Tagging Builds & CI

 

We put the Regression test suite in the CI build so that no new code breaks anything developed previously. And we keep the CI build including Regression tests under 15 odd minutes using Test Grids. All our tests are Automated with only exceptions being manual.

 

We release stories from 2 week iterations continously into QA and every 2-3 iterations into Production periodically, our end project UAT is just 2 weeks including automated functional tests for the last iteration being written, regression & 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...

 

Reference:

Performance Testing

Functional Testing

Unit Testing