Software Testing: Line By Line

Software Testing Community

What about the V-Model?

The V-Model for Software Development specifies 4 kinds of testing:
• Unit Testing
• Integration Testing
• System Testing
• Acceptance Testing

What I’m finding is that of those only the Unit Testing is clear to me. The other kinds maybe good phases in a project, but for test design it doesn’t help much. It is hard to say which tests should go in a system test, an integration test or an acceptance test.

Continue reading…

Centralize? Decentralize? Concentralize!

As I wrote in various articles, organization is one of the 3 key requisites for successful automated testing, the other two being test design and automation architecture.

A question coming up quite commonly in larger corporations and organizations is whether to centralize the test automation, either at division or corporate level, or whether to decentralize: distribute over the various groups and projects.

Continue reading…

Impressions from Star West 2009 in Anaheim

The conference was great, good people, good discussions. The challenge I picked up is marrying theory and practice…

Continue reading…

Are Use Cases Harmful For Test Automation?

People who know me and my work probably know my emphasis on good test design for successful test automation. I have written about this in “Key Success Factors for Keyword Driven Testing”. In the Action Based Testing (ABT) method that I have pioneered over the years it is an essential element for success. However, agreeing with me in workshops and actually applying the principles in projects turn out quite often to be two different things. Apart from my own possible limitations as a teacher, I see at least one more reason: the way the testing is involved in the development projects.

Continue reading…

Software Test Automation: Divide and Conquer

Divide and conquer was a strategy successfully employed by ancient Persian kings against their Greek enemies. It is a strategy that can still be used successfully today. Fundamentally, by dividing something into smaller more manageable pieces (in the case of the ancient Persians, they divided the Greek city states), it becomes much more manageable.

Test automation projects generally have two kinds of problems:

1. Tests lack intelligence. Tests follow functional specifications step by step, and are not really “sharp”.
2. Test automation is disappointing. Not many tests get automated, and the tests that are automated are difficult to keep “working”.

Continue reading…