@@ -24,9 +24,39 @@ async function setup(): Promise<WebDriver> {
2424 const options = new Chrome . Options ( ) ;
2525 options . addArguments ( "--load-extension=" + Path . join ( __dirname , "../dist/" ) ) ;
2626 options . addArguments ( "--mute-audio" ) ;
27- options . addArguments ( "--disable-features=PreloadMediaEngagementData, MediaEngagementBypassAutoplayPolicies" )
27+ options . addArguments ( "--disable-features=PreloadMediaEngagementData, MediaEngagementBypassAutoplayPolicies" ) ;
28+ options . windowSize ( {
29+ width : 1280 ,
30+ height : 720
31+ } ) ;
32+
33+ let driver ;
34+ if ( process . env . BROWSERSTACK_BUILD_NAME ) {
35+ const capabilities = {
36+ 'os' : 'windows' ,
37+ 'os_version' : '10' ,
38+ 'browserName' : 'chrome' ,
39+ 'browser_version' : 'latest' ,
40+ 'browserstack.local' : 'true' ,
41+ 'build' : process . env . BROWSERSTACK_BUILD_NAME ,
42+ 'project' : process . env . BROWSERSTACK_PROJECT_NAME ,
43+ 'browserstack.localIdentifier' : process . env . BROWSERSTACK_LOCAL_IDENTIFIER ,
44+ 'browserstack.user' : process . env . BROWSERSTACK_USERNAME ,
45+ 'browserstack.key' : process . env . BROWSERSTACK_ACCESS_KEY
46+ }
47+
48+ driver = await new Builder ( )
49+ . usingServer ( 'http://hub-cloud.browserstack.com/wd/hub' )
50+ . setChromeOptions ( options )
51+ . withCapabilities ( capabilities )
52+ . build ( ) ;
53+ } else {
54+ driver = await new Builder ( )
55+ . forBrowser ( "chrome" )
56+ . setChromeOptions ( options )
57+ . build ( ) ;
58+ }
2859
29- const driver = await new Builder ( ) . forBrowser ( "chrome" ) . setChromeOptions ( options ) . build ( ) ;
3060 driver . manage ( ) . setTimeouts ( {
3161 implicit : 5000
3262 } ) ;
0 commit comments