April 29, 2011

Issues in the image



In my team, on person shared this Image and asked to find the bugs in it...

We all started to look into it and we easily capture the first below mentioned issue... but after that we all rolled our head and try to find it.. Below are the issues in the above image which we find as well as which we got answer from my team mate....

i) Two letters 30 is displayed.
2) '3' is not connected .
3) lion does not have eyebrows.
4) '7 & 8' is not joined properly.
5) Mushroom is showing near the leg [Is it correct one]

Last bug: In the above issues list... you may miss to notice the first point number is incorrect format :)


Nanum tester dhanungo

April 28, 2011

CREATIVE THINKNG

INTRODUCTION

Creative thinking
Nothing is creative in this world in front of you.
Anyone can make creative world.

Its your ability to imagine and analyse and invent on something new.  Creativity is just a study... But You can realize its power once reach at its end...
Source has been started... Destination is always with you...

If you think,only God can do that> then it is not creativity... its your foolishness.... They give way to you to make the creative on yourself.

Walk on the roadside, just take a piece of paper and note it down whatever you are seeing.
Do the same practise more than 5 to 6 days.... One day you can something creative thing was happened on the same... It may be because of you or It may be because of others...

Some creative ideas are brilliant, while others are just simple, good, practical ideas that no one seems to have thought of yet.

Everyone have a creative ability just look how the creative is figures your mind to fetch the information.

You can see lots of creative ideas with in the children... Because they dont have random thoughts in their mind.. They like what they do.

Most of adults miss to get creative ideas... Reason they have some responsibility in their life.

If you wanna be creative then spend some time to make yourself feeling better to have ability in it.

An Attitude. Creativity is also an attitude: the ability to accept change and newness, a willingness to play with ideas and possibilities, a flexibility of outlook, the habit of enjoying the good, while looking for ways to improve it. We are socialized into accepting only a small number of permitted or normal things, like chocolate-covered strawberries, for example. The creative person realizes that there are other possibilities, like peanut butter and banana sandwiches, or chocolate-covered prunes.A Process. Creative people work hard and continually to improve ideas and solutions, by making gradual alterations and refinements to their works. Contrary to the mythology surrounding creativity, very, very few works of creative excellence are produced with a single stroke of brilliance or in a frenzy of rapid activity. Much closer to the real truth are the stories of companies who had to take the invention away from the inventor in order to market it because the inventor would have kept on tweaking it and fiddling with it, always trying to make it a little better.
The creative person knows that there is always room for improvement.

Positive Attitudes for Creativity

1. Curiosity. Creative people want to know things--all kinds of things-- just to know them. Knowledge does not require a reason. The question, "Why do you want to know that?" seems strange to the creative person, who is likely to respond, "Because I don't know the answer.
Much creativity arises from variations of a known or combinations of two knowns. The best ideas flow from a well equipped mind. Nothing can come from nothing.
In addition to knowing, creative people want to know why. What are the reasons behind decisions, problems, solutions, events, facts, and so forth? Why this way and not another? And why not try this or that?ask questions of everyone. Ask the same question of different people just to be able to compare the answers. Look into areas of knowledge you've never before explored, whether cloth dying, weather forecasting, food additives, ship building.
2. Challenge. Curious people like to identify and challenge the assumptions behind ideas, proposals, problems, beliefs, and statements. Many assumptions, of course, turn out to be quite necessary and solid, but many others have been assumed unnecessarily, and in breaking out of those assumptions often comes a new idea, a new path, a new solution.
When we think of an electric motor, we automatically think of a rotating shaft machine. But why assume that? Why can't an electric motor have a linear output, moving in a straight line rather than a circle? With such a challenged assumption came the linear motor, able to power trains, elevators, slide locks, and so on.
3. Constructive discontent. This is not a whining, griping kind of discontent, but the ability to see a need for improvement and to propose a method of making that improvement. Constructive discontent is a positive, enthusiastic discontent, reflecting the thought, "Hey, I know a way to make that better."
Constructive discontent is necessary for a creative problem solver, for if you are happy with everything the way it is, you won't want to change anything. Only when you become discontent with something, when you see a problem, will you want to solve the problem and improve the situation.
Another mark of constructive discontent is the enjoyment of challenge. Creative people are eager to test their own limits and the limits of problems, willing to work hard, to persevere and not give up easily. Sometimes the discontent is almost artificial--they aren't really unhappy with the status quo of some area, but they want to find something better just for the challenge of it and the opportunity to improve their own lives and those of others.
4. A belief that most problems can be solved. By faith at first and by experience later on, the creative thinker believes that something can always be done to eliminate or help alleviate almost every problem. Problems are solved by a commitment of time and energy, and where this commitment is present, few things are impossible.
The belief in the solvability of problems is especially useful early on in attacking any problem, because many problems at first seem utterly impossible and scare off the fainter hearted. Those who take on the problem with confidence will be the ones most likely to think through or around the impossibility of the problem.
5. The ability to suspend judgment and criticism. Many new ideas, because they are new and unfamiliar, seem strange, odd, bizarre, even repulsive. Only later do they become "obviously" great. Other ideas, in their original incarnations, are indeed weird, but they lead to practical, beautiful, elegant things. Thus, it is important for the creative thinker to be able to suspend judgment when new ideas are arriving, to have an optimistic attitude toward ideas in general, and to avoid condemning them with the typical kinds of negative responses like, "That will never work; that's no good; what an idiotic idea; that's impossible," and so forth. Hospital sterilization and antiseptic procedures, television, radio, the Xerox machine, and stainless steel all met with ho-hums and even hostile rejection before their persevering inventors finally sold someone on the ideas.
By too quickly bringing your judgment into play, these fragile early ideas and their source can be destroyed. The first rule of brainstorming is to suspend judgment so that your idea-generating powers will be free to create without the restraint of fear or criticism. You can always go back later and examine--as critically as you want--what you have thought of.
Proverb: "A crank is a genius whose idea hasn't yet caught on."
6. Seeing the good in the bad. Creative thinkers, when faced with poor solutions, don't cast them away. Instead, they ask, "What's good about it?" because there may be something useful even in the worst ideas. And however little that good may be, it might be turned to good effect or made greater.
We easily fall into either/or thinking and believe that a bad solution is bad through and through, in every aspect, when in fact, it may have some good parts we can borrow and use on a good solution, or it may do inappropriately something that's worth doing appropriately. And often, the bad solution has just one really glaring bad part, that when remedied, leaves quite a good solution. In the above example, changing the physical spanking to a verbal spanking changes the entire aspect of the solution while keeping all the good points we identified.
7. Problems lead to improvements. The attitude of constructive discontent searches for problems and possible areas of improvement, but many times problems arrive on their own. But such unexpected and perhaps unwanted problems are not necessarily bad, because they often permit solutions that leave the world better than before the problem arose.
Or think about exams or papers. When you don't do as well as you want, you think, "Oh no!" But actually, you have a good insight into what you don't know and still need to learn. You are aware of the geography of your knowledge in a much more detailed form than before the errors showed up.
8. A problem can also be a solution. A fact that one person describes as a problem can sometimes be a solution for someone else. Above we noted that creative thinkers can find good ideas in bad solutions. Creative thinkers also look at problems and ask, "Is there something good about this problem?"
For example, soon after the advent of cyanoacrylate adhesives (super glue), it was noted that if you weren't careful, you could glue your fingers together with it. This problem--a permanent skin bond--was soon seen as a solution, also. Surgeons in Viet Nam began to use super glue to glue wounds together.
Another example, also involving glue: 3M chemists were experimenting with adhesives and accidentally came up with one that was so weak you could peel it right back off. Hold strength, shear strength, all were way below the minimum standards for any self-respecting adhesive. A glue that won't hold? Quite a problem. But this problem was also a solution, as you now see in Post-It Notes.
9. Problems are interesting and emotionally acceptable. Many people confront every problem with a shudder and a turn of the head. They don't even want to admit that a problem exists--with their car, their spouse, their child, their job, their house, whatever. As a result, often the problem persists and drives them crazy or rises to a crisis and drives them crazy.
Creative people see problems as interesting challenges worth tackling. Problems are not fearful beasts to be feared or loathed; they are worthy opponents to be jousted with and unhorsed. Problem solving is fun, educational, rewarding, ego building, helpful to society.

Miscellaneous Good Attitudes

1. Perseverance. Most people fail because they spend only nine minutes on a problem that requires ten minutes to solve. Creativity and problem solving are hard work and require fierce application of time and energy. There is no quick and easy secret. You need knowledge gained by study and research and you must put your knowledge to work by hard thinking and protracted experimentation. You’ve surely read of the difficulties and setbacks faced by most of the famous inventors--how many filaments Edison tried before he found a working one, how many aircraft designs failed in the attempt to break the sound barrier. But planning to persevere is planning to succeed.
2. A flexible imagination. Creative people are comfortable with imagination and with thinking so-called weird, wild, or unthinkable thoughts, just for the sake of stimulation. During brainstorming or just mental playfulness, all kinds of strange thoughts and ideas can be entertained. And the mind, pragmatist that it is, will probably find something useful in it all. We will look at several examples of this later on.
3. A belief that mistakes are welcome. Modern society has for some reason conceived the idea that the only unforgivable thing is to fail or make a mistake. Actually failure is an opportunity; mistakes show that something is being done. So creative people have come to realize and accept emotionally that making mistakes is no negative biggie. One chief executive of a big American corporation warns all his newly hired managers, "Make sure you make a reasonable number of mistakes." Mistakes are educational and can lead to success--because they mean you are doing something.

 

 

 

Characteristics of the Creative Person

  • curious
  • seeks problems
  • enjoys challenge
  • optimistic
  • able to suspend judgment
  • comfortable with imagination
  • sees problems as opportunities
  • sees problems as interesting
  • problems are emotionally acceptable
  • challenges assumptions
  • doesn't give up easily: perseveres, works hard



April 27, 2011

What we need to do for Bug Tracking

Bug Tracking:
Why we need to do that?
To make you app with more quality. Providing the application with quality on time....

  1. Steps to reproduce is always the important one for testers...this is helpful for Tester/ Developer to resolve the issue as quick as possible.
  2. Reporter of the bug should always change the status of bug to closed.
  3. If a Bug is rejected/ duplicate/ defferred... No worries on that... We are keeping track of that too.
  4. If a bug is not reproducible means that doesn't mean no one can reproduce it... At least one person in team can provide the steps to reproduce the bug.
  5. Don't forget to keep track of version, release, build, Commit version...
  6. Bug ID should be mapped with your test cases. Then only in future, whoever reading on the test case will know the scenario.
  7. Mail conversation will help the tester to analyse more on major bugs... Don't miss to add detailed description in mail.
  8. Attach the mail conversation of bug and keep track of it with defect tracking tool.
  9. Share the test data with developer, If possible share the exception logs too.
  10. Share the detailed DB information of the bug...
  11. Keep the bug in large database and store them properly for different releases.
  12. Add the required new fields for different team, different location, Different ID, different track for each and individual bugs.
  13. Try to assign the bug to right person. then they can finish it off easily and faster.

100% of quality product is not possible... But we can provide 100% as per our knowledge.

Test Scenarios for a coffee vending machine?

