@Test public void shouldThrowAnExceptionWhenTheURLIsMalformed() throws Exception { try { config.setSeleniumGridUrl("BadURL"); config.createBrowser(); fail(); } catch (Exception unit) { assertThat(unit, instanceOf(RuntimeException.class)); assertThat(unit.getMessage(), is("java.net.MalformedURLException: no protocol: BadURL")); } }
@Test public void shouldCreateRemoteDriver() throws Exception { config.setSeleniumGridUrl("http://my.awesomegrid.com"); RemoteWebDriver mockRemoteWebDriver = Mockito.mock(RemoteWebDriver.class); whenNew(RemoteWebDriver.class) .withParameterTypes(URL.class, Capabilities.class) .withArguments(isA(URL.class), isA(Capabilities.class)) .thenReturn(mockRemoteWebDriver); final RemoteWebDriver browser = config.createBrowser(); assertThat(browser, is(mockRemoteWebDriver)); verifyNew(RemoteWebDriver.class, times(1)) .withArguments(isA(URL.class), isA(Capabilities.class)); }
@Test public void shouldHaveProxyInCapability() { final Capabilities capabilities = config.createCapabilities(); assertThat(capabilities.getCapability(CapabilityType.PROXY), is(notNullValue())); assertThat(capabilities.getCapability(ChromeOptions.CAPABILITY), is(notNullValue())); assertThat(capabilities.isJavascriptEnabled(), is(true)); }
@Before public void createConfig() { config = new RemoteDriverConfig(); variables = new JMeterVariables(); config.setCapability(RemoteCapability.CHROME); JMeterContextService.getContext().setVariables(variables); }
@Test public void shouldSetTheCapability() throws Exception { assertThat(config.getCapability(), is(RemoteCapability.CHROME)); config.setCapability(RemoteCapability.FIREFOX); assertThat(config.getCapability(), is(RemoteCapability.FIREFOX)); config.setCapability(RemoteCapability.INTERNET_EXPLORER); assertThat(config.getCapability(), is(RemoteCapability.INTERNET_EXPLORER)); config.setCapability(RemoteCapability.PHANTOMJS); assertThat(config.getCapability(), is(RemoteCapability.PHANTOMJS)); }
@After public void resetConfig() { config.clearThreadBrowsers(); JMeterContextService.getContext().setVariables(null); }