azure / azure-devtestlab
Source Code Overview

Analysis scope, overview of main, test, generated, deployment, build, and other code.

Source Code Analysis Scope
Files includes and excluded from analyses
csproj
txt
gitattributes
resx
cmd
Overview of Analyzed Files
Basic stats on analyzed files
Intro
For analysis purposes we separate files in scope into several categories: main, test, generated, deployment and build, and other.

  • The main category contains all manually created source code files that are being used in the production.
  • Files in the main category are used as input for other analyses: logical decomposition, concerns, duplication, file size, unit size, and conditional complexity.
  • Test source code files are used only for testing of the product. These files are normally not deployed to production.
  • Build and deployment source code files are used to configure or support build and deployment process.
  • Generated source code files are automatically generated files that have not been manually changed after generation.
  • While a source code folder may contain a number of files, we are primarily interested in the source code files that are being written and maintained by developers.
  • Files containing binaries, documentation, or third-party libraries, for instance, are excluded from analysis. The exception are third-party libraries that have been changed by developers.

main26592 LOC (36%) 131 files
test70 LOC (<1%) 1 file
generated4860 LOC (6%) 1 file
build and deployment765 LOC (1%) 18 files
other40922 LOC (55%) 493 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
cmd
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 131 files match defined criteria (26,592 LOC, 100.0% vs. main code):
    • 106 *.ps1 files (22,859 LOC)
    • 4 *.psm1 files (2,042 LOC)
    • 13 *.ts files (1,323 LOC)
    • 5 *.js files (220 LOC)
    • 1 *.py files (92 LOC)
    • 1 *.cmd files (37 LOC)
    • 1 *.cs files (19 LOC)
  • " *.ps1" is biggest, containing 85.96% of LOC.
  • " *.cs" is smallest, containing 0.07% of LOC.


*.ps122859 LOC (85%) 106 files
*.psm12042 LOC (7%) 4 files
*.ts1323 LOC (4%) 13 files
*.js220 LOC (<1%) 5 files
*.py92 LOC (<1%) 1 file
*.cmd37 LOC (<1%) 1 file
*.cs19 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*[.][Tt]ests[.].*".
    • files with paths like ".*[.]tests[.].*".
    • files with paths like ".*[-]test[-].*".
  • 1 file matches defined criteria (70 LOC, 0.3% vs. main code). All matches are in *.ps1 files.


*.ps170 LOC (100%) 1 file
Generated Code
Automatically generated files, not manually changed after generation.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/package[-]lock[.]json".
  • 1 file matches defined criteria (4,860 LOC, 18.3% vs. main code). All matches are in *.json files.


*.json4860 LOC (100%) 1 file
Build and Deployment Code
Source code used to configure or support build and deployment process.
csproj
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]sh".
    • files with paths like ".*[.]csproj".
    • files with paths like ".*/package[-]lock[.]json".
    • files with paths like ".*/package[.]json".
    • files with paths like ".*([.]|/)webpack([.]|/).*".
    • files with paths like ".*/[.]gitattributes".
    • files with paths like ".*[.]bat".
  • 18 files match defined criteria (765 LOC, 2.9% vs. main code):
    • 15 *.sh files (600 LOC)
    • 1 *.csproj files (64 LOC)
    • 1 *.bat files (63 LOC)
    • 1 *.js files (38 LOC)
  • " *.sh" is biggest, containing 78.43% of LOC.
  • " *.js" is smallest, containing 4.97% of LOC.


*.sh600 LOC (78%) 15 files
*.csproj64 LOC (8%) 1 file
*.bat63 LOC (8%) 1 file
*.js38 LOC (4%) 1 file
Other Code
csproj
txt
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[Ss]amples/.*".
    • files with paths like ".*/[Ee]xamples/.*".
    • files with paths like ".*/LICENSE[.][a-z0-9]+".
    • files with paths like ".*[.]txt".
    • files with paths like ".*[.]svg".
  • 493 files match defined criteria (40,922 LOC, 153.9% vs. main code):
    • 231 *.json files (18,154 LOC)
    • 108 *.ps1 files (10,472 LOC)
    • 5 *.psm1 files (6,185 LOC)
    • 100 *.md files (3,267 LOC)
    • 31 *.cs files (1,715 LOC)
    • 5 *.csproj files (437 LOC)
    • 1 *.js files (262 LOC)
    • 5 *.sh files (205 LOC)
    • 3 *.xml files (131 LOC)
    • 1 *.svg files (41 LOC)
    • 2 *.txt files (36 LOC)
    • 1 *.html files (17 LOC)
  • " *.json" is biggest, containing 44.36% of LOC.
  • " *.html" is smallest, containing 0.04% of LOC.


*.json18154 LOC (44%) 231 files
*.ps110472 LOC (25%) 108 files
*.psm16185 LOC (15%) 5 files
*.md3267 LOC (7%) 100 files
*.cs1715 LOC (4%) 31 files
*.csproj437 LOC (1%) 5 files
*.js262 LOC (<1%) 1 file
*.sh205 LOC (<1%) 5 files
*.xml131 LOC (<1%) 3 files
*.svg41 LOC (<1%) 1 file
*.txt36 LOC (<1%) 2 files
*.html17 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-06 21:12