1.       Clicking on coin buttons should deposit appropriate amount into vending machine. Ex- clicking quarter button should deposit 25 cents. 
2.       Each coin deposited – should increase the total amount deposited by the appropriate amount. 
3.       Clicking on a dollar bill – deposits one dollar into the machine. 
4.       Clicking dispense button without enough money deposited - No pop should be dispensed. 
5.       Clicking dispense button with enough money deposited should dispense a pop. 
6.       Clicking dispense button with more money that required to buy a pop should dispense pop and return any money over the amount required to buy pop. 
7.       Clicking a counterfeit coin– coin should be rejected and returned immediately. 
8.       Clicking a counterfeit bill – bill should be rejected and spit back out at user. 
9.       Inserting money then pressing the coin return – total amount inserted should be returned 
10.   Coins return by coin return – should be the same coins deposited. Ex. 10 nickels deposited should yield 10 nickels returned. 
11.   Inserting one dollar and pressing dispense button with pop already in the dispenser – user should be prompted to remove pop from the dispenser before the machine dispenses another pop. 
12.   When the storage rack is empty – pressing the dispense button with appropriate amount of money inserted will not dispense a pop. 
13.   Inserted money when storage rack is empty – money should be returned to user. 
14.   Pressing ‘r’ – brings up dialog to enter machine ID. 
15.   Entering appropriate machine ID into the ID dialog – brings up fill machine dialog. 
16.   Entering more items than the storage rack can hold – user will be prompted that there are too many items. 
17.   Entering an inappropriate machine ID into the ID dialog – closes dialog without allowing user to refill the rack. 
18.   Inserting one dollar and pressing the dispense button – adds one dollar to total amount in the machine. 
19.   Clicking dispense button with no money inserted – user should be prompted for more money and no pop should be dispensed. 
20.   Display – vending machine should have the following components displayed.
1.       dispense button
2.       coin return button
3.       dispenser
4.       coin return dispenser
5.       coin slot
6.       bill slot
7.       message display
8.       Coke banner

Best Books for Testing Tools


Here I am giving some best practice books on Testing Tools for who want to be the best Testing Engineer….

  • Automated Software Testing – by Elfriede Dustin and Jeff Rashka
  • The Art of Software Security Testing – by Chris Wysopal, Lucas Nelson, Elfriede Dustin and Dino Dai Zovi
  • Quality Web Systems – Elfriede Dustin and Jeff Rashka
  • Effective Software Testing – Elfriede Dustin and Jeff Rashka
  • Software Testing: An ISEB Foundation
  • Quality Assurance for Information Systems – by William E. Perry
  • Automated Testing Handbook – by Linda G. Hayes
  • Automating Specification-Based Software Testing – by Robert M. Poston, IEEE
  • Surviving the Top Ten Challenges of Software Testing – by William E. Perry, Randall W. Rice
  • Customer Oriented Software Quality Assurance – by Frank P. Ginac
  • The Handbook of Software Quality Assurance (3rd Edition) – by G. Gordon Schulmeyer, James I. Mcmanus
  • How to Break Web Software – by Mike Andrews, James A. Whittaker
  • Implementing Automated Software Testing – by Elfriede Dustin, Thom Garrett, Bernie Gauf
  • Fit for Developing Software: Framework for Integrated Tests – by Ward Cunningham
  • Agile Testing – by Lisa Crispin, Janet Gregory
  • Software Testing and Continuous Quality Improvement, Third Edition – by William E. Lewis
  • How We Test Software at Microsoft – by Alan Page, Ken Johnston, Bj Rollison
  • TestGoal: Result-Driven Testing – by Derk-Jan de Grood
  • Optimize Quality for Business Outcomes: A Practical Approach to Software Testing, 3rd Edition – by Andreas Golze, Mark Sarbiewski, Alain Zahm
  • Introduction to Software Testing – by Paul Ammann, Jeff Offutt
  • Patterns for Performance and Operability – by Chris Ford, Ido Gileadi, Sanjiv Purba, Mike Moerman
  • Model-Driven Testing – by Paul Baker, Zhen Ru Dai, Jens Grabowski, Aystein Haugen, Ina Schieferdecker, Clay Williams
  • Software Testing: Testing Across the Entire Software Development Life Cycle – by Gerald D. Everett, Raymond, Jr. McLeod
  • Software Testing Process: Test Management – by Andreas Spillner, Tilo Linz, Thomas Rossner, Mario Winter
  • Pragmatic Software Testing – by Rex Black
  • Practical Model-Based Testing – by Mark Utting, Bruno Legeard
  • Software Testing: The Basics of the Trade – by Gaia Asher
  • Software Testing – by Ron Patton
  • Software Testing Techniques – by Scott Loveland, Michael Shannon, Geoffrey Miller, Richard, Jr. Prewitt
  • Software Testing and Continuous Quality Improvement, Second Edition – by William E. Lewis, Gunasekaran Veerapillai

