Saturday 17 November 2007

Statement Coverage & Decision Coverage

ISEB Foundation Certification Syllabus Covers three TEST DESIGN TECHNIQUES,
The 3 categories are :
1) Specification based or Black box testing.
2) Structured-based or White-Box Techniques.
3) Experienced Based Techniques.

As per the request of my blog readers I would like to post the "Structured-based or White-Box Techniques" first then later on continue with other design techniques.

TEST DESIGN TECHNIQUES for Structured-based (or) White-Box Techniques are:
-> Statement Testing Coverage
-> Decision Testing Coverage

{Statement Coverage & Decision Coverage : These 2 topics are covered in ISEB foundation Syllabus in 4th chapter "TEST DESIGN TECHNIQUES".}

Structured-based or White-Box Techniques :

White Box Testing :
-> Testing based on Knowledge of internal structure and logic.
-> Logic errors and incorrect assumptions are inversely proportional to a path’s execution probability.
-> We often believe that a path is not likely to be executed, but reality is often counter intuitive.
-> Measure Coverage.

Structured-based or White-Box Techniques is based on an identified structure of the software or system, as seen in the following examples:
Component level: The structure is that of the code itdelf, ie., statements, decisions or branches.
Integration level : The structure may be a call three (a diagram in which modules call other modules).
System level : the structure may be a menu structure, bussiness process or webpage structure.

Structure-based or white-box testing can be applied at different levels of testing. Here we will be focussing on white-box testing at the code level, but it can be applied wherever we want to test the structure of something - for example ensuring that all modules in a particular system have been executed.

** Further we will discuss about two code-related structural techniques for code coverage, based on statement and dicision, are discussed.

** For decision testing, a control flow diagram may be used to visualize the alternatives for each decision.

As said earlier, I focus main on code-related structural techniques. These techniques identify paths through the code tha need to be excercised in oredr to acheive the required level of code average.

These are methods that can be deployed that can make the identification of white-box test cases easier - one method is control-flow graphing, control flow graphing uses nodes, edges and regions.. I will show them in detail with examples here..

Now comming to the actual topic :

TEST DESIGN TECHNIQUES for Structured-based (or) White-Box Techniques are:
-> Statement Testing Coverage
-> Decision Testing Coverage

1. Statement testing & Coverage :
A Statement is:
>> 'An entity in a programming language, which is typically the smallest indivisible unit of execution' (ISTQB Def).
A Statement coverage is:
>> 'The percentage of executable statements that has been exercised by a test suite' (ISTQB Def)

Statement coverage:
-> Does not ensure coverage of all functionality
->
The objective if the statement testing is to show that the executable statements within a program have been executed at least once. An executable statement can be described as a line of program sourse code that will carry out some type of action. For example:


If all statements in a program have been executed by a set of tests then 100% statement coverage has been acheived. However, if only half of the statement have been executed by a set of tests then 50% statement coverage has been acheived.

The aim is to acheive the maximum amount of statement coverage with the mimimum number of test cases.

>>Statement testing test cases to execute specific statements, normally to increase statement coverage.
>>100% statement coverage for a component is acheived by executing all of the execuatbel statements in that component.

If we require to carry out statemtnt testing, the amount of statement coverage required for the component should be stated in the test coverage requirements in the test plan.We should aim to acheive atleast the minimim coverage requirements with our test cases. If 100% statement coverage is not required, then we need to determine which ares of the component are more important to test by this method.

>>Consider the following lines of code:

>> 1 test would be required to execute all three executable statements.

If our component consists of three lines of code we will execute all with one test case, thus acheiving 100% statement coverage. There is only one way we can execute the code - starting at line number 1 and finishing at line number 3.

>>statement testing is more complicated when there is logic in the code
>>For example..

>>Here there is one executable statement i.e., "Display error message"
>> hence 1 test is required to execute all executable statements.

Program code becomes tough when logic is introduced. It is likely what a component will have to carry out different actions depending upon circumstances at the time of execution. In the code examp,e shown, the component will do different things depending on whether the age input is less than 17 or if it is 17 and above. With the statement testing we have to determine the routes through the code we need to take in order to execute the statements and the input required to get us there!

In this example, the statement will be executed if the age is less than 17, so we would create a test case accordingly.

>> For more complex logic we could use control flow graphing
>> Control flow graphs consists of nodes, edges and regions

Control flow graphs describes the logic structure if the software programs - it is a method by which flows through the program logic are charted, usign the code itseld rather than the program specification. Each flow graph nodes and egdes The nodes represent computational statements or expressions, and the edges represent transfer of control between the nodes. Together the nodes and edges encompass an area known as a region.

In the diagram, the structure represents an 'If Then Else Endif' costurct. NOdes are shown for the 'If' and the 'Endif'. Edges are shown for the 'Then' ( the true path) and the 'Else ( the false path). The region is the area enclosed by the nodes and the edges.

>>All programs consists of these basic structures..

This is hetzel notation that only shows logic flow.

There are 4 basic structures that are used withn control-flow graphong.

The 'DoWhile' structure will execute a section of code whilst a feild or indicator is set to a certain value. For example,


The 'Do until' structure will execute a section of code until a field or indicator is set to a certain value. Foe example,

The evaluation of the condition occurs after the code is executed.

The 'Go To' structure will divert the program execution to the program section in question. For example

>> SO the logic flow code could now be shown as follows:

If we applied control-flow graphing to our sample code, then 'if Then Else' structure is applicable.
However, while it shows us the structure of the code, it doesn`t show us where the executabel statements are, and so it doesn`t help us at the moment with determining the tests we required for statement coverage.

>> we can introduce extra nodes to indicate where the executable statements are

>> And we can see the path we need to travel to execute the statemen in the code.

What we can do is introduce extra nodes to indicate where the statements occur in the program code.
NOw in our example we can see that we need to answer 'yes' to the question being posed to traverse the code and execute the statement on line 2.

>> Now consider this code and control flow graph:

>> We will need 2 tests to acheive 100% statement coverage.

