Talk:Code coverage

message: C language has short circuit evaluation property. I guess this shall be considered in examples like foo(0,1). In this case second condition is not evaluated at all.  — Preceding unsigned comment added by 2A01:111F:4305:3C00:2DBE:582:9150:1AF5 (talk) 09:20, 30 March 2017 (UTC)
thread_title: Short circuited evaluation

message: In the example:
"If the function foo were called with variable bar set to −1, statement coverage would be achieved. Condition coverage, however, would not."
Isn't it contrary? --141.76.178.61 13:40, 13 November 2007 (UTC)
thread_title: Coverage example problem

message: However, a general-purpose algorithm for identifying infeasible paths has been proven to be impossible[citation needed](such an algorithm could be used to solve the halting problem).
the referenced page of the halting problem contains needed citation. Kagamin 15:34, 30 November 2008 (UTC)
replies: text: We generally don't link to blogs, see the external link guideline. - MrOllie (talk) 13:49, 9 October 2009 (UTC)
thread_title:  Citation needed 

message: In looking at Insure++'s site, I see no mention of code coverage. It appears to be a memory leak detector.
:It also measure code coverage. http://www.parasoft.com/products/insure#totalcoverageanalysis CodeCurmudgeon (talk) 15:44, 12 July 2018 (UTC)
thread_title:  Insure++: does this belong? 

message: In my opinion "NCover" should be on the list of available Software Code-Coverage Tools. (www.ncover.com )
213.174.237.28 (talk) 07:42, 3 March 2009 (UTC)
thread_title:  More Coverage Programms 

message: Why does this page list hardware code coverage tools but not software code coverage tools?  Surely hardware-based tools are more esoteric and less used?  A table would be good showing tool, license, link, environment/OS, etc?  Some to include are Cobertura, EMMA, NCover, rcov.  —Preceding unsigned comment added by 62.232.250.50 (talk) 12:56, 5 August 2009 (UTC)
replies: text: Software Code Coverage Tools were all removed by User:MrOllie due to this edit:  - reason: Vendor link sections not allowed per WP:EL. IMHO not a good decision to remove a complete paragraph because there are some vendor links in it. --> I've again added all tools without vendor links and added a reminder for not adding links again (what MrOllie should have done in the first place) --Sebastian.Dietrich (talk) 18:22, 25 August 2009 (UTC)
thread_title:  Software Code Coverage Tools? 

message: Added both Linear Code Sequence and Jump (LCSAJ) & JJ-Paths as coverage metrics. Nat Hillary 18:50, 11 November 2009 (UTC)
thread_title:  Coverage Metrics 

message: In the bullet-point list, we now have 'Decision coverage' as well as 'Condition coverage' both listed twice, and 'branch coverage' and 'predicate coverage' thrown in there too. All these terms seem to refer to the same thing. There is also no mention in the multiple examples of anything involving multiple branches, like case statements, elseif or try-catch-catch. Can somebody who has access to the cited source (Glenford J. Myers (2004): The Art of Software Testing) tidy it up to be more general and more logical, or are we going to have to sort it out from first principles ourselves? --Nigelj (talk) 11:02, 21 June 2010 (UTC)
replies: text: I cleaned-up this now. This section should really contain only basic criteria. Other more advanced criteria should go to other sections. Andreas Kaufmann (talk) 09:56, 9 February 2014 (UTC)
thread_title:  'Basic coverage criteria' a mess 

message: I don't see why hardware tool vendors are listed here, and software tool vendors are not.
Some earlier discussin here suggests that *links* to tools/vendors/products (presumably 
tool/vendor websites were meant) are not good.   I don't see why a link to a vendor's company
name listed under Wikipedia is different.  If you allow this, companies that are big enought
to get listed in Wikipedia get an unfair advantage, since there's a one-to-one relationship
between "wikilink to vendor" and link to vendor commecial website.
Either let people list all the tools they know about, or insist that none of them are reasonable.  —Preceding unsigned comment added by 75.34.85.234 (talk) 03:52, 23 August 2010 (UTC)
thread_title:  Hardware Coverage Tool Providers -- why is this present? 

message: For MCDC, the independence of a conditions effect on the decision is achieved by holding all other conditions constant while toggling that condition between true and false.
In the test set suggested to satisfy MC/DC, there is no MCDC pair for condition 'c' where the values for 'a' and 'b' remain constant:
    a=false, b=false, c=true
    a=true, b=false, c=true
    a=false, b=true, c=true
    a=true, b=true, c=false
I suggest changing the last row of the set to:
    a=false, b=true, c=false
Alonergan76 (talk) 08:09, 2 August 2012 (UTC)
thread_title:  Incorrect MC/DC test set 

