Pester VS PSScriptAnalyzer

Compare Pester vs PSScriptAnalyzer and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
Pester PSScriptAnalyzer
24 15
3,009 1,773
0.4% 1.2%
6.2 7.5
8 days ago 7 days ago
PowerShell C#
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Pester

Posts with mentions or reviews of Pester. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-25.

PSScriptAnalyzer

Posts with mentions or reviews of PSScriptAnalyzer. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-17.
  • Using PSScriptAnalyzer to check PowerShell version compatibility - Building custom compat profiles
    1 project | /r/sysadmin | 19 Jun 2023
    I am looking to build a custom profile for a ws2019 with ps 7.2 + to use to check my scripts, i have tried using the compat collector https://github.com/PowerShell/PSScriptAnalyzer/tree/development/PSCompatibilityCollector and running the build.ps1 script there but I do not see an output for my commands and the script text doesn't provide much clarify to me at least.
  • What open source tools do you use to check the security of your PowerShell scripts?
    1 project | /r/PowerShell | 18 Apr 2023
    PSScriptAnalyze is a static code analysis tool that checks PowerShell scripts for best practices and potential security issues. It is available on GitHub and can be installed as a module in PowerShell. https://github.com/PowerShell/PSScriptAnalyzer
  • PSScriptAnalyzer
    1 project | /r/ITProTuesday | 6 Jan 2023
    PSScriptAnalyzer is a static code checker for PowerShell modules and scripts. Runs a set of rules that test the quality of PowerShell code against best practice, then warns about potential code defects and suggests potential solutions. xXxLinuxUserxXx likes this linter "to get unified codestyle in the scripts."
  • I made a Dell Command Script for Intune, thought others may find it helpful.
    2 projects | /r/sysadmin | 17 Nov 2022
    Not a windows admin and more like a programmer but i would suggest to use some linter (https://github.com/PowerShell/PSScriptAnalyzer) to get unified codestyle in the scripts :)
  • Azure Guest Invitation
    1 project | /r/PowerShell | 2 Aug 2022
    It’s best practice to keep $null on the left side of comparisons https://github.com/PowerShell/PSScriptAnalyzer/blob/development/RuleDocumentation/PossibleIncorrectComparisonWithNull.md
  • Dangerous and Insecure PowerShell Code in the Enterprise
    1 project | /r/PowerShell | 31 Jan 2022
  • Smarter autocomplete
    1 project | /r/PowerShell | 27 Jan 2022
    This one is a real problem. When I reference a type which is defined in another file in a class, I get an error in my vscode. the class works but the PSScriptAnalyzer doesn't know that the type is imported. I found this github issue which is about supressing the issue, I tried that and couldnt get it to work but I'd rather that it just recognized the type from the other file https://github.com/PowerShell/PSScriptAnalyzer/issues/1041
  • Who uses Visual Studio Code for PowerShell Scripting?
    5 projects | /r/PowerShell | 31 Oct 2021
    I would definer not autoformat on save with bugs such was this still outstanding: https://github.com/PowerShell/PSScriptAnalyzer/issues/1580
  • help with add-newuser profile names
    1 project | /r/PowerShell | 20 Jul 2021
    That's some sloppy code. Wmic is deprecated. You shouldn't put unencrypted passwords in scripts. You shouldn't use write-host anymore. $null goes in front, etc. Try using https://github.com/PowerShell/PSScriptAnalyzer to ensure decent code. Also write code in vscode. Also read https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.localaccounts/new-localuser?view=powershell-5.1
  • Module workflow in VS Code?
    4 projects | /r/PowerShell | 15 Apr 2021
    I discovered the Invoke-Build build system, PSScriptAnalyzer for linting, and Pester for testing/mocking. I wrote a GitLab CI/CD pipeline that takes advantage of all of this to push releases to our company's PSRepo. I also discovered the Plaster template system for scaffolding new projects, and created a custom company template for standardizing our repo structures.

What are some alternatives?

When comparing Pester and PSScriptAnalyzer you can also consider the following projects:

bicep - Bicep is a declarative language for describing and deploying Azure resources

vscode-powershell - Provides PowerShell language and debugging support for Visual Studio Code

arm-ttk - Azure Resource Manager Template Toolkit

PSReadLine - A bash inspired readline implementation for PowerShell

Plaster - Plaster is a template-based file and project generator written in PowerShell.

ImportExcel - PowerShell module to import/export Excel spreadsheets, without Excel

Invoke-Build - Build Automation in PowerShell

nvim-lsp-installer - Further development has moved to https://github.com/williamboman/mason.nvim!

PowerShellPracticeAndStyle - The Unofficial PowerShell Best Practices and Style Guide

jtbl - CLI tool to convert JSON and JSON Lines to terminal, CSV, HTTP, and markdown tables

aws-tools-for-powershell - The AWS Tools for PowerShell lets developers and administrators manage their AWS services from the PowerShell scripting environment.

libxo - The libxo library allows an application to generate text, XML, JSON, and HTML output using a common set of function calls. The application decides at run time which output style should be produced.