Benefits of Automated Testing



Main Advantages and Benefits of Automated Testing Tools are these tools can run tests more faster than user, reliability, repeatability and etc. Here I am giving brief notes on Advantages of using Automated Testing Tools…

  • Fast – Automated tools runs tests significantly faster than human users.
  • Reliable – Tests perform precisely the same operations each time they are run, thereby eliminating human error.
  • Repeatable – The tester can test how the Web site or application reacts after repeated execution of the same operations.
  • Programmable – The tester can program sophisticated tests that bring out hidden information.
  • Comprehensive – The tester can build a suite of tests that covers every feature in your Web site or application.
  • Reusable – The tester can reuse tests on different versions of a Web site or application, even if the user interface changes.

April 21, 2011

Testing Checklists



Are you going to start on a new project for testing? Don’t forget to check this Testing Checklist in each and every step of your Project life cycle. List is mostly equivalent to Test plan, it will cover all quality assurance and testing standards.
Testing Checklist: 
1 Create System and Acceptance Tests [ ]
2 Start Acceptance test Creation [ ]
3 Identify test team [ ]
4 Create Workplan [ ]
5 Create test Approach [ ]
6 Link Acceptance Criteria and Requirements to form the basis of
acceptance test [ ]
7 Use subset of system test cases to form requirements portion of
acceptance test [ ]
8 Create scripts for use by the customer to demonstrate that the system meets
requirements [ ]
9 Create test schedule. Include people and all other resources. [ ]
10 Conduct Acceptance Test [ ]
11 Start System Test Creation [ ]
12 Identify test team members [ ]
13 Create Workplan [ ]
14 Determine resource requirements [ ]
15 Identify productivity tools for testing [ ]
16 Determine data requirements [ ]
17 Reach agreement with data center [ ]
18 Create test Approach [ ]
19 Identify any facilities that are needed [ ]
20 Obtain and review existing test material [ ]
21 Create inventory of test items [ ]
22 Identify Design states, conditions, processes, and procedures [ ]
23 Determine the need for Code based (white box) testing. Identify conditions. [ ]
24 Identify all functional requirements [ ]
25 End inventory creation [ ]
26 Start test case creation [ ]
27 Create test cases based on inventory of test items [ ]
28 Identify logical groups of business function for new sysyem [ ]
29 Divide test cases into functional groups traced to test item inventory [ ] 1.30 Design data sets to correspond to test cases [ ]
31 End test case creation [ ]
32 Review business functions, test cases, and data sets with users [ ]
33 Get signoff on test design from Project leader and QA [ ]
34 End Test Design [ ]
35 Begin test Preparation [ ]
36 Obtain test support resources [ ]
37 Outline expected results for each test case [ ]
38 Obtain test data. Validate and trace to test cases [ ]
39 Prepare detailed test scripts for each test case [ ]
40 Prepare & document environmental set up procedures. Include back up and
recovery plans [ ]
41 End Test Preparation phase [ ]
42 Conduct System Test [ ]
43 Execute test scripts [ ]
44 Compare actual result to expected [ ]
45 Document discrepancies and create problem report [ ]
46 Prepare maintenance phase input [ ]
47 Re-execute test group after problem repairs [ ]
48 Create final test report, include known bugs list [ ]
49 Obtain formal signoff [ ]

