The most important activity in the STLC(Software Test Life Cycle) is raising bugs and bug status management.The typical states of a bug can be summarized as follows: 1. New 2. Open 3. Assign 4. Test 5. Verified 6. Deferred 7. Reopened 8. Duplicate 9. Rejected and 10. Closed Every project or product has predefined bug states that every bug goes through, depending on the bug management tool used or the project/customer requirement. However the typical Bug Life Cycle is illustrated below : Follwing are the definations for each state in the above illustration --
1. New: When the bug is posted for the first time, its state will be “NEW”. This means that the bug is not yet approved. 2. Open: After a tester has posted a bug, the lead of the tester approves that the bug is genuine and he changes the state as “OPEN”. 3. Assign: Once the lead changes the state as “OPEN”, he assigns the bug to corresponding developer or development team. The state of the bug now is changed to “ASSIGN”. 4. Test: Once the developer fixes the bug, he has to assign the bug to the testing team for next round of testing. Before he releases the software with bug fixed, he changes the state of bug to “TEST”. It specifies that the bug has been fixed and is released to testing team. 5. Deferred: The bug, changed to deferred state means the bug is expected to be fixed in next releases. The reasons for changing the bug to this state have many factors. Some of them are priority of the bug may be low, lack of time for the release or the bug may not have major effect on the software. 6. Rejected: If the developer feels that the bug is not genuine or is not reproducible after multiple attempts, he rejects the bug with tester's consent. Then the state of the bug is changed to “REJECTED”. 7. Duplicate: If the bug is repeated twice or the two bugs mention the same concept of the bug, then one bug status is changed to “DUPLICATE”. 8. Verified: Once the bug is fixed and the status is changed to “TEST”, the tester retests the bug. If the bug is not present in the software, he approves that the bug is fixed and changes the status to “VERIFIED”. 9. Reopened: If the bug still exists even after the bug is fixed by the developer, the tester changes the status to “REOPENED”. The bug traverses the life cycle once again. 10. Closed: Once the bug is fixed, it is tested by the tester. If the tester feels that the bug no longer exists in the software, he changes the status of the bug to “CLOSED”. This state means that the bug is fixed, tested and approved. It is very important for both development and testing team members to understand the bug life cycle very clearly and assign the right bug status to bugs after it is raised, fixed or verified. Seting wrong bug status can lead to chaos and will give a false picture of the product quality. This is because most of the quality reports or graphs use the bug state count matric as an important input. This article explains only the typical bug states, though in the actual practice the projects can have their own defined bug states which is supported by most of the bug tracking tools. Test environment setup is one of the most challenging tasks in the STLC. Especially for the software products that support multiple flavours of OS and various setup combinations, it is a tedious task to generate the test environment for every combination. Virtual computing comes as a rescue to address this problem and is very handy to control the test environment that we work in and to switch the environment quickly without much hassels.
To start with, I would like to share some basics on virtual computing for the benefit of the people who are new to the virtual computing world. Here are some basics : What is a Virtual Machine? A virtual machine (VM) is an environment, usually a program or operating system, which does not physically exist but is created within another environment. In this context, a VM is called a "guest" while the environment it runs within is called a "host." Virtual machines are often created to execute an instruction set different than that of the host environment. One host environment can often run multiple VMs at once. Because VMs are separated from the physical resources they use, the host environment is often able to dynamically assign those resources among them. How it works? A virtual machine is a computer application which presents simulated hardware to an operating system running as a process on a host system. Virtual machines are useful for testing or deploying multiple independent operating systems on a single physical machine. As different types of operating systems can be run at the same time, including legacy and bleeding-edge systems, compatibility issues can be easily investigated and data migration can be performed in a simple copy operation. Operating systems running in virtual machines are also very simple to back up and restore to any given state. Malware that affects a guest OS running in a VM cannot affect the host system, and a process that crashes a guest OS will not crash the host. Additionally, an operating system stored as a virtual machine can be copied and run on completely different hardware within seconds, reducing system downtime in critical applications where hardware failure could be catastrophic. Although it is common to run the same type of operating system in a virtual machine as that of the host machine, often VMs are used to test or deploy different types of systems in parallel. The most commonly used cross-platform virtual machine in use today in VMWare's family of products. The free VMWare Player and VMWare Server allow the end user to install and run virtual machines on Windows and Linux platforms, with precompiled binaries available for RPM-based Linux distributions. The VMWare Player, as it's name implies, will run prebuilt virtual machines but cannot create a new machine. It's small size is ideal for those who want to experiment with any of the available Virtual Appliances available, or run a virtual machine that had been sent to them. The VMWare Server can create new virtual machines, and can modify existing machines by installing specialized drivers, called Tools. All VMWare products can run virtual machines created on other VMWare products or on popular competing products such as those offered by Microsoft and Symantec. I am extremely excited to start this Testing Basics blog and hope that this blog will be able to serve its purpose continuosly as we grow. Since this is the very first post of the Blog, I would like to explain the purpose of starting this Blog. This Blog will discuss anything and everything that is related to Software testing world.. |
ContactCategories
All
Search TestingBasics.com![]() Custom Search |