Hello, I am starting this blog to share my experience as a software tester. I wish to share the real time challenges in my job and current news about software testing. Thanks!!

Your Ad Here

Tuesday, May 13, 2008

Interview Tips for Entry level Testing jobs

You need not to be big techie to get selected for Software Testing job. Just be clear about the fundamentals of Software testing and about software engineering.

Here are some topics you should be clear to answer:

Testing fundamentals: Testing terminology, definitions etc.

Testing Processes: The testing processes used in your current/previous company. Knowledge of life cycle testing etc.

Testing tools: Given a problem, how to solve them using testing tools.

Testing deliverables: Able to write a test plan or test case for a given product or requirements.

Analytical skills: Solving Puzzles.

Programming skills (optional): Able to write pseudo code for a given problem.

In my last interview with Symantec I have faced questions from all the topics I mentioned above except 'Programming skills'. They asked me one simple puzzle too.
Puzzle: You have 9 similar balls and one of them is weighs less, so you must identify that ball with minimum number of weighs. You dont have any weights to measure.
Luckily I was able to answer and clear the interview!

Resume
• Whatever you mention in the resume, you must try to be thorough in it.
• Be honest of what you put in it.
• Try to keep it small, it should not be longer than 2 to 3 pages.
• One of the main reason of rejection is, something is mentioned in the resume and when asked questions about it, not able to answer them and in few cases saying that "I have done that 'something' long back and I don’t remember anything”. In many cases its true that you have used a tool or something a year back and you don’t remember much about it, in that case before attending the interview, brush up at least some basics regarding it, do some home work and prepare yourself to talk about it or don’t mention about it in the resume, if it is not that important.

Friday, May 9, 2008

Testing Web Based Applications

Web based Applications are increasingly becoming more feature rich, important and also the most popular means for developing commercial systems. Most companies opt for developing web based software wherever possible. This helps in catering to large number of end users. The deployment of the apps (once the infrastructure is in place) is fairly easy.

The web based applications are powerful and have the ability to provide feature rich content to a wide audience spread across the globe at an economical cost.

Hence it is a daunting task to test these applications and with more and more features testing these apps is becoming even more complex.
In this article we will study the challenges faced when testing these applications.

Factors effecting Testing of Web Applications:
Numerous Application Usage (Entry – Exit) Paths are possible
Due to the design and nature of the web applications it is possible that different users follow different application usage paths.

For example in an online banking application a user may directly go to “Bill Pay” page and other users may check account balances, view previous transactions and then “Pay the Bills”.
Generally a large number of usage paths are possible and all are supposed to work well.
All these Permutations and Combinations need to be tested thoroughly

- People with varying backgrounds & technical skills may use the application
Not all applications are self explanatory to all people. People have varying backgrounds and may find the application hard to use. For instance a Business Intelligence application with “Drill-Down-Reports” may work out for certain users but not for others.

Although this affects the design of the applications, but these factors should be tested in usability testing of the applications

- Intranet versus Internet based Applications
Intranet based applications generally cater to a controlled audience. The developers and architects can make accurate assumptions about the people accessing the apps and the hardware/software/technical specifications of the client machines.

While it may be difficult to make similar assumptions for Internet Based Applications
Also the intranet users can generally access the app from ‘trusted’ sources whereas for internet applications the users may need to be authenticated and the security measures may have to be much more stringent.

Test Cases need to be designed to test the various scenarios and risks involved.

- The end users may use different types of browsers to access the app
Typically for internet based applications users may have different Browsers when accessing the apps. This aspect also needs to be tested. If we test the app only on IE then we cannot ensure if works well on Netscape or Fire-Fox. Because these browsers may not only render pages differently but also have varying levels of support for client side scripting languages such as java-script.

- Even on similar browsers application may be rendered differently based on the Screen resolution/Hardware/Software Configuration

- Network speeds:
Slow Network speeds may cause the various components of a Webpage to be downloaded with a time lag. This may cause errors to be thrown up.

The testing process needs to consider this as important factor specially for Internet based Applications

- ADA ( Americans with Disabilities Act)
It may be required that the applications be compliant with ADA. Due certain disabilities, some of the users may have difficulty in accessing the Web Applications unless the applications are ADA compliant. The Application may need to be tested for compliance and usability

- Other Regulatory Compliance/Standards:
Depending on the nature of the application and sensitivity of the data captured the applications may have to be tested for relevant Compliance Standards. This is more crucial for Web Based Applications because of their possible exposure to a wide audience.

- Firewalls:
As mentioned earlier Applications may behave differently across firewalls. Applications may have certain web services or may operate on different ports that may have been blocked. So the apps need to be tested for these aspects as well.

- Security Aspects:
If the Application captures certain personal or sensitive information, it may be crucial to test the security strength of the application. Sufficient care need to be taken that the security of the data is not compromised.