Program logic can be a lot more complicated than the examples I have given so far!
In the source code shown here, We have executable statements associated with each outcome of the question being asked. We have to dosplay an error message if the age is less than 17( answering 'yes' to the question), and we have display 'costomer OK' if we answer 'No'.
We can only traverse the code only once with a given test; therefore we require two tests to acheive 100% statement coverage.

>> And this example...

>> We will need 3 tests to acheive 100% statement coverage.

NOw it get even more complecated!
In this example, we have a supplementary question, or what is know as a 'nested if'. If we answer 'yes' to 'If fuel tank empty?' we then have a further question asked, and each outcome of this question has an associated statement.

Therefore we will need two tests that answer 'yes' to 'if fuel tank empty'
* Fuel tank empty AND petrol engine ( to execute line 3)
* Fuel tanl empty AND NOT petrol engine( to execute line 5)
one further test will be required where we anser 'no' to 'if fuel tank empty' to enable us to execute the statement at line 8.

>>And this will be the last example for statement coverage.. we will then go for decision coverage.

>> We will need 2 tests to acheive 100% statement coverage.

In this example,,, we ahve two saperate questions that are being asked.

The tests have shown are
* A coffee drinker who wants cream
* A non coffee drinker who doesn`t want cream

Our 2 tests acheive 100% statement coverage, but equally we could have had 2 tests with:
* A coffee drinker who doesn`t want cream
* A no-coffee drinker who wants cream

If we were being asked to acheive 100% statement coverage, and if all statements were of equal importance, it would n`t matter which set if tests we chooose.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Checking your calculation values:

Minimum tests required to acheive 100%

Decision coverage >= Statement coverage

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Decision testing & Coverage
A Decision is :
>> ' A program point at which the control flow has two or more alternative routes. A node with two or more links to saperate branches.'(ISTQB Def)
A Decision Coverageis :
>> ' The percentage if the decision outcomes that have been exercised by a test suite. 100% decision coverage implies both 100% branch coverage and 100% statement coverage.' (ISTQB Def)

Decision Coverage :
>>

The objective of decision coverage testing is to show all the decisions within a component have been executed at least once.
A decision can be described as a line of source code that asks a question.
For example:

If all decisions within a component have exercised by a given set of tests then 100% decision coverage has been achieved. However if only half of the decisions have been taken with a given set of tests then you have only achieved 50% decision coverage.
Again, as with statement testing, the aim is to achieve the maximum amount of coverage with the minimum number of tests.

>> Decision testing derives test cases to execute specific decision outcomes, normally to increase decision coverage.
>> Decision testing is a form of control flow testing as it generates a specific flow of control through the decision points.

If we are required to carry out decision testing, the amount of decision coverage required for a component should be stated in the test requirements in the test plan.
We should aim to achieve atleast the minimum coverage requirements with our test cases. If 100% decision coverage is not required, then we need to determine which areas of the component are more important to test by this method.

>> Decision coverage is stronger than statement coverage.
>> 100% decision coverage for a component is achieved by exercising all decision outcomes int he component.
>> 100% decision coverage guarantees 100% statement coverage, but not vice versa.

Decision testing can be considered as the next logical progression from statement testing in that we are not much concerned with testing every statement but the true and false outcomes from every decision.
As we saw in our earlier examples of the statement testing, not every decision outcome has a statement( or statements) to execute.
If we achieve 100% decision coverage, we would have executed every outcome of every decision, regardless of whether there were associated statements or not..

>>Lets take earlier example we had for statement testing:

>>This would require 2 tests to achieve 100% decision coverage, but only 1 test to achieve 100% statement coverage.

In this example there is one decision, and therefore 2 outcomes.
To achieve 100% decision coverage we could have two tests:
* Age less than 17(answer 'yes')
* Age equal to or greater than 17 (answer 'no')
This is a greater number of tests than would be required for statement testing as statements are only associated with one decision outcome(line 2).

>> Again, consider this earlier example :

>> we will need 2 tests to achieve 100% decision coverage & also 2 tests to achieve 100% statement coverage.

This example would still result in two tests, as there is one decision therefore 2 outcomes to tests.
However, we would need two tests to achieve 100% statement coverage, as there are statements with each outcome of the decision.
So,in this instance, statement and decision testing would give us the same number of tests. NOte that if 100% coverage is required, statement testing can give us the same number of tests as decision testing, BUT NEVER MORE!

>>Lets look at some more examples now..

>> We will need 3 tests to achieve 100% decision coverage, but only 1 test to achieve 100% statement coverage.

Here we have an example of a supplimentary question, or a 'nested if'.
We have 2 decisions, so you may think that 4 tests may be required to achieve 100% decision coverage( two for each decision).
This is NOT the case! We can achieve 100% decision coverage with three tests - we need to exercise the 'Yes' outcome from the first decision ( line 1) twice, in order to subsequently exercise the 'Yes' and then the 'No' outcome from the supplementary question(line 2).
We need a further third test to ensure we exercise the 'No' outcome of the first decision( line 1 ).
There is only one decision outcome that has an associated statement - this means that 100% statement coverage can be achieved with one test.

>> As more statements are added, the tests for decision coverage are the same:

>> 3 tests to achieve 100% decision coverage, and 2 tests to achieve 100% statement coverage.

We have now introduced a statement that is associated with 'No' outcome of the decision on line 2.
This change affects the number of tests required to achieve 100% statement coverage, but does NOT alter the number of tests required to achieved 100% decision coverage - it is still three!

>And again an example..

>> 3 tests to achieved both decision and statement coverage.

Finally, we have statements associated with each outcome of each decision - the number of tests to achieve 100% statement coverage and 100% decision coverage are now the same.

>> And Last Example..

>> We will need 2 tests to achieve 100% decision coverage and 100% statement coverage.

We looked at this example of the "if Then Else' structure when considering statement testing.
As the decisions are separate questions we only need two tests to achieve 100% decision coverage( the same as the number required for statement coverage).
You may have thought that four tests were required - exercising the four different routes through the code, but remember, with decision testing our concern is to exercise each outcome of each decision atleast once - as long as we have answered 'Yes' and 'No' to each decision we have satisfied the requirements of the techinique.
The tests we have illustrated would need the following input conditions:
* Coffee drinker wanting cream.
* Non Coffee drinker not wanting cream ( but milk).

Equally, we could have chosen the following input conditions:
* Coffee drinker not wanting cream( but milk).
* Non coffee drinker wanting cream.

>> Then What about loops?

>> If we choose an initial value of p=4, we only need 1 test to achieve 100% statement and 100% decision coverage.

The control-flow graphs we showed earlier depicted a 'Do While' construct.
To reiterate, thw 'Do While' structure will execute a section of code whist a field or indicator is set to a certain value. For example,

The evaluation of the condition occurs before the code is executed.

Unlike the 'If Then Else', we can loop around the 'Do While' structure, which means that we exercise different routes through the code with one test.
As in the above diagram, if we set 'p' with an initial value '4', the first time through the code will :
* Go from line 1 to line 2
* Answer 'Yes' to the 'If' on line 2 ( if p<5)
* Execute the statement in line 3 (p=p*2, so p now equals 8)
* Go from line 3, through line 4 to line 5
* Execute the statement on line 5 ( which adds 1 to 'p', making it`s value '9')
* Execute the statement on line 6, which takes it back up to line 1.

