Test-ModuleManifest
Memverifikasi bahwa file manifes modul secara akurat menjelaskan konten modul.
Sintaks
Default (Default)
Test-ModuleManifest
[-Path] <String>
[<CommonParameters>]
Deskripsi
Cmdlet Test-ModuleManifest memverifikasi bahwa file yang tercantum dalam file manifes modul (.psd1) sebenarnya berada di jalur yang ditentukan.
Cmdlet ini dirancang untuk membantu penulis modul menguji file manifes mereka. Pengguna modul juga dapat menggunakan cmdlet ini dalam skrip dan perintah untuk mendeteksi kesalahan sebelum mereka menjalankan skrip yang bergantung pada modul.
Test-ModuleManifest mengembalikan objek yang mewakili modul. Ini adalah jenis objek yang sama dengan yang dikembalikan Get-Module. Jika ada file yang tidak berada di lokasi yang ditentukan dalam manifes, cmdlet juga menghasilkan kesalahan untuk setiap file yang hilang.
Contoh
Contoh 1: Menguji manifes
Test-ModuleManifest -Path "$PSHOME\Modules\TestModule.psd1"
Perintah ini menguji manifes modul TestModule.psd1.
Contoh 2: Menguji manifes dengan menggunakan alur
"$PSHOME\Modules\TestModule.psd1" | Test-ModuleManifest
Test-ModuleManifest : The specified type data file 'C:\Windows\System32\Wi
ndowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml' could not be processed because the file was not found. Please correct the path and try again.
At line:1 char:34
+ "$PSHOME\Modules\TestModule.psd1" | Test-ModuleManifest <<<<
+ CategoryInfo : ResourceUnavailable: (C:\Windows\System32\WindowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml:String) [Test-ModuleManifest], FileNotFoundException
+ FullyQualifiedErrorId : Modules_TypeDataFileNotFound,Microsoft.PowerShell.Commands.TestModuleManifestCommandName
Name : TestModule
Path : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestModule\TestModule.psd1
Description :
Guid : 6f0f1387-cd25-4902-b7b4-22cff6aefa7b
Version : 1.0
ModuleBase : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestModule
ModuleType : Manifest
PrivateData :
AccessMode : ReadWrite
ExportedAliases : {}
ExportedCmdlets : {}
ExportedFunctions : {}
ExportedVariables : {}
NestedModules : {}
Perintah ini menggunakan operator alur (|) untuk mengirim string jalur ke Test-ModuleManifest.
Output perintah menunjukkan bahwa pengujian gagal, karena file TestTypes.ps1xml, yang tercantum dalam manifes, tidak ditemukan.
Contoh 3: Menulis fungsi untuk menguji manifes modul
function Test-ManifestBool ($path)
{$a = dir $path | Test-ModuleManifest -ErrorAction SilentlyContinue; $?}
Fungsi ini seperti Test-ModuleManifest, tetapi mengembalikan nilai Boolean. Fungsi mengembalikan $true jika manifes lulus pengujian dan $false sebaliknya.
Fungsi ini menggunakan cmdlet Get-ChildItem, alias = dir, untuk mendapatkan manifes modul yang ditentukan oleh variabel $path. Perintah menggunakan operator alur (|) untuk meneruskan objek file ke Test-ModuleManifest.
Test-ModuleManifest menggunakan parameter ErrorAction umum dengan nilai SilentlyContinue untuk menekan tampilan kesalahan apa pun yang dihasilkan perintah. Ini juga menyimpan objek PSModuleInfo yang Test-ModuleManifest kembali dalam variabel $a. Oleh karena itu, objek tidak ditampilkan.
Kemudian, dalam perintah terpisah, fungsi menampilkan nilai variabel otomatis $?. Jika perintah sebelumnya tidak menghasilkan kesalahan, perintah akan menampilkan $true, dan $false sebaliknya.
Anda dapat menggunakan fungsi ini dalam pernyataan kondisi, seperti yang mungkin mendahului perintah Import-Module atau perintah yang menggunakan modul.
Parameter
-Path
Menentukan jalur dan nama file untuk file manifes. Masukkan jalur opsional dan nama file manifes modul yang memiliki ekstensi nama file .psd1. Lokasi default adalah direktori saat ini. Karakter kartubebas didukung, tetapi harus diselesaikan ke satu file manifes modul.
Parameter ini diperlukan. Anda juga dapat menyalurkan jalur ke Test-ModuleManifest.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | True |
| DontShow: | False |
Set parameter
(All)
| Position: | 0 |
| Wajib: | True |
| Nilai dari alur: | True |
| Nilai dari alur berdasarkan nama properti: | True |
| Nilai dari argumen yang tersisa: | False |
CommonParameters
Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.
Input
String
Anda dapat menyalurkan jalur ke manifes modul ke cmdlet ini.
Output
PSModuleInfo
Cmdlet ini mengembalikan objek