1
1
Import-Module (Join-Path $PSScriptRoot " Selenium.psd1" ) - Force
2
2
3
+ Describe " Verify the Binaries SHA256 Hash" {
4
+ It " Check WebDriver.dll Hash" {
5
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/0ee619b1786cf5971c0f9c6ee1859497aecba93a4953cf92fea998e8eefadf3c/detection
6
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\WebDriver.dll).Hash
7
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\WebDriver.dll.sha256)
8
+ }
9
+
10
+ It " Check WebDriver.Support.dll Hash" {
11
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/b59ba7d0cffe43e722b13ad737cf596f030788b86b5b557cb479f0b6957cce8a/detection
12
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\WebDriver.Support.dll).Hash
13
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\WebDriver.Support.dll.sha256)
14
+ }
15
+
16
+ It " Check ChromeDriver.exe Hash" {
17
+ # The ChromeDriver.exe was extracted from https://chromedriver.storage.googleapis.com/76.0.3809.68/chromedriver_win32.zip its VirusTotal Scan URL - https://www.virustotal.com/gui/url/69ffe387a3fa4fbf8a108391580f1a0befb8b96b82486da4417cfcdab4add4d4/detection
18
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/66cfa645f83fde41720beac7061a559fd57b6f5caa83d7918f44de0f4dd27845/detection
19
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\chromedriver.exe ).Hash
20
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\chromedriver.exe .sha256)
21
+ }
22
+
23
+ It " Check ChromeDriver Linux Hash" {
24
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/3da69344b8b2b3b7e1497378672231a179eed6b3a0fdccbfacd3d053612e2547/detection
25
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\linux\chromedriver).Hash
26
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\linux\chromedriver.sha256)
27
+ }
28
+
29
+ It " Check ChromeDriver MacOS Hash" {
30
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/57097bb65200f003152906c831ccd226ebbd5a9fd47df46f18adc29f7d01f2f0/detection
31
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\macos\chromedriver).Hash
32
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\macos\chromedriver.sha256)
33
+ }
34
+
35
+ It " Check GeckoDriver.exe Hash" {
36
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/1ae81b2a6f40f7d11be3c91c4d83977ae0c0897bd5d154c02a6d869b58866b58/detection
37
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\geckodriver.exe ).Hash
38
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\geckodriver.exe .sha256)
39
+ }
40
+
41
+ It " Check GeckoDriver Linux Hash" {
42
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/4490a47280ab38f68511ac0dfff214bfad89bfd5442b1c3096c28d5372dfe2e9/detection
43
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\linux\geckodriver).Hash
44
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\linux\geckodriver.sha256)
45
+ }
46
+
47
+ It " Check GeckoDriver MacOS Hash" {
48
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/1f3873a8ee0b2cb9f2918329cbdf0d65e45c0182127ea03520bec70f0dab3917/detection
49
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\macos\geckodriver).Hash
50
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\macos\geckodriver.sha256)
51
+ }
52
+
53
+ It " Check IEDriverServer.exe Hash" {
54
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/a1e26b0e8cb5f8db1cd784bac71bbf540485d81e697293b0b4586e25a31a8187/detection - this driver seems to have 2 false positives and is marked as clean in the comments
55
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\IEDriverServer.exe ).Hash
56
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\IEDriverServer.exe .sha256)
57
+ }
58
+
59
+ It " Check MicrosoftWebDriver.exe Hash" {
60
+ # VirusTotal Scan URL = https://www.virustotal.com/gui/file/6e8182697ea5189491b5519d8496a3392e43741b7c0515130f2f8205881d208e/detection
61
+ $Hash = (Get-FileHash - Algorithm SHA256 - Path $PSScriptRoot \assemblies\MicrosoftWebDriver.exe ).Hash
62
+ $Hash | Should Be (Get-Content - Path $PSScriptRoot \assemblies\MicrosoftWebDriver.exe .sha256)
63
+ }
64
+ }
65
+
3
66
Describe " Start-SeChrome" {
4
67
Context " Should Start Chrome Driver" {
5
68
$Driver = Start-SeChrome
@@ -23,15 +86,19 @@ Describe "Start-SeFirefox" {
23
86
24
87
Describe " Start-SeEdge" {
25
88
Context " Should Start Edge Driver" {
26
- $Driver = Start-SeEdge
27
- Stop-SeDriver $Driver
89
+ if (! $IsLinux -and ! $IsMacOS ){
90
+ $Driver = Start-SeEdge
91
+ Stop-SeDriver $Driver
92
+ }
28
93
}
29
94
}
30
95
31
96
Describe " Start-SeInternetExplorer" {
32
97
Context " Should Start InternetExplorer Driver" {
33
- $Driver = Start-SeInternetExplorer
34
- Stop-SeDriver $Driver
98
+ if (! $IsLinux -and ! $IsMacOS ){
99
+ $Driver = Start-SeInternetExplorer
100
+ Stop-SeDriver $Driver
101
+ }
35
102
}
36
103
}
37
104
0 commit comments