Friday 23 November 2012

SOFTWARE TESTING

   What are the Pros and cons of requirements-based software testing?

Requirement based software testing is testing of product based on requirements provided in requirement documents like Use Cases or 3Cs to ensure all features are developed as per the requirement or not. Test cases are created and executed based on requirements to make sure each and every requirement is covered correctly.
However, requirement based testing is not effective if requirements are not provided in detailed or defined properly. Sometimes, requirements are missed by Business Analyst and hence will not be developed and tested. Many times, real world business scenarios are not covered in requirement documents which are left undeveloped and untested.
So, requirement based testing is effective if requirements are documented properly.

In the beginning of the testing cycle, it is important to first validate the requirements and check their correctness, unambiguity, and logically and practically its consistency. In validating the requirements and verifying the build product, a requirements based testing is done. To achieve this, testers write a sets of test cases on all functionalities on the basis of the requirements outlines and provided by stakeholders.
As every coin has two sides, thereby requirement based testing has its own pros and cons, that are outlines as below:

Pros:

1) Firstly, As requirement based testing demonstrates that the software meets the requirement or not, so by this it adds value to the product/software if meets the requirement, so this leads to the building of an accurate and reliable product/software .

2) Secondly, there are always a variety of tests involved with requirement based testing like Black
Box, Integration, System, Coverage testing with which the quality is ensured

3) All the requirements are validated, if the product is build as per the requirements.

4) Logical consistency of the application is checked.

5) Acceptance of the application is marked from the stakeholders perspective.

Cons:

1) As most of the requirements are poorly defined, or even not defined as it should be, hence requirement based tests can never be better, because if the requirements are poorly defined , it would never be exact what to develop and what to test. Everything would work on guesses.

2)  As, Requirements-based testing is a black box testing. So till the application is producing the expected results, the test cases are passed. Requirement based testing is not concerned about how the results are produced, or the effects/impact it may show on other parts of application.

3) From RBT, how much a requirement is valid is not considered. No feasibility analysis for this done.

4) RBT should not be completely depended for the Pass/Fail of the application.


Sunday 23 September 2012

Based on your Expertise please share what will be the top 5 Trends to drive market for Leading software testing Companies in 2012-13.

"I, see some major trends in business and information technology, and drive market for software testing in 2012-13. Some of these shaping trends are:
1)Mobility Application Testing : Since the smart phones have become more accessible, the convenience of using the internet on the move has seen many people use this platform as opposed to the PC for accessing the internet. So business demand develops application portable to mobile. Smartphone’s are on a rampage and are dominating the market. Mobile apps of various OS are popping everywhere. Thus, there is a huge scope of mobile app testing. Now-a-days, mobility is not just limited to receive/make calls on-the-go, but has transformed as an essential living style. Mobile/Smartphone testing assures the quality of mobile devices, like mobile phones, PDAs, etc.
2) Testing-as-a-Service/Cross Cloud computing: With TaaS or cross cloud computing, organizations are benefitted huge cutback in infrastructure costs, immediate access to a range of testing scenarios and capabilities, and reduces resolution time for critical and non-critical defects. TaaS stands for Testing as a Service. It is one of the platforms provided by the Cloud Infrastructure. It is a type of software testing which ensures the quality of the process through which the organizations can use applications on the internet without investing in new infrastructure and licensing new software.   

3) Business Intelligence Testing: Data is increasing in huge volume hence filtering meaningful data is huge challenge. The efficiency quotient of a business intelligence tool lies in its ability to crunch huge loads of data, present meaningful results that can be used by top business users. Some secure web applications contains classified data and exposure of the same to the test engineers may be harmful for the enterprise. Thus, there is a need to generate and manage test data so that it can be used by the test engineers without leaking vital information.

4) Crowd sourced Testing: Crowd sourced testing is getting pace across the industry to perform testing to uncover bugs and suggest new ideas. And enterprises now prefer a crowd sourced marketplace so as to get access to global talent and different set of skills. It is the process of outsourcing various tasks and activities to a group of teams or individuals. In testing field, a group of professionals are invited to find loopholes in the application and provide concrete suggestions to improve the user experience.
5) Test data generation and management: Test data creation and management would ensure the best use of filtered test data. Here, mainly the efficiency of the tool is put to test. Performance test engineers check for slowness of the system when huge volume of data is processed.
6) Agile Testing:  This evolving methodology helps to release the product in the market ASAP by continuous releases of functional software (rapid agile sprint process).
7) Web Accessibility Testing: It is a division of usability testing where the targeted users have disabilities that involve how they use the application.
8) Independent Outsourced Testing: It provides a neutral and fresh approach which is essential for the market success of the software product.

Wednesday 19 September 2012

What Happens when a QA Testing Company Introduces a New process within Ongoing Project? Share your Experience with us.


What Happens when a QA Testing Company Introduces a New process within Ongoing Project? Share your Experience with us.
                    
Introducing a new process within an ongoing project in an organization is a sensitive decision. Various highlighted points which should be kept in consideration while introducing the new processes to the current process within an software organization are summarized as follows:

1: Size of the organization plays a vital role in introducing the new processes within an organization and subsequently risk associated with the organization is a major factor. Larger the size of the organization greater is the risk involved in implementing the new process to the ongoing processes.

2: Balancing should be maintained with productivity and the output of the organization. Management should be smart enough to decide the goal of project, Test requirement specification documents being used to create design documents for a project.

3: Sometimes performing Ad-hoc is well enough and all this depends on the size of the project with which the organization is dealing with. There should be a fair channel for communication within Team leads, Managers, Developers, QA Team and the end users so that the scope and the progress of the project is well defined and there is no discrepancy within various phases of project.


Injecting new Software QA Processes in an existing organization depends upon:-

a) Organization Strength: For large organizations with high risk projects, serious management buy-in is required and a formalized QA process is necessary.

B) For small groups or projects, a more ad-hoc process may be appropriate, depending on the type of customers and projects. A lot will depend on team leads or managers, feedback to developers, and ensuring adequate communications among customers, managers, developers, and testers.

For more on this, please log on to:- http://www.qainfotech.com/

Wednesday 22 August 2012

Test Automation Framework

Can you differentiate between Test Plan and Test Strategy? Do we really need Test Plan documents?

Test strategy is a higher level document defining “How to test”. However; Test Plan defines “What to Test”.

Test strategy defines how different functionalities will be tested and testing tools to be used. Also, it provides test cases designing methodology that will be used. But test plan defines; features to be tested (In –scope), features not to be tested (Out scope), risk analysis, entry and exit criteria, Roles and responsibilities of each and every team member and Project Schedule It is a set of guide lines that describes test design. Test strategy says - How testing is going to be performed? What will be the test architecture? Test Strategy Document describes what we are going to test and what all are the testing approach to be followed by the Test Engineer.

Below are some more points that can be included in Test Strategy Document:

a) Defect Report and Tracking
b) How to communicate between Team and Status reports

Test Plan is the set of ideas that guide or represent the intended test process. Test plan is the sub set of Test Strategy. Test Plan covers – What needs to be tested, How testing is going to be performed? Resources needed for testing, Timelines and Risk associated. A test plan acts a guide in the project. It ensures that a project meets all of its specifications and other requirements. It is really good to have a test plan in a project. More than having it, it’s more important is it being followed. A Test Plan is document that is usually prepared by Manager or Team Lead. A software project test plan is a document that describes the objectives, scope, approach, and focus of software testing effort.

Different types of Test Plans
a. Unit
b. Integration
c. System
d. UAT

The way tests will be designed and executed to support an effective quality assessment is called Test Strategy.


Mentioned below are some points that a good Test Strategy should follow:

A. focuses most effort on areas of potential technical risk, while still putting some effort into low risk areas just in case the risk analysis is wrong.

B. address test platform configuration, how the product will be operated, how the product will be observed, and how observations will be used to evaluate the product

C. is diversified in terms of test techniques and perspectives. Methods of evaluating test coverage should take into account multiple dimensions of coverage, including structural, functional, data, platform, operations, and requirements.

D. Specify how test data will be designed and generated.
Different test techniques ( Ad hoc, Exploratory, Specification based, code based, Fault Injection and etc) and test methods (Black, White and Incremental) is used while designing test cases and execution

Few says that Test Plan document is required for testing as it really contains some useful information such as What needs to be tested, How testing is going to be performed? Resources needed for testing, Timelines and Risk associated.

Do we really need Test Plan?

Test Plan covers:

a) What need to be tested
b) When to start testing
c) Resources needed for testing
d) Risk associated etc?

But most of the people says that, for efficient Test Planning we do not need Test plan document. Just identify your test strategy and carry on with your testing. No wonder that Test Plan documents are not required formulating a plan. Planning can be done without the Test Plan documents. However, from a systematic point of view, having Test Plan documents is preferable.

For more details, please log on to: http://www.qainfotech.com/eLearning.html

Sunday 10 June 2012

 
Outsourced Testing: The future ahead



Does it mean hiring a third-party vendor and entrusting them with the responsibility of the testing division and holding the vendor responsible if something goes haywire? It means much more than that. Before going into the intricacies of outsourced testing, I would first like to talk about how specialization plays a major role in every one’s day to day life. It seems weird but outsourced testing and specialization have a very deep correlation.

Since the beginning of the human civilization, an increasingly complex division of labour is closely associated with the growth of total output. Someone once said "To specialize is to brush one tooth. When a person specializes he channels all of his energies through one narrow conduit; he knows one thing extremely well and is ignorant of almost everything else." For example, what happens when your water tap breaks down or for that matter one of your electronic equipment stops working.

What comes to our mind if something like this happens? Do we start repairing it on our own or do we immediately call for a plumber or an electrician. Have we ever thought why we do that? I know it is a stupid question to ask but they are the first person that comes to our mind because they specialize in their job. Thus in a way we are outsourcing a job to an individual that specializes in that job.

original source from : QA InfoTech Website

Tuesday 22 May 2012

QA Thought Leaders discussion forum


Our QA thought leadership ensures that we take a step forward towards client benefit.  You need to go an extra mile being a seasoned QA professional along with end to end software quality assurance and testing expertise.

To know what our QA Though leaders share, join our discussion forum at: 

Tuesday 15 May 2012

Software Test Metrics: Empirical Approach towards Quality - An article by QA InfoTech


