Gumshoe-Microsoft code coverage test toolset

Source: Internet
Author: User
Gumshoe-Microsoft code coverage test toolset

2014-07-16

What is gumshoe?

How to instrument a binary?

How to collect data?

How to vewi results?

Gumshoe concpets

Gumshoe Server

 

What is gumshoe?

Top

Gumshoe is a toolset for integrating code coverage into the workflow between developers and Testers by providing real-time feedback on the code coverage of code changed by a developer.

Download (the version 2.0.1300.1000 is stable)

How to instrument a binary?

Top

Instrumentation is the process of adding hooks into a binary so that code coverage can be collected on it when the binary is run. gumshoe uses Magellan to instrument most built binaries (I. E .. net, C, C ++ binaries ). gumshoe also supports plugins for JavaScript instrumentation.

Instrumentation typically produces three files:

  • An instrumented binary,
  • An instrumented PDB,
  • And a covsym file.

The covsym file must be added to the session for gumshoe to be able to then collect coverage on the instrumented binary.

Attention: Instrumentation can cause binaries to run slower than usual. you probably will not want to do performance tests with Instrumented binaries. badly designed tests can sometimes fail because actions may take longer on an instrumented binary than a non-instrumented binary.

Step-by-step instruction

Top

 

Gumshoe concepts

Top

Code blocks and arcs:

A block is a sequence of machine instructions with exactly one entry point and one exit point. An arc is what connects two blocks to one another

Coverage symbols (covsym ):

Gumshoe needs "Resources" to properly interpret data. A coverage symbols file, also known as a covsym, maps binary data from the instrumented binary executable specific to the build being tested.

Dpk:

A sD(Source depot)PACKAge file commonly used by varous groups into ss the company to bundle a batch of source code changes. in fact, the Office triage process is based on SD packages. a. dpk file is used to pass around a set of diffs as a single unit and consists of base source files, your modified source files and a manifest, bundled in a zip file with the extension. dpk. sdpack provides mechanisms to create, manage, view, and apply. dpk files. see toolbox for more information on sdpack. A dpk file can be added to gumshoe as a resource. from that dpk gumshoe will automatically generate a filter based on the changed \ added code in addition to extracting the modified source files so that you can see an annotated view of the code without having to first locate the source files.

Filter:
A filter is used in gumshoe to scope down a change. one of the most common scenarios for a filter is applying a source line filter (or a dpk filter) to see the coverage scoped to a participant changelist. other filters include symbol filters, which allow you to filter on static covsym data such as binaryname or directory, and trace filters, which allow you to filter based on a trace name.

Sessions:
Once a gumshoe session is started, it remains active until you specifically enter the command to end the session, even if you reboot your computer.

Reference

[1] https://microsoft.sharepoint.com/teams/Gumshoe/default.aspx

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.