Again we execute the code, with the value of 'P' now '9'
* GO from line1 to line2
* Answer 'NO' to the 'if' on line 2 (If p>5)
* Go from line 4 to line 5
* Execute the statement on line 5( which adds 1 to 'p', making it`s value '10')
* Execute the statement on line 6, which takes it back up to line 1.

Once more we execute the code
* Line 1 - 'P' is not less than '10' ( it is equal to 10), therefore, we exit this structure.

1 test - it achieves 100% statement coverage and 100% decision coverage.

>> And it`s same for 'Do until' structure

>> IF we choose an initial value of A =15, we only need 1 test to achieve 100% Decision coverage and 100% statement coverage.

The control flow structures we showed earlier also depicted a 'Do Until' structure.
To reiterate, the 'Do Until' structure will execute a section of code until a field or indicator is set to a certain value. For example,

The evaluation of the condition occurs after the code is executed.
Unlike the 'If Then Else', we can loop around the 'Do Until' structure, which means that we exercise different routes through the code with one test.
In the example above, If we set 'A' with an initial value of '15', the first time through the code will:
* Go from line 1 to line 2
* Answer 'Yes' to the 'If' on line 2 (If A<20)
* Execute the statement on line 3 ( A=A*2,which makes A=30)
* GO from line 3, through the line 4 to line 5
* Execute the statement on line 5( which adds 1 to 'A', making its value '31'.
* Execute the statement on line 6, Which takes back to line 1

Again we execute the code, with the value of 'A' now '31'
* Go from line 1 to line 2
* Answer 'No' to the 'If' on line 2 (If A < 20)
* Go from line 2, through line 4 to line 5
* Execute the statement on line 5( which adds 1 to 'A', making it`s value '32')
* Execute the statement on line 6, which exits the structure('A' is greater than 31)

1 test - it achieves 100% statement coverage and 100% decision coverage.

END...

182 comments:

Anonymous said...

Nice info... Very useful.

Thanks,
Suresh Kumar K

Unknown said...

It is very helpful to me. Thanks a lot.

Anonymous said...

Gud information but needed more examples

Anonymous said...

Really helpful.I never found such a good clarity on the statement and decision coverage as this blog.Thanks Shailaja.

Anonymous said...

many thanks Shailajakiran, for the examples.
I never understand anything without examples. this helps a lot.
But I guess the example where you started with the while wend loop, I think it shoulda been if p<10.
Regards,
Karthik

chandrika said...

Nice info...
But plz explain a little bit,d coffee n cream example in stmt covg.
Why only 2 number of test cases n not 4?

Anonymous said...

It is an excellent description,
Thanks for ur effort Shailaja

Regards
Amit Ranjan

Unknown said...

It is an excellent description
I never found such a good clarity.
Thank u very much ShailajaKiran

Regards
Amit

Anonymous said...

Nice info..thanx....

cheers,

Anonymous said...

thxxx a lot for d info.. i never understood these concepts untill today.. :-)

Anonymous said...

Nice info indeed....But could have had a few more examples....

Unknown said...

really really helpful document.thankx shaliajakiran

Unknown said...

Oh, it helps me clear the concepts of statement and decision testing.
Thanks a lot!

Anonymous said...

Please Correct the While Loop Example (the first one) in Decision Coverage.
It should be
WHILE (P<10)
IF (P<5)

Unknown said...

Really good explanation of Stmnt and Decision coverage. I must say, ISEB publisher should include you and your content in ISEB Testing book.

Anonymous said...

Thanks a lot... easy to understand...

Anonymous said...

Nice useful info shailaja

Pavlina said...

Thank you for the explanation so much Shailaja, it is very helpful

divya said...

Its really very useful information, examples really helped me having a fair knowledge about statement coverage and decision coverage. I also referred to all the sample papers provided. I passed ISTQB Exam.Yippie!!

Anonymous said...

VERY very good explanation, really thanks a lot!
Dave

Anonymous said...

It was way too good.....

Vikram said...

Thanks Shailaja.. this helped a LOT!

Geeta said...

Thanks a lot... its really easy to understand

Anonymous said...

It's very clearly, thanks

Anonymous said...

I really want to appreciate your time and dedication and research into the statement and decision coverage -- vikram

sithu said...

Hi Shailaja,

Really nice explanation thanks a lot for clarifying my doubts.

Unknown said...

Hey, the examples are very clear and very well explained...

Unknown said...

I was really confused about Statement & Decision coverage bt not now .
Thankx :)

Unknown said...

Thank a looooooooooottttt.
:)

Anonymous said...

i completely echo vishal.kudos ,Shailaja

Ashub said...

Thanks alot for explanation.. This is really helpfull..
-Ashu Barve

Anonymous said...

Very Good Informatioon. Thanks a lot :)

Nisha said...

Concept has been very nicely explained.Thanks a lot

Anonymous said...

Wonderfull thoughts bro... keep it up

Anonymous said...

Thanks a lot, this will help me for the ISEB-exam, found it hard to understand without the examples.

Priyanka said...

Thanks a lot.... excellent explanation with examples :)

Anonymous said...

seriously this was very much helpful!!

Anonymous said...

It is very helpful for me and easy to understand.

aruna said...

Hai shailajaKiran,
what u posted info is very good to understand who doesnot know about the coverages. Keep it up......

aparna_ku said...

Thanx a lot...... :)

Kopresh said...

Hi Shailaja,

Grt work....
Thanks for providing good examples in understanding the concepts

Shailja Ganeriwala said...

Thanks a lot.....very nice explanation

Unknown said...

Thanks.You saved me from a head ache. I never understood it until now

Anonymous said...

very useful and easy to understand..MANY THANKS for this

Deepthi Reddy said...

NIce...thanx a lot...but still am confused....

Article Submissions said...

Thanks for the great explanation. I didn't understand it before I read this.

Anonymous said...

thanks...for the wonderful explanation.

Adil said...

Thanks alot very helpful...
Very nicely explained....
Easy to understand....

ammu said...

thanks a million....was really helpful!!!!

manikanth said...

extremely helpful...thanx a lot

Anonymous said...

Thankyou.....its really wat i wanted compared 1 situation for both SC and DC.....that cleared my all doubts....

GilchristP said...

Thanks a lot...it really helped me

Anonymous said...

Nice examples. Thanks

Anonymous said...

thanks for these examples. Realy it made me to attend the concepts easily now.

Anonymous said...

Thanks..Clear Defintions and examples..

Anonymous said...

Thanks so much! You saved my day!!

Anonymous said...

Thanks a lot Shalijja .excellent descriptions with examples.. especially the explanation of the loop structured models..

Chanchal said...

Good information

Manjunath said...

Shailaja really owe you tons of thanks for the wonderful explaination. Was finding it extremely difficult to understand these basic concepts in other websites until I found your blog. I wish you good health and loads of happiness and good luck .

Anonymous said...

excellent

Anonymous said...

Really good explanation Shailaja Kiran...
Thank you soo much

Anonymous said...

Very helpful information with example.Helped me a lot to understand the concept.Big thanks to you Shailaja.

Priya said...

Very helpful.. thanks a lot

Satya said...

Is there any relation between Statement and decision coverage?

anna said...

I think the only relationship between the statement coverage and decision coverage, is that when you have decision coverage you have statement coverage too. But these two techniques does not detect the same failures.

Anonymous said...

thanks very useful to understand the concept

srividya said...

very informative

Thanks,
Srividya

Anonymous said...

Thanks for the info Shailaja..

just have a small ques for the last example of the Decision coverage calculation..

In this example,,, we ahve two saperate questions that are being asked.

What if the 2nd decision is dependent on the outcome of the first decision?

For example..
IF A > B THEN
C = A – B
ELSE
C = A + B
ENDIF
Read D
IF C = D Then
Print “Error”
ENDIF

What is the decision coverage for the above code? How to calculate it? Can you please explain in detail?

JP said...

This is very useful for freshers

Anonymous said...

Thanks a lot....

Anonymous said...

Very nice and thanks for help.

Anonymous said...

hi i think the Branch/decision coverage for the while.... Endwhile example should be 2. I got to this result by drawing the control flow graph and there are minimum two paths to cover all the edges and 1 path does not cover all the edges. Can you plz check?

Anonymous said...

Its really helpful. Thanx

Anonymous said...

Thank you very much! Very clear explanation!!!

Lady J said...

It helped me to understand my homework assignment. Thank you very much.

Unknown said...

Amazing Explanations...Can't thank you enough...everything was crystal clear..
Only one slight update needs to be made..which someone else has pointed out as well...:
Instead of P>10, it should be P<10..

Thanks so much again,
Akhilesh

Anonymous said...

its great help for me to understand sc and dc concept clearly for passing advance istqb
thanks a lot
khushboo

jai said...

Hi Shailaja iam new to this field . Can you explain and give me some questions of sc and dc . It is really confusing and hard to understand. can you send me some important questions.My email id is kksjsk@yahoo.com

Thanks in advance,
jai

Anonymous said...

Hi,
The information very useful , but i have doubt regarding while and dountil i think their should a 2 test cases to cover branch testing
1. For IF condition yes
2. For IF condition no

Please could you explain its will be very helpful

Thanks
Geetha

Anonymous said...

Absolutely brilliant explanations !!!Thanks a ton

Sakthi said...

Wonderful explanations!!! Never got a clarity on these concepts till now. Thanks a lot!!!

Anonymous said...

Very Useful thanks...

hadoop training in chennai said...

Brilliant hadoop training in chennai
illuminations!!! oracle training in chennai Never got a clarity on these thoughts oracle dba training in chennai till now. Quite refreshing!!!Thanks a lot...

Unknown said...

Hi friends, This is Jamuna from Chennai. Your technical information is really useful for me. Keep update your blog.
Regards..
Oracle Training

Unknown said...

Thank you so much for sharing this informative blog. Your technical information is really useful for me. Keep update your blog.

Regards..

PHP Institutes in Chennai



Unknown said...

Thanks for sharing this informative blog. SAP CRM is used for maintaining and managing relationship with customers by firm. If you want to know more about SAP, please visit FITA located at Chennai Velachery.
Regards..
SAP Course in Chennai

Stephen said...

There are lots of information about latest technology and how to get trained in them, like Big Data Training in Chennai have spread around the web, but this is a unique one according to me. The strategy you have updated here will make me to get trained in future technologies(Big Data Training Chennai). By the way you are running a great blog. Thanks for sharing this.

Unknown said...

Whatever we gathered information from the blogs, we should implement that in practically then only we can understand that exact thing clearly, but it’s no need to do it, because you have explained the concepts very well. It was crystal lear, keep sharing..
QTP Training in Chennai

Unknown said...
This comment has been removed by the author.
Unknown said...

Very useful articles for online trainings,thanks for sharing.

SAP Success Factors Real Time Support

SAP WebDynpro Real Time Support

Anonymous said...

hybernet is a framework Tool. If you are interested in hybernet training, our real time working.
Hibernate Training in Chennai,hibernate training in Chennai

Anonymous said...

Awesome blog if our training additional way as an SQL and PL/SQL trained as individual, you will be able to understand other applications more quickly and continue to build your skill set which will assist you in getting hi-tech industry jobs as possible in future courese of action..visit this blog
plsql in Chennai
greenstechnologies.in:

Anonymous said...



Amazing blog if our training additional way as an silverlight training trained as individual, you will be able to understand other applications more quickly and continue to build your skill set which will assist you in getting hi-tech industry jobs as possible in future courese of action..visit this blog
silverlight-training.html
greenstechnologies.in:

Unknown said...

Well Said. The content provided is true up to my knowledge. This made me to understand the concepts very clear. Thanks for sharing this wonderful information in here. Keep blogging article like this. I have bookmarked this page for future reference as well.


Hadoop Training Chennai | Big Data Hadoop Training in Chennai | JAVA Course in Chennai

DHRUV said...

Great Explanation .Thanks a lot :) :)

Unknown said...


Excellent information with unique content and it is very useful to know about the information based on blogs.
Informatica Training In Chennai
Hadoop Training In Chennai
Oracle Training In Chennai
SAS Training In Chennai

Healthy Happy Place said...

hi,
Could you please help me in flow diagram of
13. Given the following fragment of code, how many tests are required for 100% decision coverage?

if width > length

thenbiggest_dimension = width

if height > width

thenbiggest_dimension = height

end_if

elsebiggest_dimension = length

if height > length

thenbiggest_dimension = height

end_if

end_if

Unknown said...

شركة تسليك مجارى بالرياض
level تسليك مجاري بالرياض
افضل شركة تنظيف بالرياض
تنظيف شقق بالرياض
شركة تنظيف منازل بالرياض
شركة غسيل خزنات بالرياض
افضل شركة مكافحة حشرات بالرياض
رش مبيدات بالرياض
شركة تخزين عفش بالرياض
شركة تنظيف مجالس بالرياض
تنظيف فلل بالرياض
ابغى شركة تنظيف بالرياض

Unknown said...

good.
sas-predictive-modeling training in chennai

1croreprojects said...

ieee java projects in chennai
ieee dotnet projects in chennai
mba projects in chennai
be projects in chennai
ns2 projects in chennai
mca projects in chennai
bulk projects in chennai

Unknown said...


Really awesome blog. Your blog is really useful for me. Thanks for sharing this informative blog. Keep update your blog.

ISTQB Training Institute in Chennai

Nandhini said...

Awesome post.
I read your blog everything is helpful and effective.
Thanks for sharing with us.
Software Testing Training in Bangalore

Oracle dba certification cost in chennai said...

Thanks to shared this statement with me. Keep updating.
Oracle courses | DBA course


Anonymous said...

Real Estate Tax Advisor in Chennai

Unknown said...

Nice information about test automation tools my sincere thanks for sharing post Please continue to share this post..


automation testing courses online

Peter Johnson said...

Really Very Informative Blog.Just Simply cleared All my doubts through your post.Very happy For sharing,Coming to Ourself We Are the leading Providers for Food Service Parts In Us.Really Thanks For Sharing Such an Informartive Post.

Peter Johnson said...

Thanks for Posting from Bala Guntipalli

Unknown said...

I Just Love to read Your Articles Because they are very easy to understand USMLE Thank you.

Unknown said...

Really Thanks For Posting Such an Useful and informative article. Mulesoft Certification Training

24Layouts said...

Thanks For Sharing From Plots For Sale in Vizag

Unknown said...

Fantastic work! This is the type of information that should follow collective approximately the web. Embarrassment captivating position Google for not positioning this transmit higher! Enlarge taking place greater than and visit my web situate

python training in chennai | python training in bangalore

python online training | python training in pune

python training in chennai

simbu said...

I found this informative and interesting blog so i think so its very useful and knowledge able.I would like to thank you for the efforts you have made in writing this article.

java training in chennai | java training in bangalore

java online training | java training in pune

SRI said...

Wow it is really wonderful and awesome thus it is very much useful for me to understand many concepts and helped me a lot. it is really explainable very well and i got more information from your blog.

rpa training in Chennai | rpa training in pune

rpa training in tambaram | rpa training in sholinganallur

rpa training in Chennai | rpa training in velachery

rpa online training | rpa training in bangalore

Unknown said...

This is ansuperior writing service point that doesn't always sink in within the context of the classroom. In the first superior writing service paragraph you either hook the reader's interest or lose it. Of course your teacher, who's getting paid to teach you how to write an good essay, 

Python training in marathahalli
Python training in pune
AWS Training in chennai

Sumaya Manzoor said...

The strategy you followed on this technology helped me to get to the next level and had a lot of information in it.
Selenium Training in Chennai
software testing selenium training
PHP Institutes in Chennai
PHP Training Center in Chennai
iOS Training in Adyar
iOS Course in Tambaram

mercyroy said...

Nice Article,Great experience for me by reading this info.
thanks for sharing the information with us.keep updating your ideas.
best python training in bangalore
python training in bangalore
Python Certification Training in T nagar

Vicky Ram said...

Awesome post. Really you are shared very informative concept... Thank you for sharing. Keep on updating...

Article submission sites

Education

Shadeep Shree said...

The blog is well written and Thanks for your information. Java is one of the widely accepted language. The reason is it's features and it is platform independent.
JAVA Training Coimbatore
JAVA Coaching Centers in Coimbatore
Best JAVA Training Institute in Coimbatore
JAVA Certification Course in Coimbatore
JAVA Training Institute in Coimbatore

Arunaram said...

Thanks for a marvelous posting!Very great content. Much thanks to you for setting aside opportunity to composed your experience.
Web Designingp Training in Vadapalani
Web Designing course in velachery
Web Designing course in Chennai kknagar
Web Designing Training in Padur
Web Designing Course in Tambaram
Web Designing Course in Velachery

Annie said...


Awwsome informative blog ,Very good information thanks for sharing such wonderful blog with us ,after long time came across such knowlegeble blog. keep sharing such informative blog with us.
Aviation Academy in Chennai | Aviation Courses in Chennai | Best Aviation Academy in Chennai | Aviation Institute in Chennai | Aviation Training in Chennai

Annie said...
This comment has been removed by the author.
Unknown said...

Thank you for sharing such a nice post. It shows your deep knowledge on the subject. Pls keep updating.
Hadoop Admin Training in Chennai
Hadoop Administration Training in Chennai
Hadoop Administration Course in Chennai
Hadoop Administration Training
Big Data Administrator Training
Hadoop Administration Course

Anonymous said...

It’s a great post. Keep sharing such kind of worthy information.

Manual Testing Training in Chennai | Manual Testing Training | Manual Testing Training institute in Chennai | Manual Testing Training in Adyar | Manual Testing Training in Tambaram | Manual Testing Training in Velachery

Anbarasan14 said...

I believe that your blog will surely help the readers who are really in need of this vital piece of information. Waiting for your updates.

TOEFL Classes near Thoraipakkam
TOEFL Centres in Shollinganallur
TOEFL training classes near me
TOEFL Training in Poonamallee
TOEFL Training in Iyyappanthangal
TOEFL Training at Padur
TOEFL Training in Alwarthirunagar

Arunaram said...

Excellent post!!!. The strategy you have posted on this technology helped me to get into the next level and had lot of information in it.
CCNA Training in Saidapet
CCNA Training in Chennai Kodambakkam
CCNA Training in Chennai
CCNA Training in Aminjikarai
CCNA Course in Chennai Kodambakkam

Anjali Siva said...

Informative post, thanks for sharing.
Angularjs courses in Chennai
Angularjs Training in Chennai
Best Angularjs Training in Chennai
RPA Training in Chennai
UiPath Training in Chennai
DevOps Certification Chennai

Unknown said...

It would have been the happiest moment for you,I mean if we have been waiting for something to happen and when it happens we forgot all hardwork and wait for getting that happened.

Data Science Training in Indira nagar | Data Science Training in btm layout

Python Training in Kalyan nagar | Data Science training in Indira nagar

Data Science Training in Marathahalli | Data Science training in Bangalore | Data Science Training in BTM Layout | Data Science training in Bangalore

janani said...

Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates with excellent care and we take your comments to heart.As always, we appreciate your confidence and trust in us
Java training in Bangalore | Java training in Marathahalli | Java training in Bangalore | Java training in Btm layout

Java training in Bangalore | Java training in Jaya nagar | Java training in Bangalore | Java training in Electronic city

gowsalya said...

This is most informative and also this post most user friendly and super navigation to all posts... Thank you so much for giving this information to me.. 
Online DevOps Certification Course - Gangboard | Java online training

nilashri said...

Really very nice blog information for this one and more technical skills are improve,i like that kind of post.
Data Science training in rajaji nagar | Data Science Training in Bangalore | Data Science with Python training in chennai

Data Science training in electronic city | Data Science training in USA

Data science training in pune | Data science training in kalyan nagar

Mounika said...

Your very own commitment to getting the message throughout came to be rather powerful and have consistently enabled employees just like me to arrive at their desired goals.

python training institute in marathahalli | python training institute in btm | Python training course in Chennai

VenuBharath2010@gmail.com said...

Amazing Post. I am very much impressed with your choice of words. The content showcases your in-depth knowledge in this subject. Thanks for sharing.
Social Media Marketing Courses in Chennai
Social Media Marketing Training in Chennai
Social Media Training in Chennai
Social Media Marketing Training
Social Media Marketing Courses
Social Media Training
Social Media Marketing Training
Social Media Courses

sathya said...

Thanks for such a great article here. I was searching for something like this for quite a long time and at last I’ve found it on your blog. It was definitely interesting for me to read  about their market situation nowadays.
aws Training in indira nagar | Aws course in indira Nagar

selenium Training in indira nagar | Best selenium course in indira Nagar | selenium course in indira Nagar

python Training in indira nagar | Best python training in indira Nagar

datascience Training in indira nagar | Data science course in indira Nagar

devops Training in indira nagar | Best devops course in indira Nagar

Ishu Sathya said...

It was very encouraging to see this kind of content. Thank you for sharing.

Selenium Training in Chennai
Selenium Training
iOS Training in Chennai
Digital Marketing Training in Chennai
core java training in chennai
SEO Training in Chennai
SEO Training

sunshineprofe said...

I’d love to be a part of group where I can get advice from other experienced people that share the same interest. If you have any recommendations, please let me know. Thank you.nebosh course in chennai

LindaJasmine said...


Thanks for sharing the fantabulous post. It gives immense pleasure to read your article. Your post is very thought provoking.
Pega training in chennai
Pega course in chennai
Pega training institutes in chennai
Pega course
Pega training
Pega certification training
Pega developer training

sunshineprofe said...

My of developer is trying to convince me to move to .net from PHP. I have always disliked the idea because the expenses
fire and safety course in chennai

Unknown said...

I have picked cheery a lot of useful clothes outdated of this amazing blog. I’d love to return greater than and over again. Thanks! 
Microsoft Azure online training
Selenium online training
Java online training
uipath online training
Python online training


Vicky Ram said...

Really very nice blog information for this one and more technical skills are improve,i like that kind of post.

Education
Technology

Jamess said...

we are going to enable you to experience to make and place up the checklist for employee payment. To have more enhanced results and optimized benefits, you are able to take the help of experts making a call at QuickBooks Payroll Support Phone Number Well! If you’re not in a position to customize employee payroll in.

QuickBooks Payroll Support said...

for starters, a business can only survive if it is making adequate profits to smoothly run the operations of the work. Our QuickBooks Customer Support Number team will really show you in helping you discover in regards to the profit projections in QuickBooks.

steffan said...

There are numerous payroll options made available due to the online kind of QuickBooks varying upon the need of accounting professionals and subscription plans. QuickBooks Payroll Support Number as well provides all possible help with the users to utilize it optimally. An individual who keeps connection with experts is able to realize about the latest updates.

kevin32 said...

You’ll manage to give us a call any time for the moment support QuickBooks Tech Support Number have a tendency to are accessible for you personally 24*7.

kevin32 said...

Manufacturing & Wholesale: probably the most exemplary QuickBooks Enterprise Number USA versions, Enterprises plays a vital role in carrying out the manufacturing & wholesale business.

steffan said...

QuickBooks is available for users across the world once the best tool to offer creative and innovative features for business account management to small and medium-sized business organizations. If you’re encountering any type of QuickBooks’ related problem, you could get all of that problems solved simply by making use of the Quickbooks Support.

QuickBooks Payroll Support Phone Number said...

Why you ought to chooseQuickBook Support phone Number The principal intent behind would be to give you the technical help 24*7 so as with order in order to prevent wasting your productivity hours.

kevin32 said...

QuickBooks Pro is some sort of class accounting software which includes benefited its customers with various accounting services. It includes brought ease to you personally by enabling some extra ordinary features as well as at QuickBooks Tech Support Phone Number it is simple to seek optimal solutions if any error hinders your work.

kevin32 said...

QuickBooks Technical Support Number Is A Toll-Free Number, Which Can Be Dialed, any time Of The Day In Order To Resolve The Issue. The Technician Who Answers The Call And Provides Solutions On QuickBooks Enterprise Support Phone Number are Both Trained And Certified.

JimGray said...

To have a level of expertise in payroll management through QuickBooks, all of us attempts to strengthen your understanding of the payroll updates occurring in QuickBooks Support, desktop, pro, premier 2019 versions. Intuit Payroll Online exports all of the transactions to QuickBooks Desktop App along with QuickBooks Payroll Support Contact Number as standalone software.

JimGray said...

Enterprise support number offers you proper assistance if you require it. You can avail Enterprise Support using E-mail yet QuickBooks Enterprise Support Number serves to be the best type of assistance. Here our experts will answer your call and offer you perfect solutions on QuickBooks Enterprise resolving all of the issues faced by you.

Jamess said...

The deep real cause is likely to be found out. All the clients are extremely pleased with us. We've got many businessmen who burn up our QuickBooks Support Number It is possible to come in order to find the ideal service for your requirements.

kevin32 said...

QuickBooks Payroll has additionally many lucrative features that set it irrespective of rest about the QuickBooks Payroll Support Number versions. It simply can help you by enabling choosing and sending of custom invoices.

accountingwizards said...

Give a call at QuickBooks Support Phone Number, if you're encountering any difficulties that are mentioned above. In case you are facing every other difficulties with your QuickBooks, then you can certainly also make instant calls. Your queries are certain to get resolved without any delays.

Mathew said...

It Gives Necessary Features In Real Time For The Enterprises. Because The Software Runs On Desktop And Laptop Devices, It Truly Is Prone To Get Errors And Technical Glitches. However for Such Cases, QuickBooks Enterprise Tech Support Number Support Is Present Which Enables A Person To Acquire His Errors Fixed.

kevin32 said...

You need not to worry after all as you are seeking help underneath the guidance of supremely talented and skilled support engineers that leave no stone unturned to land you of most errors which are part and parcel of QuickBooks Help & Support.

Blogsilly said...

By using Phone Number for QuickBooks Payroll Support, you're able to create employee payment on time. However in any case, you might be facing some problem when making use of QuickBooks payroll such as for instance issue during installation, data integration error, direct deposit issue, file taxes, and paychecks errors, installation or up-gradation or simply just about some other than you don’t panic, we provide quality QuickBooks Payroll help service. Here are some features handle by our QB online payroll service.

jameswill11 said...

Give a call at QuickBook Tech Support, if you should be encountering any difficulties which can be mentioned previously. If you are facing just about any difficulties with your QuickBooks, then you can also make instant calls. Your queries will get resolved without any delays.

Jamess said...

You’ll have the ability to call us any moment when it comes to moment support we have a tendency to are accessible for you personally 24*7. Our talented team of professionals is invariably in a position to help you whatever needs doing. QuickBooks Tech Support Number Service can be obtained 24*7

Sugantha Raja said...

This is very great thinks. It was very comprehensive post and powerful concept. Thanks for your sharing with us. Keep it up..
Oracle DBA Training in Chennai | Oracle DBA Training Institute in Chennai

QuickBooks Support Phone Number said...

But some QuickBooks Support Phone Number user always confused about something that which accounting software is the very best and right choice for their business. So here you choose to go. However, being a typical or ordinary business person,

QuickBooks Payroll Support said...

Intuit is perhaps all concerning User expertise which is the reason why they require creating dedicated QuickBooks Customer Technical Support Phone Number Phone variety; Users will dial the fee number in case they usually have any facilitate concerning the code.

QuickBooks Support Phone Number said...

Well, for the reason that of this high efficiency and 100% customer satisfaction. And you also also have the best tech support team through the QuickBooks Support Number team so you work properly on your accounts and increase your business.

Jamess said...

Intuit QuickBooks Support is on your way when it comes to technical issues: With exceptional features, QuickBook helps all of the forms of businesses with generating accounting reports, entries for almost any sale, transactions pertaining to banking, etc., with a lot of ease. And along side support for QuickBooks, it is less difficult to handle most of the tools of QuickBooks in a hassle-free manner. Below is a summary of several QuickBooks errors that one may meet with if you are using it. Have a glimpse at it quickly.

tom wick said...

QuickBooks Payroll Support Number will be the better account management product till now. The recent improvement that is built in this system regarding current user requirements and the solutions to overcome the limitation of previous QuickBooks versions. We've been here to improve your understanding with regards to the payroll updates happens in QuickBooks Enterprise, desktop, pro, premier 2019 versions.

HP Printer Support Number said...

If you are facing HP tablet and driver problems, be sure that you have taken assistance from the HP Printer Support Number experts. You can repair the HP tablet by firmly taking their assistance. Also, you might be designed to realize that when you yourself have the manual, it is possible to follow the HP Printer driver installation and setup.

Mathew said...

what you need to do is always to make certain you have a very good net connection and you are clearly competent to here us clearly before calling QuickBooks Enterprise Support Number. You are able to cherish our above-mentioned beneficial services at most affordable price on just a call.

kevin32 said...

You won’t have any stress in operation. Even for small companies we operate. QuickBooks Payroll Support Phone Number technique is wonderful for a medium-sized company. You may get the most wonderful financial tool. QuickBooks payroll support number is present 24/7. You can actually call them anytime. The experts are thrilled to aid.

Mathew said...

QuickBooks Tech Support Phone Number is commonplace to manage any errors on your own QuickBooks if you're doing not proceed with the syntax, if the code is not put in properly or if you’re having any corruption within the information of the QuickBooks.

Bryan Willson said...

With the aid of QuickBooks Payroll Support Number, you can easily create employee payment on time. In any case, you are facing some problem when making use of QuickBooks payroll such as issue during installation, data integration error, direct deposit issue, file taxes, and paychecks errors, installation or up-gradation or perhaps about just about any than you don’t panic, we provide quality QuickBooks Payroll help service.

accountingwizards said...

Encountering a slip-up or Technical break down of your QuickBooks or its functions can be associate degree obstacle and put your work on a halt. this can be not solely frustrating however additionally a heavy concern as all of your crucial information is saved on the code information. For the actual reason, dig recommends that you simply solely dial the QuickBooks Support Number sign anytime you would like any facilitate along with your QuickBooks. Our QuickBooks specialists can assist you remotely over a network.

Jamess said...

QuickBooks Support Is One Stop Solution Our dedicated team is sure with you. These are typically surely working at any hour to assist and make suggestions if you run into any QuickBooks error/s. Our QuickBooks Payroll Tech Support Number team surely have in-depth knowledge regarding the issues and complications of QuickBooks.

svrtechnologies said...

Whatever we gathered information from the blogs, we should implement that in practically then only we can understand that software testing tutorial exact thing clearly, but it’s no need to do it, because you have explained the concepts very well. It was crystal clear, keep sharing..

Blogsilly said...

Runtime Error 9999 happens when QuickBooks fails or crashes whilst it’s running, hence its name. It doesn’t necessarily mean that the code was corrupt in some way, but just so it would not work during its run-time. This sort of error will be as an annoying notification on the screen unless handled and corrected. Listed below are symptoms, causes and methods to troubleshoot the issue. If you would like to learn how to Troubleshoot Quickbooks Error 9999 yourself, you can continue reading this blog.

nisha said...

Thanks for Posting this Article. the Post is really impressed.

Data Science Training Course In Chennai | Data Science Training Course In Anna Nagar | Data Science Training Course In OMR | Data Science Training Course In Porur | Data Science Training Course In Tambaram | Data Science Training Course In Velachery

Anonymous said...

The choice of words makes this post very unique.

Big Data Hadoop Training In Chennai | Big Data Hadoop Training In anna nagar | Big Data Hadoop Training In omr | Big Data Hadoop Training In porur | Big Data Hadoop Training In tambaram | Big Data Hadoop Training In velachery

rocky said...

I am inspired with your post writing style & how continuously you describe this topic.
Python Hyderabad

Python Training in Coimbatore
Python Training in Chennai

Python Training in Training

Python Training in Bangalore

devi said...

Found your post interesting to read. I cant wait to see your post soon. Good Luck for the upcoming update.This article is really very interesting and effective.

Data Science Training In Chennai | Certification | Data Science Courses in Chennai | Data Science Training In Bangalore | Certification | Data Science Courses in Bangalore | Data Science Training In Hyderabad | Certification | Data Science Courses in hyderabad | Data Science Training In Coimbatore | Certification | Data Science Courses in Coimbatore | Data Science Training | Certification | Data Science Online Training Course

subhagruha said...

Excellent blog. Lots of useful information here, thanks for your effort!
Gated community Plots in Vizag

INFYCLE TECHNOLOGIES said...

Infycle Technologies, the best software training institute in Chennai offers the leading Python course in Chennai for tech professionals, freshers, and students at the best offers. In addition to the Python course, other in-demand courses such as Data Science, Cyber Security, Selenium, Oracle, Java, Power BI, Digital Marketing also will be trained with 100% practical classes. After the completion of training, the trainees will be sent for placement interviews in the top MNC's. Call 7504633633 to get more info and a free demo.

Pranisha said...

We came up with a great learning experience of Big Data Hadoop training in Chennai, from Infycle Technologies, the finest software training Institute in Chennai. And we also come up with other technical courses like Cyber Security, Graphic Design and Animation, Block Security, Java, Cyber Security, Oracle, Python, Big data, Azure, Python, Manual and Automation Testing, DevOps, Medical Coding etc., with great learning experience with outstanding training with experienced trainers and friendly environment. And we also arrange 100+ Live Practical Sessions and Real-Time scenarios which helps you to easily get through the interviews in top MNC’s. for more queries approach us on 7504633633, 7502633633

Muskan said...

Your blog serves as an informative and valuable resource for individuals interested in understanding white-box testing and applying code-related structural techniques for effective test coverage. It's a well-written piece that provides valuable insights into the world of white-box testing. Great work!
Techniques for Evaluating the User Experience of Software Applications

priyankarajput said...

Thanks for sharing it. I always enjoy reading such superb content with valuable information. The ideas presented are excellent and really cool, making the post truly enjoyable. Keep up the fantastic work.
visit: Java's Journey: Understanding Features and Envisioning Its Future Scope