問題タブ [pester]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - PowerShell モジュール関数は、呼び出し元のスコープ内の変数にアクセスできません
Selenium WebDriver で Pester を使用しています。WebDriver は、対応する「Describe」ブロック内の「BeforeAll」ブロックで初期化され、結果のインスタンスが $driver 変数に割り当てられます。次に、'Describe' および 'It' ブロックで、PowerShell で自動ロードされる外部 PowerShell モジュールにあるカスタム関数を呼び出します。これらの関数は、'BeforeAll' ブロックで定義された $driver 変数にアクセスできるはずですが、アクセスできず、次のエラー メッセージが表示されます。
RuntimeException: null 値の式でメソッドを呼び出すことはできません。
Search.Tests.ps1 Pester スクリプトのコードは次のとおりです。
Find-WebElement と GetTextFrom-WebElement は、$driver を使用して CSS で要素を取得し、要素の内部テキストを抽出するヘルパー関数です。
この問題を調査し、回避策を見つけましたが、それはエレガントな方法ではないと思います。回避策は、次のように param ブロックの直後にある外部 PowerShell モジュールの各ヘルパー関数で $driver を再定義することです。
このようにして、関数は $driver を認識でき、すべてが機能します。
私の質問:何かをすることは可能ですか?関数は常に $driver にアクセスでき、それぞれのドライバーを再定義する必要はありませんか?
powershell - 2 つの PsCustomObjects のプロパティを比較する
2 つの PowerShell オブジェクトの値を比較できることはわかっています。
ただし、 2 つの PowerShell オブジェクトのプロパティの存在を比較する必要があります。
これらのオブジェクトは同じと見なされます。
これらのオブジェクトは同じではないと見なされます:
これを行う良い方法はありますか?
powershell - 実行空間で型検証を実行できません
作成中のモジュールで単体テストを行うために Pester を使用していますが、実行空間オブジェクトを返すはずの関数の 1 つに少し問題があります。実行空間オブジェクトを作成して実行する.GetType()
と、名前が LocalRunspace として表示され、System.Management.Automation.Runspaces.LocalRunspace のフルネームが表示されますが、実行すると$Runspace -is [LocalRunspace]
以下$Runspace -is [System.Management.Automation.Runspaces.LocalRunspace]
のエラー メッセージが表示されます
適切な検証チェックを作成するために、どのタイプを参照する必要があるかを理解しようとしています。の結果と比較することにフォールバックできることはわかっていますが、.GetType()
実際には通常の Pester の規則を使用したいと思います。Should BeOfType
powershell - Pester でコレクションの等価性をテストする
nUnit では、次のようなことができます。
と
ペスターに同等のものはありますか?
私は私ができることを知っています
しかし、期待どおりに動作しません。
正しい構文を使用していますか?
class - Powershell 5 クラスの Pester モック メソッド
テストを実行すると、「 CommandNotFoundException: Command FunctionToMock が見つかりませんでした」というエラーが表示されます。「FunctionToMock」をモックして、「OutputToOverwrite」メソッドを単体テストしようとしています。最初に ChocoClass 自体をモックする必要があると思いますが、その方法がわかりません。ありがとう。