One of the most often overlooked areas of software development is testing. This oversight is often due to the lack of time, resources, or just the mind set that testing is necessary. After all, time is money. If you’re not making the customer happy with new software updates or features, then you’re not making the most of your ROI, Right? Unfortunately, this is not always the case. For tiny projects with a minimal code set, the task of testing can be overlooked. However, as the code set grows and becomes more integrated, the potential for critical failure becomes more prevalent. Therefore, you should have some testing, even if it’s only for the crucial areas of your applications.
Common Excuses Why Testing is not necessary:
- We Don’t Have Time To Test.
- We Don’t Have Enough Manpower
- Why Do We Need To Test
- Developers Can Test Their Code
Why Testing is important:
- Help reduce bugs in new/existing features
- Lowering the cost of Change
- Improve DesignTests Are a Good Way To Documentation And New Features
- Constrain Features And Scope Creep
So what are my options? You are a developer, right? Your job is to develop code and solve complex problems, not spend hours and hours testing a system. What other options do I have? I mean there are only so many hours in a work day right?
Well, you do have a couple of options.
- Unit Tests
- Selenium IDE
Unit Tests:
For starters, you could pick up a book or read web sites on writing unit tests. This is a very effective way of testing the functionality of your methods and classes within the application. These Unit tests are then run before code gets distributed to customers to prevent potential bugs from going out the door. We will cover Unit tests more at a later date as this will be a more in-depth conversation. For now here is a link to a page that lists many of the Unit test frameworks that are available today.
Selenium IDE
If your application happens to be a Web Application, then you should take a look at the Selenium IDE. This is an excellent record/playback tool that has been around for years. All you need to do is download and install the Plugin for Firefox from this link. Then you open the Selenium IDE when you are on the main landing page of your application. Hit record and the IDE will record all of your click and key presses, allowing you to quickly record multiple use cases. These use cases can then be played back in the IDE or with an additional plugin can be converted to unit tests for your particular programming language (i.e. Java, C#, Ruby, etc.).
So if you’re new to writing test cases or need to beef up what you already have, I suggest you take a look at one of these options. The option you go with basically boils down to the type of application you’re working on. Since most systems, today have some web interface; Selenium will probably be the better choice. That is until your test suite grows into something more sustainable. At that point, you will need to consider an actual testing framework. This will be covered at another time. Also, do not forget to check out our other articles here. You never know what else you might find.