Thursday, April 25, 2013

What really is software testing and why it is essential?


By definition, "Software Testing is the process of executing an application with the intent of finding defects in it". But Software Testing’s contribution is broader than its original definition. An experienced tester not only finds defects but also adds suggestions to bring out quality in the system.

In one of my previous projects, I suggested that the architect added an aggregated table to improve the performance of a report. When it was implemented, the performance of the report improved greatly. I personally feel Quality Engineer is a better term for a tester as he brings in a lot of quality into the system by identifying areas of failure and improvement.

There has been a greater awareness in organizations on testing in recent years. Organizations understand the cost of not testing and implementing for every product they are building.

In brief, testing is essential as:
1.      It identifies defects and hence, gives scope for greater quality to be built into the application
2.      It ensures the functional as well as the nonfunctional requirements have been properly met in the application
3.      It ensures that the product is giving business value to the customer
4.      It ensures that the possible product risks and known issues have been addressed

Exception in thread "main" java.lang.UnsupportedClassVersionError


Today, using Cygwin on my windows environment, I was trying to execute the following simple program:

class hellotext
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}

And I was seeing:

Exception in thread "main" java.lang.UnsupportedClassVersionError: hellotext (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)


Now what’s wrong with this simple program?

Nothing really! It’s actually a problem with the environment.

If I do java –version and javac –version, then it returns different versions and that's the issue. 

Everything worked fine when I removed the duplicate JAVA from my system using Control Panel.


Wednesday, April 24, 2013

Welcome Testers


Today, while coaching few testers, I was explaining them the importance of reading testing blogs and one of them pointed out, what according to him, is a kind of bug. He told me that my original blog kapil-saxena.blogspot.in, doesn't contain any testing keyword! Is it really a bug???

Perhaps, for sure, it's an issue. Why? Because it's like you develop a software application and you name it after something unrelated. Will it be part of Google results when someone searches for testing blogs? Definitely, the probability is much less.

So, keeping in mind the excellent suggestion, I'm starting this new blog, and wow, it's name contains "testing". :)

Hoping that all the readers will get benefit from this blog in some way!!