Novice tester Advices



Novice testers have many questions about software testing and the actual work that they are going to perform.  As novice testers, you should be aware of certain facts in the software testing profession.  The tips below will certainly help to advance you in your software-testing career.  These ‘testing truths’ are applicable to and helpful for experienced testing professionals as well.  Apply each and every testing truth mentioned below in your career and you will never regret what you do.
Know Your Application
Don’t start testing without understanding the requirements.  If you test without knowledge of the requirements, you will not be able to determine if a program is functioning as designed and you will not be able to tell if required functionality is missing.  Clear knowledge of requirements, before starting testing, is a must for any tester.
Know Your Domain
As I have said many times, you should acquire a thorough knowledge of the domain on which you are working.  Knowing the domain will help you suggest good bug solutions.  Your test manager will appreciate your suggestions, if you have valid points to make.  Don’t stop by only logging the bug.  Provide solutions as well.  Good domain knowledge will also help you to design better test cases with maximum test coverage.  For more guidance on acquiring domain knowledge, read this post.
No Assumptions In Testing
Don’t start testing with the assumption that there will be no errors.  As a tester, you should always be looking for errors.
Learn New Technologies
No doubt, old testing techniques still play a vital role in day-to-day testing, but try to introduce new testing procedures that work for you.  Don’t rely on book knowledge.  Be practical. Your new testing ideas may work amazingly for you.
You Can’t Guarantee a Bug Free Application
No matter how much testing you perform, you can’t guarantee a 100% bug free application.  There are some constraints that may force your team to advance a product to the next level, knowing some common or low priority issues remain. Try to explore as many bugs as you can, but prioritize your efforts on basic and crucial functions.  Put your best efforts doing good work.
Think Like An End User
This is my top piece of advice.  Don’t think only like a technical guy.  Think like customers or end users.  Also, always think beyond your end users.  Test your application as an end user.  Think how an end user will be using your application.  Technical plus end user thinking will assure that your application is user friendly and will pass acceptance tests easily.  This was the first advice to me from my test manager when I was a novice tester.
100% Test Coverage Is Not Possible
Don’t obsess about 100% test coverage.  There are millions of inputs and test combinations that are simply impossible to cover.  Use techniques like boundary value analysis and equivalence partitioning testing to limit your test cases to manageable sizes.
Build Good Relations With Developers
As a tester, you communicate with many other team members, especially developers. There are many situations where tester and developer may not agree on certain points.  It will take your skill to handle such situations without harming a good relationship with the developer.  If you are wrong, admit it.  If you are right, be diplomatic.  Don’t take it personally.  After all, it is a profession, and you both want a good product.
Learn From Mistakes
As a novice, you will make mistakes.  If you don’t make mistakes, you are not testing hard enough!  You will learn things as you get experience.  Use these mistakes as your learning experience.  Try not to repeat the same mistakes.  It hurts when the client files any bug in an application tested by you.  It is definitely an embracing situation for you and cannot be avoided.  However, don’t beat yourself up.  Find the root cause of the failure. Try to find out why you didn’t find that bug, and avoid the same mistake in the future.  If required, change some testing procedures you are following.
Don’t Underestimate Yourself if Some of Your bugs Are Not Fixed
Some testers have assumptions that all bugs logged by them should get fixed.  It is a good point to a certain level but you must be flexible according to the situation.  All bugs may or may not be fixed.  Management can defer bugs to fix later as some bugs have low priority, low severity or no time to fix.  Over time you will also learn which bugs can be deferred until the next release.  Read article on ‘How to get all your bugs resolved‘.
Over To You:
If you are an experienced tester, what advice do you like to give to novice testers?