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.
Here are three reasons why software test automation will help your organization:
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?”
This distinction is what can make all the difference between marginally knowing and fulling understanding the system. If it's a new system, you should respond with, “I will ask for all of the requirements and functional specifications available and start reading and creating test cases based on this documentation.” However, if it is an existing system, your best response would be, “If there are no existing artifacts I would go into each page/screen of the system and create a baseline regression test.”Read More
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.
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