The example step includes one required parameter and one that is not required and has a default.
PS C:\temp> Invoke-OctopusStep @{} .\step.ps1
Missing parameter value RequiredParameter
At C:\temp\step.ps1:12 char:13
+ throw "Missing parameter value $Name"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (Missing paramet...quiredParameter:String) [], RuntimeException
+ FullyQualifiedErrorId : Missing parameter value RequiredParameter
PS C:\temp> Invoke-OctopusStep @{RequiredParameter="apple"} .\step.ps1
Script Title...
RequiredParameter: apple
DefaultedParameter: default value
PS C:\temp> Invoke-OctopusStep @{RequiredParameter="apple"; DefaultedParameter="orange"} .\step.ps1
Script Title...
RequiredParameter: apple
DefaultedParameter: orange