Have you ever been in an interview where you were asked the question “As a tester, how do you learn a new system?” Was your response “I will read the requirements and or system documentation”? Your response to the question should be: “Is this a new or existing system?”Read More
Software test automation makes use of specialized tools to control the execution of tests and compares the actual results against the expected results. With automated testing, you can record and playback predefined actions or scripts and report upon the results quickly and efficiently. While it requires an upfront investment, the benefits are clear.
Deploying a system into production without adequate testing is like driving a car without knowing if the brakes work properly.
No system is free of defects, so you'll need to identify them and determine their impact prior to deployment if you want a successful implementation. All critical defects should be fixed prior to a release, and those that can wait to be fixed post-launch should be communicated out to users. Only once this is done can you make a game plan to ensure a proper release schedule.
Wondering what the cost of a software bug is? It depends on how late you find it.
The Systems Sciences Institute at IBM has reported that “the cost to fix an error found after product release was four to five times as much as one uncovered during design, and up to 100 times more than one identified in the maintenance phase.”Read More
I've heard a lot of controversy among developers as to whether Test Driven Development (TDD) is really worth all the extra time it seems to take.
TDD means developing a small piece of functionality by first writing a test for it, then writing code to make that test pass. TDD should not be confused with BDD, or Behavior Driven Development, which is like TDD from a user's point of view, rather than a developer's. (Many people do BDD for the broad overview and then TDD for the nitty-gritty internal details).Read More
This post is the second of a two-part series on writing fast and efficient unit tests in Python/Django. If you missed part one, be sure to start here.
At this point, a Django developer using Agile development methodologies will have a good handle on writing focused unit tests and your days of writing only integration tests for all of your features are long behind you. You stay aware of database transactions, and you employ agile software testing with read-only data in mind.Read More
In this series we’re discussing basic to advanced techniques for writing fast, efficient, and focused unit tests in the Django framework/content management system (CMS). Let's start with some background.
One of the most important aspects of working on a software team is software testing agile code. During a big sprint towards a production release on a recent project, my web development team decided to get really serious about testing. After all, we had code in production now. We had to make absolutely sure that future releases fixed bugs instead of introducing them.Read More