dbatools
Pester
Our great sponsors
dbatools | Pester | |
---|---|---|
5 | 24 | |
2,311 | 3,003 | |
0.9% | 0.6% | |
9.2 | 6.2 | |
12 days ago | 18 days ago | |
PowerShell | PowerShell | |
MIT License | GNU General Public License v3.0 or later |
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.
dbatools
-
Github pipelines/actions for .net build/deployment workflow?
dbatools (for deploying database changes)
- Looking for public powershell projects to learn best practices and as a reference
-
VS Code Syntax Highlighting
It's very rare I open files that big, but just for fun I took the 1k lines here: https://github.com/sqlcollaborative/dbatools/blob/development/dbatools.psm1 copied and pasted the code 37 times into a .ps1 file and opened it in ISE. ISE opened and highlighted it in like 1-2 seconds so the PS parser is clearly able to parse things quick enough for it to not matter.
Pester
-
PyPyInstaller Powershell Module Initial Code Push
Pester is what's used for most Powershell testing. While it has some pretty amazing features, it does have issues with .NET class method mocking and sometimes scope can be weird. Here's a simple example:
-
Dev Stuff Distracting Me From Article Writing
This is the fun that is Powershell mocking, or at least the form that someone completely new to Powershell would write. One thing I must say is that Pester's mocking capabilities are quite easy to work with. It reminded me of pytest mock patching, only well, simpler. Most of the time spent fighting tests was due to the nuances of pipeline flow. For example, you can see that your mocked method was called X many times through something like this:
-
Windows 11 malware adds excludes to windows defender scan
The folder blocked all users from reading the files so if you open up the files it looks empty, even tho you have show hidden files turned on. You can't delete it since it says that you need access from TrustedInstaller. This is cleaver by the hacker since trusted installer is actually the name of a windows feature. HOW-EVER by using the command line I found out that the folder contains framework like these two. https://github.com/d1pakda5/PowerShell-for-Pentesters https://github.com/pester/Pester
-
I have to learn PowerShell in 2 weeks. is that possible?
I'm really surprised that nobody in this thread has mentioned Pester. PowerShell has its own automated unit testing framework that is incredibly versatile. You do need to know PowerShell in order to really make it shine, but if there are some simple tests that your class requires such as "make sure this value conforms to this regex value", Pester is pretty easy to pick up and utilize.
-
Thoughts on authoring cmdlets
Finally, the Pester testing framework, which ships with Powershell, is a great way to ensure your code actually does what it's meant to do.
- Git repo best practices for Powershell.
- Looking for public powershell projects to learn best practices and as a reference
-
Pester 5.3.0 is published.
Release 5.3.0 · pester/Pester (github.com)
-
Upgrade from Pester v4 to v5
The InModuleScope block needs to move inside each It block. This is until version 5.3.0 as mentioned in this issue raised on Pester's gitub repository.
-
Pester 5.2.0 RC1 is published.
5.2.0-rc1 · Discussion #1919 · pester/Pester (github.com)
What are some alternatives?
ansible.windows - Windows core collection for Ansible
bicep - Bicep is a declarative language for describing and deploying Azure resources
PSWriteHTML - PSWriteHTML is PowerShell Module to generate beautiful HTML reports, pages, emails without any knowledge of HTML, CSS or JavaScript. To get started basics PowerShell knowledge is required.
PSScriptAnalyzer - Download ScriptAnalyzer from PowerShellGallery
arm-ttk - Azure Resource Manager Template Toolkit
Plaster - Plaster is a template-based file and project generator written in PowerShell.
aws-tools-for-powershell - The AWS Tools for PowerShell lets developers and administrators manage their AWS services from the PowerShell scripting environment.
Invoke-Build - Build Automation in PowerShell
SqlServerDsc - This module contains DSC resources for deployment and configuration of Microsoft SQL Server.
PowerShellPracticeAndStyle - The Unofficial PowerShell Best Practices and Style Guide
vscode-powershell - Provides PowerShell language and debugging support for Visual Studio Code
PowerShellForGitHub - Microsoft PowerShell wrapper for GitHub API