message: The article says 
In languages, like Pascal, where standard boolean operations are not short circuited, condition coverage does not necessarily imply decision coverage. For example, consider the following fragment of code:
if a and b then
Condition coverage can be satisfied by two tests:
* a=true, b=false
* a=false, b=true
However, this set of tests does not satisfy decision coverage as in neither case will the if condition be met.
Except that makes no sense. In all languages, if at least one of "a" and "b" aren't true, then "a and b" ("a && b", "a and then b", "a andalso b") won't be true, whether or not it uses short-circuit evaluation. That's what "and" means.--Prosfilaes (talk) 09:10, 20 February 2013 (UTC)
thread_title:  Weird Pascal example 

message: The article cites Glenford J. Myers (2004). The Art of Software Testing, 2nd edition, as source for the various types of coverage. However, Myers doesn't talk about function coverage.  — Preceding unsigned comment added by 131.155.216.160 (talk) 11:14, 29 February 2016 (UTC)
thread_title:  Citation 

message: The title says "code coverage", but then the lead (and most of the rest of the article) says "test coverage". This is confusing.
--Mortense (talk) 15:14, 28 January 2020 (UTC)
replies: text: I absolutely agree and was just about to write exactly that. Are we talking test coverage or code coverage, or is it exactly the same? If it is exactly the same, we should write both names in the beginning of the lead, and then settle on one of the names consistently in the rest of the article and also use that as the name of the article. If it is not, we should clearly distinguish and maybe split the article into two separate articles. If you look at https://sqa.stackexchange.com/questions/3110/whats-the-difference-between-code-coverage-and-test-coverage, it appears like there are many different ideas about what "test coverage" and "code coverage" is, so it's not simple. --Jhertel (talk) 01:37, 19 March 2021 (UTC)
replies: text: I just discovered that the same thing is being discussed right above this, in the section "Code coverage improperly described as test coverage". Oh well. --Jhertel (talk) 01:39, 19 March 2021 (UTC)
thread_title:  Code coverage versus test coverage 

message: I think we need an example where the Edge and Branch coverage differs. In addition in the header it talks about Brnach being a subset of edge, but then later on when Branch coverage is refereed to it is "Branch (or Edge)" implying they are the same.
96.95.228.129 (talk) 21:15, 12 February 2020 (UTC)
thread_title:  Confusing Distinction between Edge and Branch 

message: If the lead identifies the topic as test coverage, then why wasn't the page moved to Test coverage?
As presently written, this page is only in a (relatively) Narrow Topic context in stating that test coverage is a synonym for code coverage.  I can appreciate that in an exclusively coding and code-based testing environment, code coverage is the only test coverage there is and there is no point in making the distinction. If this page is limited to that context, because code coverage is a common name for the measures listed in the page, the lead should read either:
: In computer science, code coverage, also known as test coverage,  is a measure used ....
or
: In computer science, test coverage, also known as code coverage,  is a measure used ....
The phrase In computer science does not restrict "test coverage" to "code coverage", because requirements-based testing is also practiced within computer science, and its primary test concern is test coverage of requirements.  A Broad Topic test coverage article would have to include the requirements-based testing definition that "test coverage" means coverage of the requirements.
* test coverage  1. the degree to which a given test or set of tests addresses all specified requirements for a given system or component. 2. extent to which the test cases test the requirements for the system or software product. [IEEE 24765:2010]
* test coverage "The degree to which a given test or set of tests addresses all specified requirements for a given system or component." [ IEEE 610.12-1990 ]. 
* code coverage "A quality-assurance [test] strategy that ensures that all of the software has executed at least once. [Ganssle, Embedded Systems Dictionary]
* MATLAB/Simulink Code Coverage "Collect code coverage metrics during software-in-the-loop (SIL) and processor-in-the-loop (PIL) simulations. You can use these metrics to show that the generated code does not contain unintended functionality."
* MPLAB "To further simplify testing and diagnostics, Microchip also introduced MPLAB Code Coverage license, which determines parts of software that have or have not been executed with minimal impact to the application."
* arm / KEIL / µVision User's Guide "The Code Coverage dialog provides statistics about the executed code." 
* BULLSEYE Testing Technology "BullseyeCoverage is an advanced C++ code coverage tool used  ..."
* DO-178C's test coverage is a broader topic than this page since its testing must demonstrate complete and robust coverage of all requirements. In this context, "structural coverage" is an ancillary "evaluation of the code structure, including interfaces, exercised during requirements base testing." Here, the main point of "code coverage" is invoking "another set of eyes" searching for overlooked problems in the requirements.
* LDRA Structural (Code) Coverage Analysis in embedded systems 
* RAPITA : "Structural coverage analysis (also referred to as code coverage) is an important component of critical systems development."
See also: Talk:Fault coverage#Split 
IveGoneAway (talk) 22:01, 15 February 2023 (UTC)
thread_title:  Move? 

message: Code Analyzer for the Maniac computer. Analysis of problem codes on the Maniac, Math. Comp. 9 (1955), 14-20. MarMi wiki (talk) 19:57, 12 July 2023 (UTC)
thread_title:  Code coverage in 1955