IEEE 829-1998, also known as the 829 Standard for Software Test Documentation, is an IEEE standard that specifies the form of a set of documents for use in eight defined stages of software testing, each stage potentially producing its own separate type of document. The standard specifies the format of...
What is test plan in software testing?
Software testing is a planned, organized and systematic software quality assurance steps, rather than casual, loosely and messy implementation of QA activities. As per IEEE Standard 829-1982 definition a software test plan is a document which describes the scope...
Question by Please help: What are the test automation tools that use perl as the scripting language? ? I would like to know, What are the automation tools that use PERL as the scripting language for automation? And please let me know if there are any tools(freeware) which can be used to test (Automation)...
Question by climm2: How is software testing done in the real world? I am taking the verification and the validation class. It teaches me many concepts and guidelines. I am wondering if these are used at all in the real world. If you work in the industry, please tell me how your company goes about...
Question by Nancy Philip: Software Testing? I am looking for a job in Software Testing.Can anyone explain to me about these terms-MANUAL TEST SCRIPT,Test scenario?
What is Manual Test script? What is a Test Scenario?
Best answer:
Answer by Abhinav GuptaTEST SCRIPT: ———————
http://en.wikipedia.org/wiki/Test_script
A...
VoIP penetration testing- definition of this innovative testingNowadays the voice and data has combined to form a new and single network. It is very important for developing your present company. But this combination of voice and data has also made an easy way for the hackers to enter on your computer...
What is Penetration testing or Pen-Testing?Nowadays, there are thousands of people, trying to hack your business organization just to have name and fame. So, strict security system is very important for every well known organization. The main reason of frequently breaking down the security system is...
One of the most important means of standard of the IT companies and the software development companies is the agile development. It creates the environment to development corporate software or for provision of specific user settings. Some of the basic means of agile development are creating the system...
Defect is the variance from a desired product attribute (it can be a wrong,missing or extra data). It can be of two types – Defect from the product or a variance from customer/user expectations. It is a flaw in the software system and has no impact until it affects the user/customer and operational...
User Interface testing guidelines are set of instructions that ensure that the product meet its planned/written specifications. And to achieve this goal a wide range of test cases is done. These test cases can become a real burden to the tester if they are not well equipped and experienced. When dealing...
In the field of SQA the term Configuration Management refers to a process in which QA engineers seek the best possible solution of handling the changes during the software project stages. It's sole responsibility is to maintain the integrity and traceability of the software development process. This...
Before we discuss that what are good Defect Tracking process first of all we'll discuss what exactly is a defect itself. If we are to understand, in a nutshell, that what a Defect is then we'll come to know that a defect in a software is usually a term that defines the concept of a failure to conform...
Software testing defect metrics is used to measure the quantification of a software related to its development resources and/or development process. It is usually responsible for quantifying factors like schedule, work effort, product size, project status and quality performance. Such metrics is used...
The main purpose of boundary value analysis is to properly concentrate the testing efforts on error infected areas by accurately pointing out the boundaries of conditions, for example: a programmer can specify >, when the requirement states > or = and there are more examples to cover the...
When we start our career in software testing, we often get confused about our roles and responsibilities. Even when we get promoted from one role to another it becomes sometimes difficult to understand the new role properly. In this Software Testing Careerpath article I have tried to explain some of...
Today's enterprises need to control their business-critical applications in all functional tests to ensure that all business processes work as expected. By implementing automated functional testing, companies can dramatically improve the test speed and accuracy and get higher return on investment and...
GUI automated testing needs some experience, and I personally think that one year experience in a formal project should give you a good jump start in UI automation. The following points are very important for automation of user interface testing:1. Do not completely rely on the automation test tool’s...
This article describes the roles and responsibilities for each Qulaity Assurance (SQA) person assigned to a Software Project.SAM (Systems Assurance Manager)Duties include, but are not limited to:· Assure and manage SQ personnel resource levels· Ascertain that SQ personnel have business...
In this article we have tried to map a Software Quality Assurance Life Cycle or Software QA Life cycle with a the normak SDLC. Also for each phase of SDLC the SQA activities are identified:
1. Software Concept and Initiation PhaseSQA should be involved in writing and reviewing the Management Planto...
Software QA Plan
A Good Software Quality Assurance program needs forward planning and following through it. The SQA plan defines its goals, tasks to be performed, and the standards and procedures against which the development work is to be appraised. The purpose of this Software Quality Assurance (SQA)...
Welcome to SQAT Blogs!
A short description about your blog
“Scenario” is already used in the software industry since 1980s. However, it was first used by the United States in military planning in 1950s. In software development, scenarios are used in verifying suitability of a certain software application for its intended use through hypothetical stories.
Despite there is no procedural attempt to clearly establish software testing in a realistic environment, scenarios provide practical situations and user-oriented actions in validating software operations. It also allows testers to thoroughly understand the complex problems and systems behind the software. There are two types of scenario testing. First is field test, and the other is laboratory test.
Field testing is considered to be the least obtrusive because actual operating environment and user actions are being used, or at least mimicked, during testing. Actual factors like noise level, room capacity, amount of data processing, etc. should be used in testing. Work pace is also important because it can present other considerations like operation and idle time.
In laboratory testing, abnormal situations are being considered by having isolated cases of user actions. It does not need to be similar with day-to-day software usage but should be more focused in acquiring diverse and abnormal results using varying data collection methodologies. Because of this, lacking error handling capability is often detected in laboratory testing.
Between the two, field testing is more realistic and can be thought as “acceptance testing.” On the other hand, laboratory testing is more theoretical and can be thought as “fail-safe testing.” Users can benefit more from reliable field test while developers can benefit more from efficient laboratory test.
The characteristics of scenario testing are the following:
• Story-based
• Motivating
• Credible
• Complex Software Usage Environment
• Testable
Scenarios should include stories, or sample situations on how the system will be used, and some information about the user. It should also be motivating to drive the persons involved in the development to fix the problem. One way of motivating them is to have credible story. It should be believable enough that such situations can occur in real-life and not a mere possibility. High software usage should also be considered to unlock hidden bugs and relationships between system features and lastly, the scenario should be testable.
Scenarios are quite different compared with other testing because a good scenario requires creativity and imagination. Thus, many teams are hesitant to implement it because they only see this difficulty and not its advantages. Listed below are the benefits of scenario testing:
Faster Learning of the System
Scenarios allow testers to investigate the entire system by themselves without following any guidelines or checklists. This causes them to understand the system faster because people can learn better by doing actual tasks their own way instead of using the system against its manual. This can also result to mastery and expert usage of the system.
Reveal Hidden Failures
Abnormal scenarios lead to exposing bugs caused when software has insufficient error handling. Unexpected user actions are also trapped by well-built scenarios.
Relate User Requirements with Software Operations
Properly defined field tests result to highly acceptable software. This is because normal scenarios represent user requirements and satisfying the scenario is satisfying the requirements.
Five keys to Choose the most effective Regression Test Cases
By definition regression testing is a new round of software validation after a build release with bug fixes. According to Microsoft's statistics, in accordance with their experience, most developers will introduce one fresh defect after solving 3 ~ 4 defects. So we need to do regression testing to find those newly introduced bugs.
In general, higher the coverage of the regression, lower the risk, but the time it will take will be more and vice versa. So, if time allows, once should cover all test cases as part of the regression test suite but generally will not have so much time. This requires us to make a balance between effort it takes and coverage of the test use cases used as regression testing.
When choosing regression testing, the first thing to determine is the ratio of regression test cases, this situation should be based on time, and 100% are the best, but because of the time constrains this ratio is generally around 60%. Then we have to determine the regression test cases' priority.
Let's check the seven most common Regression test selection method:
1. First check the newly modified features (if there is any) in the new build release.
2. Then find the impact areas, meaning because of the introduced new features. What the closely coupled areas can get impacted? All those related modules need to be retested as part of regression testing.
3. Include the main flows or highly used areas of the program. You can easily get the frequency of the use of a particular module, and if it is very high then that is the area you need to retest.
4. Furthermore, the most vulnerable parts of the program, for instance, security risks, data leakage, encryption registration;
5. If the above done, there is still time, then best to include some of the alternative flows test cases found the use case. Alternative flows are not happy path testing but some other ways to use the programs.
These are the regression test case selection priority. In most of the organization people use some automation tools to automate the regression test cases. It always has got good ROI.
|
|
Posted by Manas09 in Untagged
|
|
Boundary analysis is a software testing technique that divides expected input data into three, first is those that belong within an expected range, second are those below the minimum value, and third are those above the maximum value. It is actually a variation of data partitioning known as equivalence partitioning.
Studies show that probability of encountering software fault increases as it approaches its boundary. Thus, this testing used equivalence partitioning and its three segments in testing. This testing is also founded from the assumption that if the system will yield the correct results from single representatives from each of the three segments, it will be true for all values that belong to each segment.
Boundary errors usually occur because of faulty logical conditions like greater than, less than, etc. Zero starting value for computer counting also contributes to incorrect developer logic.
The purpose of boundary analysis is to focus the test cases in areas most susceptible to errors through accurate pinpointing of minimum and maximum values. For example, text box in a software interface can accept numeric inputs between 1 to 100. Possible equivalence partition values can be 0, 5, and 101.
In performing boundary value analysis, there are two main steps to follow, identifying equivalence partition and designing test case.
Identifying Equivalence Partition
This is very similar with determining the minimum and maximum values then specifying values three values to satisfy the three equivalence partition. The difference is that expected output from user requirements are now included in consideration. For example, inputs above the maximum acceptable value will display certain information like items n the entire inventory, or anything that is written in the specifications.
Designing Test Case
Steps are the same with equivalence partitioning. However, rules in formulating their test cases are different. Instead of focusing on the equivalence values, the following rules should be applied:
Valid test item conditions should be written for value within the range, and invalid conditions should be written for values outside the range. Valid and invalid conditions can be combined depending on the style of the test case developers.
First and last entries of used files should be included in the consideration.
Search for other exaggerated input and output values then, write their corresponding test cases.
Just like with other testing methodologies, boundary analysis has its limitations. One is its inapplicability to some programming language. Strong-typed languages, or those that require a specific data type for each variable, has lower boundary analysis efficiency compared to be weak-type, or those that allow cross-typing of variables. However, modern technology already resolved this limitation by more advanced partitioning techniques. Another boundary value analysis limitation is its poor judgment when it comes to relationships between variables. This analysis can only cover expected behavior when a value fluctuates beyond its normal range. However, not when variable dependencies exist in the system.
Evident advantages of boundary value analysis are improving code robustness and preparing the system for worst-case scenarios. Robustness is improved because “clean” and “dirty” test cases are being utilized in testing. “Clean” cases represent those within the allowable range while “dirty” cases represent those outside the range. In addition, clean and dirty cases help in assessing the system capability to handle worst-case conditions.
|
|
Posted by Manas09 in Untagged
|
|
AJAX Testing
With the increasing popularity of Web 2.0, a large number of web applications have become more complex using advanced techniques such as Asynchronous JavaScript and XML (AJAX) which gives tremendous usability benefits. AJAX makes asynchronous calls to the web server to create more responsive web applications. Testing AJAX-based web applications is even more challenging compared to traditional web applications.