80% of average project costs indulge to fix challenges, bugs and other issues during the development of a project. No other business can afford this much failure in terms of budget and time. There can be many reasons for such failures; the focus of our discussion here is not to discuss the roots of such failures but how to improve effectiveness in terms of time and moneyIn agile methodology, transparency is a big challenge as there is no documentation. It's very important to pick effective metrics to use as you can't manage what you can't measure.
In Software quality testing, there is an important role of ‘Metrics’ popularly known as Software Metrics;”software metric is a measure of some property of a piece of software or its specifications “[Source:http://en.wikipedia.org/wiki/Software_metric]. Software metrics can be an answer to many questions, like planning budget, cost estimation, assuring quality of a product, software debugging, software performance optimization, and resource management.


About the Author:
Knowledge Sharing Team at QA InfoTech is responsible for research on new tools & technologies for effective Software quality testing servicesacross all industry verticals. QA InfoTech (an ISO 9001:2008 & CMMI III certified) is one of the leading Software QA Testing Companies with five testing “Centers of Excellence” in the United States and India.  It offers end to end automated testing services.


For more visit us at: http://www.qainfotech.com/service_offerings.html

Sunday 13 May 2012

No One Left Behind : Make Time for Accessibility Testing

You might be surprised to know that currently 650 million people—or 10 percent of the world’s population — live with some form of disability . With the growing use of software in all walks of life, this is a major segment of the population that cannot be left behind.


Disabilities and associated accessibility problems largely fall under four categories:
Visual Impairments: partial or complete loss of vision. Low or no vision affects the user’s ability to discern or see the screen. Core assistive tools and technologies for the visually impaired include screen readers, braille terminals, and screen magnification tools


About the Author
As director of engagement, Rajini Padmanaban leads the engagement and relationship management for some of QA InfoTech's largest and most strategic accounts. She has more than ten years of professional experience, primarily in the software quality assurance space. Rajini actively advocates software quality assurance through evangelistic activities including blogging on test trends, technologies, and best practices, providing insights on software testing to analyst firms such as Gartner and IDC. Her official blogs are available at: http://www.qainfotech.com/blog/. She lives in Seattle, WA and can be reached at rajini.padmanaban@qainfotech.net.

Ways to design tests in an Agile model

Do you know the ways in which Test can be designed in an Agile model


Agile lifecycle and methodology of developing software are terms that have gained a lot of popularity in the last 5 years or so. Everyone has come to accept the iterative development cycle, short release cycles, focus on collaboration between teams with lower emphasis on documentation across disciplines. One of the associated areas in Software Testing is how much emphasis should be given to formal test designing and should it be done any differently in Agile than in traditional waterfall development models.


For original Article source : http://www.qainfotech.com/blog/2012/05/designing-tests-in-the-agile-world/

Tuesday 24 April 2012

Domain Knowledge in Software Testing – is it really needed and how do you address the dearth of experts?

I have come across this nice Article posted by QA InfoTech in their Corporate Blog about the Domain knowledge in Software Testing.


Until a few years ago, testing was a horizontal discipline. Someone with core disciplinary knowledge, who understood how the Software Test Life Cycle (STLC) worked, who understood test implementation from standpoints of test strategy and planning, test case design and execution, defect management could really test any product at hand.
  
Then came in a timeframe, where specialization in test started gaining prominence. Someone with specialized skills in areas such as performance testing, security testing, database testing, localization testing could build a niche for themselves in these areas going deeper into each of these disciplines.
  
To read more, please visit: http://www.qainfotech.com/blog/2012/04/850/

Saturday 21 April 2012

Is a test strategy really becoming an obsolete artifact?

Until a few years ago, I vividly remember a separate phase in the software test life cycle that used to be dedicated to the development of a master test plan or the so called holy test strategy which served as the guiding document outlining the software testing process specific to the product under test. It was usually drafted by the test director or the test manager and was representative of the test team’s intelligence in helping them making the product sign off call. Such was the importance of this document; it also served as a reusable artifact often carried across releases, products and teams. Given the relative stability in the development environment such cross sharing and reusability were feasible.   

To read more: http://www.qainfotech.com/blog/2012/04/is-a-test-strategy-really-becoming-an-obsolete-artifact/

Sunday 8 April 2012

Software Testing Framework:


Software testing framework:

You may have the choice of various software testing framework but getting the best one is very crucial. 

Framework driven test automation development is a best practice that has been advocated by several companies and experts in the last decade. The productivity gains, efficiency in maintaining automation code and quality of test automation code have all been spoken about at length, but really how many have actually implemented such frameworks, how they have implemented, what benefits they have been reaping are all very specific to each such effort.

QA Testing Methodology at QA InfoTech


QA Testing Methodology:

Defining a proper QA Testing methodology requires lot of expertise. With years of experience our domain experts can help you with a perfect QA Testing Methodology.
We pride on an open, transparent and objective test life cycle as part of our overall methodology. Here’s how a typical test project lifecycle is setup at QA InfoTech:
http://www.qainfotech.com/images/innovation_TestProcessesMethodology_clip_image004.gif