Beruflich Dokumente
Kultur Dokumente
Before learning the intricacies of Software testing, one needs to know what are the pre requisites to learn testing. It is very much important to gain a momentum and know the computer terminologies for any layman such as what is a program, how does a software work, what is the life cycle of any software, different languages used (high level knowledge is preferred), what is meant by execution of a software, different kinds of executables( exe, binaries etc), etc. After knowing this, you should start learning various terminologies used in software testing such as process, test strategies, methodologies, types of testing, tools used etc. After this learn what is the bug life cycle, how can we detect bugs, different bug status, bug priority, bug severity, how do we go about systematic testing, understanding the difference between defects, errors, bugs, etc. Internet has lot of resources which can give you authentic and appropriate information regarding various aspects. You can even ask your doubts in the software testing forums, subscribe to the feeds and newsletters to learn more about the current happenings in testing world. Finding faults in the functionality is the first step to learn testing for beginners. It is also important to understand the requirements, this can be done by reading the requirement or functional and design specification documents. It would be great to learn software testing on the job. If requirements are not clear or no requirements are given then use your common sense, confirm with seniors and clients. Remember there should not be any assumptions in software testing; it should be strictly carried out in compliance with the client requirements. Try to test in an explorative fashion which will help you even if you do not have any user guides and documents. Creativity counts to the quality of the product, hence be more creative and expand your horizons as much as possible while examining the software. In some cases test cases would have been given where you have to just do checklist verification against the expected and actual results. While in many other cases you might have to do some adhoc testing, I would suggest the more you test the software in an adhoc way, the more you will learn about the software, hence easier would it be to test it. It is very much true that books are mans best friends. Ian Somerville is the best book for beginners. You can also go for testing certifications which are provided by various vendors like QAI, ISTQB, CSTP and CSTE. Certifications in both manual, automated are available, which could give you in depth knowledge of testing along with certification which could be very easy in landing up with a decent job.
Bugs Isolation of potential problems Configuration How do different settings affect the softwares ability to handle data? Endurance Long-term ability to handle loads Environmental Measures performance with different surroundings Load How much data or web traffic can be handled Resource Usage Efficiency How well it uses power and storage resources Spike Used for Internet software that must manage peaks of high web traffic for short amounts of time Stress Upper limits before performance suffers.
When software developers create their programs, they have a certain vision of what they can do. Software testing must prove or verify that these expectations have been reached. In the midst of software development, weak links can be adjusted, tweaked, or modified to fine-tune or improve performance if certain expected standards have not been met. Software testing can also be used to compare programs with one another. Information technology (IT) professionals want measurable or quantifiable performance standards that can be used to compare software programs with one another. These software tests can also reveal the conditions under which the software program achieves peak performance. End users must know what types of computer systems will run the software. They will expect a certain level of performance based on successful software tests. If the software cannot handle a required workload, then another program will be considered. Scalability is an increasingly important issue as computer users require better software programs as their businesses grow. Software testing can prove whether speed, load, or durability can be easily improved with a minimal investment in the future. Good software must grow as businesses grow.