PyCharm is a Python IDE which also contains static code testing capabilities.
Static Code Analysis
Static Code Analysis Overview
What is Static Code Analysis?
Static Code Analysis (also called static analysis or source code analysis) is a way to debug software code before the program is executed. The code is automatically compared to coding rules and industry standards to ensure compliance. Static code analysis occurs in the creation phase, before testing begins.
Static code analysis analyzes the structure of the code, looking for code errors, malicious software, and other security flaws such as back doors. These tools frequently allow developers to hone in on portions of the code that might be problematic, rather than simply finding flaws.
How does Static Coding differ from Dynamic Coding?
The goal of both static coding and dynamic coding is to discover coding errors. The difference is where this discovery takes place. Static coding uncovers errors before testing the software, whereas dynamic coding uncovers errors during the testing phase, including any errors that the static code analysis failed to uncover.
Dynamic code analysis analyzes how code interacts with other components, such as application servers and SQL databases to ensure the code is secure. Most developers choose to implement both kinds of testing to ensure the most robust code.
Benefits of Static Code Analysis
Static code analysis is not 100% accurate and sometimes returns false positives or false negatives. However, it has numerous benefits, including:
Relative accuracy - catch many more errors than by manual analysis
Efficient way to uncover errors
Speed to discover errors
Comprehensiveness of testing
Decreases risk of high impact error after software release
Ability to uncover errors that aren’t usually detected during dynamic testing
Static Code Analysis Features & Capabilities
Most static code analysis software on the market today offers the following features:
Multiple programming language support
Various security and industry standard libraries
Reporting and analytics dashboards
Some offer third party integrations, including Github and Jenkins
Static Code Analysis Products
Listings (1-15 of 15)
Veracode is an application security platform that performs five types of analysis; static analysis, dynamic analysis, software composition analysis, interactive application security testing, and penetration testing. Veracode offers on-demand expertise and aims to help companies fix security defects.
Codacy automates code reviews and monitors code quality on every commit and pull request reporting back the impact of every commit or pull request, issues concerning code style, best practices, security, and many others. It monitors changes in code coverage, code duplication and code complexity. Sav…
Checkmarx, an Israeli headquartered company with US offices, provides a suite of application security software.
The Semmle analytics platform analyzes development data—source code, version history, development costs, team location. Semmle was acquired by GitHub in September 2019.
Codebeat is a static code analysis tool that is integrated with the Github, Bitbucket, and GitLab repositories. It provides automated code review and allows developers to merge with confidence.
Seerene in Potsdam offers their software analytics platform as a digital boardroom for software management that provides real-time, understandable, objective insights into software development processes and activities for decision makers. This way, the software development gets monitored, analyzed, …
Sonatype DepSheild atomatically identifies vulnerabilities within open source dependencies and is available free.
Embold Technologies (formerly Acellere) in Frankfort offers Embold (formerly Gamma), a static code analysis and peer code review tool for developers.
Belgian company Guardsquare offers the ProGuard optimizer for Java bytecode. It makes Java and Android applications up to 90% smaller and up to 20% faster. ProGuard also provides minimal protection against reverse engineering by obfuscating the names of classes, fields and methods.
GitPrime is a software and software developer analytics platform, which aggregates historical git data into easy to understand insights and reports, to help make engineering teams more successful. GitPrime is now owned and supported by Pluralsight (acquired May 2019).
Kiuwan Code Security, from Idera company Kiuwan, automatically scans code to identify and remediate vulnerabilities. Compliant with the most stringent security standards, such as OWASP and CWE, Kiuwan Code Security covers all important languages and integrates with leading DevOps tools.
BlueOptima's analytics platform is designed to empower software developers and their companies to create better software in the most time- and cost-efficient way. BlueOptima provides insight based on objective software developer productivity metrics: Actual Coding Effort.
GuardRails orchestrates open-source, and commercial security tools by integrating them into an existing development workflow. GuardRails curates each security rule of the security tools to keep the noise low and only report high-impact and relevant security issues.Installing and configuring security…
Sentinel, from WhiteHat Security headquartered in Santa Clara, California, is an application security and testing platform. Individual components provide software composition analysis, static code analysis, license checking and vulnerability scanning, and support for mobile application security test…