Why technology platforms affect testing?
Technology platform upon which the Web Application was built also creates different strengths and weaknesses. Different Test Automation tools & packages are available for different Technology Platforms. This can influence the Test Strategy and the way in which Test Execution is done.

Challenges in Testing Web Based Web Applications:
To ensure that sufficient Test Coverage is provided for Web Based Applications and to provide a secure, reliable application to the user the above factors need to be considered.

For more info- Exforsys.com

Thursday, May 8, 2008

Get paid for finding Software bugs!

uTest has started an innovative idea of pay per bug approach. It has tied up with few companies in a pilot program. You can register as software Tester on this site and you will be given an application to test. More number bugs you find more you get paid.

How will it work?
uTest is going to tie up with some companies which don’t have dedicated QA teams and want to outsource their testing work. Such companies can use uTest services and testers community to get their application tested. In return companies will pay some amount to uTest based on the severity and priority of the bug. At the end this amount will be awarded to testers who find these bugs.

Anyone can sign up with uTest to test software’s and make cash for finding bugs. Testers can earn from few hundred to few thousand dollars per month based on experience and performance. The bug pricing will be decided by bug type, type of application and severity of the bug.

What are the benefits?
Good cash benefits for your skills,
Work from anywhere,
Flexible working time (work whenever you want),
And last important benefit: Be your own boss

As per now I think this is win-win condition for customers who don’t have separate QA departments and testers who want to earn some descent cash from their skill and experience.

Presently uTest is running a pilot program only for selected testers and 8 companies are taking part in this program. I have registered myself as a tester and even I got Debit card from uTest but I was not lucky one to get selected in Pilot program. I can't guess anything about the success of utset's approach we can just wait and watch.

Reviews on Websites related to Software Testing

Hey...I have just consolidated the number of websites related to the Software Testing. You may reffer these websites to know more about Software Testing.

1. One Stop Testing: This websites does not prove to be One Stop for Software Testing but you may find good info one Types of Testing, Basic knowledge of testing tools and Interview questions(there are enough questions for you to practice).

2. TestingGeek: This one is nicely built website. Those who are looking basic concepts on testing can go online and read the sections- Types of testing, Testing tools, Case studies. Templates section is interesting and one freshers can have look on Test Plan template, GUI Check list etc.

3. Software Testing Help: This very nice website for those who are looking foe Help related to Software Testing. There are number of categories where you may find very good info on some of typical; questions on testing. Also, you can post your comments.

4. Software Testing Sucks!: Hummmm......This is very plane website with the basic information. You may checkout 'Testing Vocabulary' link for basic definitions. Rest, this site just s...!

5. Testing FAQ's: This website seems to be good for experts. It has info on tools and drivers used in Automation.

6. Software QA and Testing Resource Center: Here is another website for testing related FAQs. Just go and browse for some basic info.

7. SQA Tester: This is very interesting website. You will find enough info on Software Testing.

8. SQA Forums; This is a nice site. There are number of Forums and every forum has posts from sites users. As a registered user you can Post your Question and expect other users to reply.

Here are few more sites you can have a look:

9. QA Forums
10. QA Threads
11. Software Testing Advice
12. Software Testing.in
13. Bug Test
14. Testing Stuff
15. Smart Software Testing

Wednesday, May 7, 2008

Time to share our knowledge!

When I was new to the Software Testing field I use to read lot of books, manuals, blogs etc to gain understand the concepts of Software Testing. As I was unemployed I use to struggle a lot to understand real time scenarios of testing. Whenevr I got chance to meet the people workking in QA field I use to ask them lot questions anf they proved usefull for me during interviews. So I think we must help the people who are new to Software Testing field by sharing our knowledge. Freshers can now clarify there doubts, questions on Software Testing. So fresher now you may comment on this blog about your questions. I will try my best to answer them with my knowledge and with the help of my seniors and colleagues. I beleive that knowledge inceares by sharing, so lets share it!

Please ask your questions briefly and to the point.

Why Software Testing?

Initially I use to think a lot why there is a seperate process called Software Testing? why can't developers test the application before releasing. I got to know the answer only when I started working as a QA Analyst. No Software can be 100% defect free. Producing 100% defect free software is practically impossible. The software faults occur through the following process: A programmer makes an error (mistake), which results in a defect (fault, bug) in the software source code. If this defect is executed, in certain situations the system will produce wrong results, causing a failure. Not all defects will necessarily result in failures. For example, defects in a dead code will never result in failures. A defect can turn into a failure when the environment is changed. Examples of these changes in environment include the software being run on a new hardware platform, alterations in source data or interacting with different software.

As a Software Tester, first you must understand the Software Requirements. Every requirement must be covered in your Testing Cycle. To test a single requirement, you might need to use combinations of inputs. Attitude of a tester matters a lot in testing. One should not get boared of testing the same application. You must consider the testing as a passion and you should always try to prove that application deffers from the requirements.
Your Ad Here