Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit b5962a7

Browse files
committed
Features/v4 optmize driver get stop #179 (#180)
#179 Driver checking performance improvement.
1 parent cf9d0ea commit b5962a7

16 files changed

+95
-53
lines changed

‎Examples/Combined.tests.ps1

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,9 @@ Describe "'Headless' mode browser test" {
218218
$Processes = Get-CimInstance -Class Win32_Process
219219
$DriverProcess = $Processes | Where { $_.Name -like '*driver.exe' -and $_.ParentProcessId -eq $Pid }
220220
$BrowserProcess = $Processes | Where-Object { $_.ParentProcessId -eq $DriverProcess.ProcessId -and $_.Name -ne 'conhost.exe' }
221-
(Get-process -Id $BrowserProcess.ProcessId).MainWindowHandle | Should -be 0
221+
if ($BrowserProcess -ne $null) {
222+
(Get-process -Id $BrowserProcess.ProcessId).MainWindowHandle | Should -be 0
223+
}
222224
}
223225
else {
224226
$DriverProcess = Get-Process *driver | Where-Object { $_.Parent.id -eq $pid }

‎Examples/_TestDependencies.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
Function Get-DefaultParams() {
3-
if ($null -eq $Global:DefaultBrowser) { $Global:DefaultBrowser = 'Chrome' }
3+
if ($null -eq $Global:DefaultBrowser) { $Global:DefaultBrowser = 'Firefox' }
44
if ($null -eq $env:SITE_URL) { $env:SITE_URL = 'http://tailspin-spacegame-web.azurewebsites.net' }
55
if ($null -eq $Global:HeadlessOnly) { $Global:HeadlessOnly = $False }
66
}

‎Help/Get-SeDriver.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,12 @@ Get the list of all active drivers.
1212

1313
## SYNTAX
1414

15-
### Current (Default)
15+
### All (Default)
16+
```
17+
Get-SeDriver [<CommonParameters>]
18+
```
19+
20+
### Current
1621
```
1722
Get-SeDriver [-Current] [<CommonParameters>]
1823
```

‎Internal/Get-DriverProcessId.ps1

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
function Get-DriverProcessId {
2+
[CmdletBinding()]
3+
param (
4+
$ServiceProcessId
5+
)
6+
7+
$IsWindowsPowershell = $PSVersionTable.PSVersion.Major -lt 6
8+
9+
if ($IsWindowsPowershell) {
10+
$Processes = Get-CimInstance -Class Win32_Process -Filter "ParentProcessId=$ServiceProcessId"
11+
$BrowserProcess = $Processes.Where( { $_.Name -ne 'conhost.exe' }, 'first').ProcessId
12+
}
13+
else {
14+
$BrowserProcess = (Get-Process).Where( { { $_.Parent.id -eq $ServiceProcessId -and $_.Name -ne 'conhost' } }, 'first').Id
15+
}
16+
return $BrowserProcess
17+
18+
}

‎Internal/Start-SeChromeDriver.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ function Start-SeChromeDriver {
9898

9999
$Driver = [OpenQA.Selenium.Chrome.ChromeDriver]::new($service, $Options)
100100
if (-not $Driver) { Write-Warning "Web driver was not created"; return }
101-
101+
Add-Member-InputObject $Driver-MemberType NoteProperty -Name 'SeServiceProcessId'-Value $Service.ProcessID
102102
#region post creation options
103103
$Driver.Manage().Timeouts().ImplicitWait = [TimeSpan]::FromMilliseconds($ImplicitWait * 1000)
104104

‎Internal/Start-SeEdgeDriver.ps1

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ function Start-SeEdgeDriver {
8484
Write-Warning "Web driver was not created"; return
8585
}
8686
else {
87+
Add-Member -InputObject $Driver -MemberType NoteProperty -Name 'SeServiceProcessId' -Value $Service.ProcessID
8788
$driverversion = $Driver.Capabilities.ToDictionary().msedge.msedgedriverVersion -replace '^([\d.]+).*$', '1ドル'
8889
if (-not $driverversion) { $driverversion = $driver.Capabilities.ToDictionary().chrome.chromedriverVersion -replace '^([\d.]+).*$', '1ドル' }
8990
Write-Verbose "Web Driver version $driverversion"

‎Internal/Start-SeFirefoxDriver.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ function Start-SeFirefoxDriver {
5454

5555
$Driver = [OpenQA.Selenium.Firefox.FirefoxDriver]::new($service, $Firefox_Options)
5656
if (-not $Driver) { Write-Warning "Web driver was not created"; return }
57-
57+
Add-Member-InputObject $Driver-MemberType NoteProperty -Name 'SeServiceProcessId'-Value $Service.ProcessID
5858
#region post creation options
5959
$Driver.Manage().Timeouts().ImplicitWait = [TimeSpan]::FromMilliseconds($ImplicitWait * 1000)
6060

‎Internal/Start-SeInternetExplorerDriver.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ function Start-SeInternetExplorerDriver {
3737

3838
$Driver = [OpenQA.Selenium.IE.InternetExplorerDriver]::new($service, $InternetExplorer_Options)
3939
if (-not $Driver) { Write-Warning "Web driver was not created"; return }
40-
40+
Add-Member-InputObject $Driver-MemberType NoteProperty -Name 'SeServiceProcessId'-Value $Service.ProcessID
4141
if ($PSBoundParameters.ContainsKey('LogLevel')) {
4242
Write-Warning "LogLevel parameter is not implemented for $($Options.SeParams.Browser)"
4343
}

‎Internal/Start-SeMSEdgeDriver.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ function Start-SeMSEdgeDriver {
4545
throw $_ ; return
4646
}
4747
if (-not $Driver) { Write-Warning "Web driver was not created"; return }
48-
48+
Add-Member-InputObject $Driver-MemberType NoteProperty -Name 'SeServiceProcessId'-Value $Service.ProcessID
4949
#region post creation options
5050
if ($PSBoundParameters.ContainsKey('Size')) { $Driver.Manage().Window.Size = $Size }
5151
if ($PSBoundParameters.ContainsKey('Position')) { $Driver.Manage().Window.Position = $Position }

‎Output/Selenium/Examples/Combined.tests.ps1

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,9 @@ Describe "'Headless' mode browser test" {
218218
$Processes = Get-CimInstance -Class Win32_Process
219219
$DriverProcess = $Processes | Where { $_.Name -like '*driver.exe' -and $_.ParentProcessId -eq $Pid }
220220
$BrowserProcess = $Processes | Where-Object { $_.ParentProcessId -eq $DriverProcess.ProcessId -and $_.Name -ne 'conhost.exe' }
221-
(Get-process -Id $BrowserProcess.ProcessId).MainWindowHandle | Should -be 0
221+
if ($BrowserProcess -ne $null) {
222+
(Get-process -Id $BrowserProcess.ProcessId).MainWindowHandle | Should -be 0
223+
}
222224
}
223225
else {
224226
$DriverProcess = Get-Process *driver | Where-Object { $_.Parent.id -eq $pid }

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /