From fe1ab3e2ce34859b9bee974c8df0228a0e0280ca Mon Sep 17 00:00:00 2001 From: John Ferguson Smart Date: Thu, 12 Feb 2015 15:39:05 +1100 Subject: [PATCH] Added a page to the reports containing system and configuration properties and browser capabilities for a given test run. The browser used for each test is also recorded and displayed as an icon on the test report pages. You can also add your own custom fields into the build information page. You do this by adding properties with the "sysinfo" prefix to your serenity.properties file. These variables take Groovy expressions, which will be evaluated when the report is run, e.g: sysinfo.theAnswer = 6*7 sysinfo.homeDir = System.getenv("HOME") --- browser-firefox.properties | 4 + browser-htmlUnit.properties | 0 core/build.gradle | 2 + .../core/buildinfo/BuildInfoProvider.java | 72 ++++++ .../core/buildinfo/BuildProperties.java | 36 +++ .../buildinfo/DriverCapabilityRecord.java | 16 ++ .../PropertyBasedDriverCapabilityRecord.java | 90 +++++++ .../core/guice/ThucydidesModule.java | 3 + .../thucydides/core/model/TestOutcome.java | 20 ++ .../html/HtmlAggregateStoryReporter.java | 12 + .../core/steps/BaseStepListener.java | 8 +- .../webdriver/ThucydidesWebdriverManager.java | 7 +- .../core/webdriver/WebDriverFactory.java | 2 +- .../webdriver/WebdriverInstanceFactory.java | 44 +++- .../core/webdriver/WebdriverInstances.java | 2 +- .../core/webdriver/WebdriverManager.java | 2 + .../webdriver/appium/AppiumConfiguration.java | 7 +- ...ringAndRetrievingDriverCapabilities.groovy | 48 ++++ .../browser-chrome.properties | 4 + .../browser-firefox.properties | 4 + .../full-json/browser-chrome.properties | 4 + .../full-json/browser-firefox.properties | 4 + .../main/resources/freemarker/build-info.ftl | 243 ++++++++++++++++++ .../src/main/resources/freemarker/default.ftl | 3 + .../src/main/resources/freemarker/menu.ftl | 2 +- .../resources/report-resources/css/core.css | 8 + .../report-resources/images/driver-appium.png | Bin 0 -> 7928 bytes .../report-resources/images/driver-chrome.png | Bin 0 -> 17773 bytes .../images/driver-firefox.png | Bin 0 -> 22901 bytes .../images/driver-htmlunit.png | Bin 0 -> 5085 bytes .../images/driver-iexplorer.png | Bin 0 -> 20138 bytes .../report-resources/images/driver-opera.png | Bin 0 -> 11613 bytes .../images/driver-phantomjs.png | Bin 0 -> 13771 bytes .../images/driver-provided.png | Bin 0 -> 19327 bytes .../report-resources/images/driver-remote.png | Bin 0 -> 6455 bytes .../report-resources/images/driver-safari.png | Bin 0 -> 18023 bytes 36 files changed, 628 insertions(+), 19 deletions(-) create mode 100644 browser-firefox.properties create mode 100644 browser-htmlUnit.properties create mode 100644 core/src/main/java/net/serenitybdd/core/buildinfo/BuildInfoProvider.java create mode 100644 core/src/main/java/net/serenitybdd/core/buildinfo/BuildProperties.java create mode 100644 core/src/main/java/net/serenitybdd/core/buildinfo/DriverCapabilityRecord.java create mode 100644 core/src/main/java/net/serenitybdd/core/buildinfo/PropertyBasedDriverCapabilityRecord.java create mode 100644 core/src/test/groovy/net/serenitybdd/core/buildinfo/WhenStoringAndRetrievingDriverCapabilities.groovy create mode 100644 core/src/test/resources/test-outcomes/containing-features-and-stories/browser-chrome.properties create mode 100644 core/src/test/resources/test-outcomes/containing-features-and-stories/browser-firefox.properties create mode 100644 core/src/test/resources/test-outcomes/full-json/browser-chrome.properties create mode 100644 core/src/test/resources/test-outcomes/full-json/browser-firefox.properties create mode 100644 serenity-report-resources/src/main/resources/freemarker/build-info.ftl create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-appium.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-chrome.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-firefox.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-htmlunit.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-iexplorer.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-opera.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-phantomjs.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-provided.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-remote.png create mode 100644 serenity-report-resources/src/main/resources/report-resources/images/driver-safari.png diff --git a/browser-firefox.properties b/browser-firefox.properties new file mode 100644 index 0000000000..a36f0f45af --- /dev/null +++ b/browser-firefox.properties @@ -0,0 +1,4 @@ +# +#Thu Feb 12 13:47:25 EST 2015 +version= +browserName=firefox diff --git a/browser-htmlUnit.properties b/browser-htmlUnit.properties new file mode 100644 index 0000000000..e69de29bb2 diff --git a/core/build.gradle b/core/build.gradle index 0b3d837139..aa2b5f9bdc 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -49,6 +49,8 @@ dependencies { compile 'io.appium:java-client:2.1.0' + compile 'org.codehaus.groovy:groovy:2.4.0' + compile "net.sf.opencsv:opencsv:2.0" compile ("commons-beanutils:commons-beanutils-core:1.8.3") { exclude group: 'commons-logging', module: 'commons-logging' diff --git a/core/src/main/java/net/serenitybdd/core/buildinfo/BuildInfoProvider.java b/core/src/main/java/net/serenitybdd/core/buildinfo/BuildInfoProvider.java new file mode 100644 index 0000000000..c72c1c0c19 --- /dev/null +++ b/core/src/main/java/net/serenitybdd/core/buildinfo/BuildInfoProvider.java @@ -0,0 +1,72 @@ +package net.serenitybdd.core.buildinfo; + +import com.beust.jcommander.internal.Maps; +import groovy.lang.Binding; +import groovy.lang.GroovyShell; +import net.thucydides.core.ThucydidesSystemProperty; +import net.thucydides.core.guice.Injectors; +import net.thucydides.core.guice.ThucydidesModule; +import net.thucydides.core.util.EnvironmentVariables; + +import java.util.List; +import java.util.Map; +import java.util.Properties; + +import static ch.lambdaj.Lambda.filter; +import static org.hamcrest.CoreMatchers.startsWith; + +/** + * Created by john on 12/02/15. + */ +public class BuildInfoProvider { + private final EnvironmentVariables environmentVariables; + private final DriverCapabilityRecord driverCapabilityRecord; + + public BuildInfoProvider(EnvironmentVariables environmentVariables) { + this.environmentVariables = environmentVariables; + this.driverCapabilityRecord = Injectors.getInjector().getInstance(DriverCapabilityRecord.class); + } + + public BuildProperties getBuildProperties() { + Map generalProperties = Maps.newHashMap(); + generalProperties.put("Default Driver",ThucydidesSystemProperty.DRIVER.from(environmentVariables,"firefox")); + generalProperties.put("Operating System",System.getProperty("os.name") + " version " + System.getProperty("os.version")); + addRemoteDriverPropertiesTo(generalProperties); + addCustomPropertiesTo(generalProperties); + + List drivers = driverCapabilityRecord.getDrivers(); + Map driverPropertiesMap = driverCapabilityRecord.getDriverCapabilities(); + + return new BuildProperties(generalProperties, drivers, driverPropertiesMap); + } + + private void addRemoteDriverPropertiesTo(Map buildProperties) { + if (ThucydidesSystemProperty.WEBDRIVER_REMOTE_DRIVER.isDefinedIn(environmentVariables)) { + buildProperties.put("Remote driver", ThucydidesSystemProperty.WEBDRIVER_REMOTE_DRIVER.from(environmentVariables)); + buildProperties.put("Remote browser version", ThucydidesSystemProperty.WEBDRIVER_REMOTE_BROWSER_VERSION.from(environmentVariables)); + buildProperties.put("Remote OS", ThucydidesSystemProperty.WEBDRIVER_REMOTE_OS.from(environmentVariables)); + } + } + + private void addCustomPropertiesTo(Map buildProperties) { + + List sysInfoKeys = filter(startsWith("sysinfo."), environmentVariables.getKeys()); + for(String key : sysInfoKeys) { + String simplifiedKey = key.replace("sysinfo.", ""); + String expression = environmentVariables.getProperty(key); + + String value = evaluateGroovyExpression(expression); + + buildProperties.put(simplifiedKey, value); + } + + } + + private String evaluateGroovyExpression(String expression) { + Binding binding = new Binding(); + binding.setVariable("env", environmentVariables); + GroovyShell shell = new GroovyShell(binding); + return shell.evaluate(expression).toString(); + } + +} diff --git a/core/src/main/java/net/serenitybdd/core/buildinfo/BuildProperties.java b/core/src/main/java/net/serenitybdd/core/buildinfo/BuildProperties.java new file mode 100644 index 0000000000..398ecd68a9 --- /dev/null +++ b/core/src/main/java/net/serenitybdd/core/buildinfo/BuildProperties.java @@ -0,0 +1,36 @@ +package net.serenitybdd.core.buildinfo; + +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; + +import java.util.List; +import java.util.Map; +import java.util.Properties; + +/** + * Created by john on 12/02/15. + */ +public class BuildProperties { + + private final Map generalProperties; + private final List drivers; + private final Map driverProperties; + + public BuildProperties(Map generalProperties, List drivers, Map driverProperties) { + this.generalProperties = generalProperties; + this.drivers = drivers; + this.driverProperties = driverProperties; + } + + public Map getGeneralProperties() { + return ImmutableMap.copyOf(generalProperties); + } + + public List getDrivers() { + return ImmutableList.copyOf(drivers); + } + + public Map getDriverProperties() { + return ImmutableMap.copyOf(driverProperties); + } +} diff --git a/core/src/main/java/net/serenitybdd/core/buildinfo/DriverCapabilityRecord.java b/core/src/main/java/net/serenitybdd/core/buildinfo/DriverCapabilityRecord.java new file mode 100644 index 0000000000..4541564745 --- /dev/null +++ b/core/src/main/java/net/serenitybdd/core/buildinfo/DriverCapabilityRecord.java @@ -0,0 +1,16 @@ +package net.serenitybdd.core.buildinfo; + +import org.openqa.selenium.Capabilities; + +import java.util.List; +import java.util.Map; +import java.util.Properties; + +/** + * Created by john on 12/02/15. + */ +public interface DriverCapabilityRecord { + void registerCapabilities(String driver, Capabilities capabilities); + List getDrivers(); + Map getDriverCapabilities(); +} diff --git a/core/src/main/java/net/serenitybdd/core/buildinfo/PropertyBasedDriverCapabilityRecord.java b/core/src/main/java/net/serenitybdd/core/buildinfo/PropertyBasedDriverCapabilityRecord.java new file mode 100644 index 0000000000..025d4a73c2 --- /dev/null +++ b/core/src/main/java/net/serenitybdd/core/buildinfo/PropertyBasedDriverCapabilityRecord.java @@ -0,0 +1,90 @@ +package net.serenitybdd.core.buildinfo; + +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; +import com.google.inject.Inject; +import net.thucydides.core.webdriver.Configuration; +import org.openqa.selenium.Capabilities; + +import java.io.*; +import java.nio.file.DirectoryIteratorException; +import java.nio.file.DirectoryStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.List; +import java.util.Map; +import java.util.Properties; + +import static java.nio.file.Files.newInputStream; + +/** + * Created by john on 12/02/15. + */ +public class PropertyBasedDriverCapabilityRecord implements DriverCapabilityRecord { + + private Configuration configuration; + + @Inject + public PropertyBasedDriverCapabilityRecord(Configuration configuration) { + this.configuration = configuration; + } + + public void registerCapabilities(String driver, Capabilities capabilities) { + + Properties properties = new Properties(); + properties.setProperty("platform", capabilities.getPlatform().name()); + for (String capability : capabilities.asMap().keySet()) { + if (capabilities.getCapability(capability) instanceof String) { + properties.setProperty(capability, capabilities.getCapability(capability).toString()); + } + } + try { + File browserProperties = new File(configuration.getOutputDirectory(), "browser-" + driver.toLowerCase() + ".properties"); + try (Writer writer = new FileWriter(browserProperties)) { + properties.store(writer, ""); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Override + public List getDrivers() { + List drivers = Lists.newArrayList(); + try (DirectoryStream stream = driverCapabilityRecords()) { + for (Path file : stream) { + String driverName = driverNameFrom(file); + drivers.add(driverName); + } + } catch (IOException | DirectoryIteratorException x) { + System.err.println(x); + } + return drivers; + } + + private String driverNameFrom(Path file) { + return file.getFileName().toString().replace("browser-","").replace(".properties",""); + } + + private DirectoryStream driverCapabilityRecords() throws IOException { + Path outputDirectory = configuration.getOutputDirectory().toPath(); + return Files.newDirectoryStream(outputDirectory,"browser-*.properties"); + } + + @Override + public Map getDriverCapabilities() { + Map driverCapabilities = Maps.newHashMap(); + try (DirectoryStream stream = driverCapabilityRecords()) { + for (Path file : stream) { + String driverName = driverNameFrom(file); + Properties driverProperties = new Properties(); + driverProperties.load(newInputStream(file)); + driverCapabilities.put(driverName, driverProperties); + } + } catch (IOException | DirectoryIteratorException x) { + System.err.println(x); + } + return driverCapabilities; + } + +} diff --git a/core/src/main/java/net/thucydides/core/guice/ThucydidesModule.java b/core/src/main/java/net/thucydides/core/guice/ThucydidesModule.java index f013bb1324..bad9559baf 100644 --- a/core/src/main/java/net/thucydides/core/guice/ThucydidesModule.java +++ b/core/src/main/java/net/thucydides/core/guice/ThucydidesModule.java @@ -3,6 +3,8 @@ import com.google.inject.AbstractModule; import com.google.inject.Provides; import com.google.inject.Singleton; +import net.serenitybdd.core.buildinfo.DriverCapabilityRecord; +import net.serenitybdd.core.buildinfo.PropertyBasedDriverCapabilityRecord; import net.thucydides.core.annotations.locators.SmartElementProxyCreator; import net.thucydides.core.batches.BatchManager; import net.thucydides.core.batches.BatchManagerProvider; @@ -66,6 +68,7 @@ protected void configure() { bind(TestCount.class).to(AtomicTestCount.class).in(Singleton.class); bind(MarkupRenderer.class).annotatedWith(Asciidoc.class).to(AsciidocMarkupRenderer.class).in(Singleton.class); + bind(DriverCapabilityRecord.class).to(PropertyBasedDriverCapabilityRecord.class); } @Provides diff --git a/core/src/main/java/net/thucydides/core/model/TestOutcome.java b/core/src/main/java/net/thucydides/core/model/TestOutcome.java index 8c4bf8a34f..8fb8a02d80 100644 --- a/core/src/main/java/net/thucydides/core/model/TestOutcome.java +++ b/core/src/main/java/net/thucydides/core/model/TestOutcome.java @@ -143,6 +143,11 @@ public class TestOutcome { */ private String sessionId; + /** + * The driver used to run this test if it is a web test. + */ + private String driver; + /** * Keeps track of step groups. * If not empty, the top of the stack contains the step corresponding to the current step group - new steps should @@ -313,6 +318,7 @@ public TestOutcome copy() { this.annotatedResult, this.dataTable, this.qualifier, + this.driver, this.manual); } @@ -333,6 +339,7 @@ protected TestOutcome(final Long startTime, final TestResult annotatedResult, final DataTable dataTable, final Optional qualifier, + final String driver, final boolean manualTest) { this.startTime = startTime; this.duration = duration; @@ -355,6 +362,7 @@ protected TestOutcome(final Long startTime, this.dataTable = dataTable; this.issueTracking = Injectors.getInjector().getInstance(IssueTracking.class); this.linkGenerator = Injectors.getInjector().getInstance(LinkGenerator.class); + this.driver = driver; this.manual = manualTest; } @@ -399,6 +407,7 @@ public TestOutcome withQualifier(String qualifier) { this.annotatedResult, this.dataTable, Optional.fromNullable(qualifier), + this.driver, this.manual); } else { return this; @@ -423,6 +432,7 @@ public TestOutcome withIssues(List issues) { this.annotatedResult, this.dataTable, this.qualifier, + this.driver, this.manual); } @@ -444,6 +454,7 @@ public TestOutcome withTags(Set tags) { this.annotatedResult, this.dataTable, this.qualifier, + this.driver, this.manual); } @@ -466,6 +477,7 @@ public TestOutcome withMethodName(String methodName) { this.annotatedResult, this.dataTable, this.qualifier, + this.driver, this.manual); } else { return this; @@ -545,6 +557,14 @@ public void clearForcedResult() { annotatedResult = null; } + public void setDriver(String driver) { + this.driver = driver; + } + + public String getDriver() { + return driver; + } + public class TitleBuilder { private final boolean qualified; private final TestOutcome testOutcome; diff --git a/core/src/main/java/net/thucydides/core/reports/html/HtmlAggregateStoryReporter.java b/core/src/main/java/net/thucydides/core/reports/html/HtmlAggregateStoryReporter.java index e1fdd00277..a2bce54746 100644 --- a/core/src/main/java/net/thucydides/core/reports/html/HtmlAggregateStoryReporter.java +++ b/core/src/main/java/net/thucydides/core/reports/html/HtmlAggregateStoryReporter.java @@ -1,7 +1,9 @@ package net.thucydides.core.reports.html; import com.beust.jcommander.internal.Lists; +import com.beust.jcommander.internal.Maps; import net.serenitybdd.core.SerenitySystemProperties; +import net.serenitybdd.core.buildinfo.BuildInfoProvider; import net.thucydides.core.ThucydidesSystemProperty; import net.thucydides.core.guice.Injectors; import net.thucydides.core.issues.IssueTracking; @@ -21,6 +23,7 @@ import net.thucydides.core.requirements.reports.RequirmentsOutcomeFactory; import net.thucydides.core.util.EnvironmentVariables; import net.thucydides.core.util.Inflector; +import net.thucydides.core.util.LocalPreferences; import net.thucydides.core.util.VersionProvider; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -44,6 +47,7 @@ public class HtmlAggregateStoryReporter extends HtmlReporter implements UserStor private static final String HISTORY_TEMPLATE_PATH = "freemarker/history.ftl"; private static final String TEST_OUTCOME_TEMPLATE_PATH = "freemarker/home.ftl"; + private static final String BUILD_INFO_TEMPLATE_PATH = "freemarker/build-info.ftl"; private static final String RELEASES_TEMPLATE_PATH = "freemarker/releases.ftl"; private static final String RELEASE_TEMPLATE_PATH = "freemarker/release.ftl"; private static final String TAGTYPE_TEMPLATE_PATH = "freemarker/results-by-tagtype.ftl"; @@ -115,6 +119,12 @@ private void addFormattersToContext(final Map context) { context.put("reportOptions", new ReportOptions(getEnvironmentVariables())); } + private void addBuildInformationToContext(final Map context) { + BuildInfoProvider buildInfoProvider = new BuildInfoProvider(getEnvironmentVariables()); + context.put("build", buildInfoProvider.getBuildProperties()); + } + + public TestOutcomes generateReportsForTestResultsFrom(final File sourceDirectory) throws IOException { TestOutcomes allTestOutcomes = loadTestOutcomesFrom(sourceDirectory); copyScreenshotsFrom(sourceDirectory); @@ -247,6 +257,7 @@ private void generateAggregateReportFor(TestOutcomes testOutcomes) throws IOExce context.put("csvReport", "results.csv"); generateReportPage(context, TEST_OUTCOME_TEMPLATE_PATH, "index.html"); + generateReportPage(context, BUILD_INFO_TEMPLATE_PATH, "build-info.html"); generateCSVReportFor(testOutcomes, "results.csv"); logReportPathMessage(); } @@ -471,6 +482,7 @@ private Map buildContext(TestOutcomes testOutcomesForTagType, context.put("serenityVersionNumber", versionProvider.getVersion()); context.put("buildNumber", versionProvider.getBuildNumberText()); + addBuildInformationToContext(context); return context; } diff --git a/core/src/main/java/net/thucydides/core/steps/BaseStepListener.java b/core/src/main/java/net/thucydides/core/steps/BaseStepListener.java index f93ce7200c..80e32308e2 100644 --- a/core/src/main/java/net/thucydides/core/steps/BaseStepListener.java +++ b/core/src/main/java/net/thucydides/core/steps/BaseStepListener.java @@ -14,10 +14,7 @@ import net.serenitybdd.core.pages.Pages; import net.serenitybdd.core.pages.SystemClock; import net.thucydides.core.screenshots.*; -import net.thucydides.core.webdriver.Configuration; -import net.thucydides.core.webdriver.WebDriverFacade; -import net.thucydides.core.webdriver.WebdriverManager; -import net.thucydides.core.webdriver.WebdriverProxyFactory; +import net.thucydides.core.webdriver.*; import org.apache.commons.lang3.StringUtils; import org.openqa.selenium.WebDriver; import org.openqa.selenium.remote.SessionId; @@ -269,6 +266,9 @@ public void testSuiteFinished() { */ public void testStarted(final String testMethod) { TestOutcome newTestOutcome = TestOutcome.forTestInStory(testMethod, testSuite, testedStory); + if (driver != null) { + newTestOutcome.setDriver(webdriverManager.getCurrentDriverName()); + } testOutcomes.add(newTestOutcome); updateSessionIdIfKnown(); setAnnotatedResult(testMethod); diff --git a/core/src/main/java/net/thucydides/core/webdriver/ThucydidesWebdriverManager.java b/core/src/main/java/net/thucydides/core/webdriver/ThucydidesWebdriverManager.java index 73bab77de2..6f5b7c7cca 100644 --- a/core/src/main/java/net/thucydides/core/webdriver/ThucydidesWebdriverManager.java +++ b/core/src/main/java/net/thucydides/core/webdriver/ThucydidesWebdriverManager.java @@ -95,7 +95,12 @@ public void resetDriver() { } public WebDriver getWebdriver() { - return getThreadLocalWebDriver(configuration, webDriverFactory, inThisTestThread().getCurrentDriverName()); + WebDriver driver = getThreadLocalWebDriver(configuration, webDriverFactory, inThisTestThread().getCurrentDriverName()); + return driver; + } + + public String getCurrentDriverName() { + return inThisTestThread().getCurrentDriverName(); } public SessionId getSessionId() { diff --git a/core/src/main/java/net/thucydides/core/webdriver/WebDriverFactory.java b/core/src/main/java/net/thucydides/core/webdriver/WebDriverFactory.java index aa76932b25..2bbede37da 100644 --- a/core/src/main/java/net/thucydides/core/webdriver/WebDriverFactory.java +++ b/core/src/main/java/net/thucydides/core/webdriver/WebDriverFactory.java @@ -260,7 +260,7 @@ private WebDriver newDriverInstanceFrom(Class driverClass) return webdriverInstanceFactory.newInstanceOf(driverClass); } - private WebDriver newRemoteDriver() throws MalformedURLException { + private WebDriver newRemoteDriver() throws MalformedURLException { WebDriver driver = null; if (saucelabsUrlIsDefined()) { diff --git a/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstanceFactory.java b/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstanceFactory.java index 68a70894c8..758496c25a 100644 --- a/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstanceFactory.java +++ b/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstanceFactory.java @@ -2,6 +2,8 @@ import io.appium.java_client.android.AndroidDriver; import io.appium.java_client.ios.IOSDriver; +import net.serenitybdd.core.buildinfo.DriverCapabilityRecord; +import net.thucydides.core.guice.Injectors; import org.openqa.selenium.Capabilities; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; @@ -19,7 +21,10 @@ */ public class WebdriverInstanceFactory { + private DriverCapabilityRecord driverProperties; + public WebdriverInstanceFactory() { + this.driverProperties = Injectors.getInjector().getInstance(DriverCapabilityRecord.class); } public WebDriver newInstanceOf(final Class webdriverClass) throws IllegalAccessException, InstantiationException { @@ -27,40 +32,59 @@ public WebDriver newInstanceOf(final Class webdriverClass) } public WebDriver newRemoteDriver(URL remoteUrl, Capabilities capabilities) { - return new RemoteWebDriver(remoteUrl, capabilities); + RemoteWebDriver driver = new RemoteWebDriver(remoteUrl, capabilities); + driverProperties.registerCapabilities("remote", driver.getCapabilities()); + return driver; } public WebDriver newFirefoxDriver(Capabilities capabilities) { - return new FirefoxDriver(capabilities); + FirefoxDriver driver = new FirefoxDriver(capabilities); + driverProperties.registerCapabilities("firefox", driver.getCapabilities()); + return driver; } public WebDriver newChromeDriver(Capabilities capabilities) { - return new ChromeDriver(capabilities); + ChromeDriver driver = new ChromeDriver(capabilities); + driverProperties.registerCapabilities("chrome", driver.getCapabilities()); + return driver; } public WebDriver newAppiumDriver(URL hub, Capabilities capabilities, MobilePlatform platform) { switch (platform) { case ANDROID: - return new AndroidDriver(hub, capabilities); + AndroidDriver androidDriver = new AndroidDriver(hub, capabilities); + driverProperties.registerCapabilities("appium", androidDriver.getCapabilities()); + return androidDriver; case IOS: - return new IOSDriver(hub, capabilities); + IOSDriver iosDriver = new IOSDriver(hub, capabilities); + driverProperties.registerCapabilities("appium", iosDriver.getCapabilities()); + return iosDriver; } throw new UnsupportedDriverException(platform.name()); } public WebDriver newSafariDriver(Capabilities capabilities) { - return new SafariDriver(capabilities); + SafariDriver driver = new SafariDriver(capabilities); + driverProperties.registerCapabilities("chrome", driver.getCapabilities()); + return driver; } public WebDriver newInternetExplorerDriver(Capabilities capabilities) { - return new InternetExplorerDriver(capabilities); + InternetExplorerDriver driver = new InternetExplorerDriver(capabilities); + driverProperties.registerCapabilities("iexplorer", driver.getCapabilities()); + return driver; } public WebDriver newHtmlUnitDriver(Capabilities capabilities) { - return new HtmlUnitDriver(capabilities); + HtmlUnitDriver driver = new HtmlUnitDriver(capabilities); + driverProperties.registerCapabilities("htmlunit", driver.getCapabilities()); + return driver; } - public WebDriver newPhantomDriver(Capabilities caps) { - return new PhantomJSDriver(caps); + public WebDriver newPhantomDriver(Capabilities capabilities) { + PhantomJSDriver driver = new PhantomJSDriver(capabilities); + driverProperties.registerCapabilities("phantomjs", driver.getCapabilities()); + return driver; } + } \ No newline at end of file diff --git a/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstances.java b/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstances.java index a872515003..a6d4a3c65c 100644 --- a/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstances.java +++ b/core/src/main/java/net/thucydides/core/webdriver/WebdriverInstances.java @@ -15,7 +15,7 @@ public class WebdriverInstances { private String currentDriver; public WebdriverInstances() { - this.driverMap = new HashMap(); + this.driverMap = new HashMap<>(); } public WebDriver getCurrentDriver() { diff --git a/core/src/main/java/net/thucydides/core/webdriver/WebdriverManager.java b/core/src/main/java/net/thucydides/core/webdriver/WebdriverManager.java index 2fed38e9f6..13d12ee837 100644 --- a/core/src/main/java/net/thucydides/core/webdriver/WebdriverManager.java +++ b/core/src/main/java/net/thucydides/core/webdriver/WebdriverManager.java @@ -17,6 +17,8 @@ public interface WebdriverManager { WebDriver getWebdriver(final String driver); + String getCurrentDriverName(); + SessionId getSessionId(); void closeDriver(); diff --git a/core/src/main/java/net/thucydides/core/webdriver/appium/AppiumConfiguration.java b/core/src/main/java/net/thucydides/core/webdriver/appium/AppiumConfiguration.java index bfea467190..1d418cf42a 100644 --- a/core/src/main/java/net/thucydides/core/webdriver/appium/AppiumConfiguration.java +++ b/core/src/main/java/net/thucydides/core/webdriver/appium/AppiumConfiguration.java @@ -53,13 +53,18 @@ public URL getUrl() { public DesiredCapabilities getCapabilities() { DesiredCapabilities capabilities = new DesiredCapabilities(); - Properties appiumProperties = appiumPropertiesFrom(environmentVariables); + Properties appiumProperties = getProperties(); for (Object key : appiumProperties.keySet()) { capabilities.setCapability(key.toString(), appiumProperties.getProperty(key.toString())); + capabilities.asMap(); } return capabilities; } + public Properties getProperties() { + return appiumPropertiesFrom(environmentVariables); + } + private Properties appiumPropertiesFrom(EnvironmentVariables environmentVariables) { Properties appiumProperties = new Properties(); List appiumKeys = filter(startsWith("appium."), environmentVariables.getKeys()); diff --git a/core/src/test/groovy/net/serenitybdd/core/buildinfo/WhenStoringAndRetrievingDriverCapabilities.groovy b/core/src/test/groovy/net/serenitybdd/core/buildinfo/WhenStoringAndRetrievingDriverCapabilities.groovy new file mode 100644 index 0000000000..598311c1f9 --- /dev/null +++ b/core/src/test/groovy/net/serenitybdd/core/buildinfo/WhenStoringAndRetrievingDriverCapabilities.groovy @@ -0,0 +1,48 @@ +package net.serenitybdd.core.buildinfo + +import com.github.goldin.spock.extensions.tempdir.TempDir +import net.thucydides.core.webdriver.Configuration +import org.openqa.selenium.remote.DesiredCapabilities +import spock.lang.Specification + +/** + * Created by john on 12/02/15. + */ +class WhenStoringAndRetrievingDriverCapabilities extends Specification { + + @TempDir File outputDirectory + + + def configuration = Mock(Configuration) + + def setup() { + configuration.getOutputDirectory() >> outputDirectory + } + + def "should store driver capabilities as property files"() { + given: + def driverCapabilityRecord = new PropertyBasedDriverCapabilityRecord(configuration) + when: + driverCapabilityRecord.registerCapabilities("htmlUnit", DesiredCapabilities.htmlUnit()); + driverCapabilityRecord.registerCapabilities("firefox", DesiredCapabilities.firefox()); + then: + outputDirectory.list() == ["browser-firefox.properties","browser-htmlunit.properties"] + } + + def "should read driver capabilities from stored properties files"() { + given: + def driverCapabilityRecord = new PropertyBasedDriverCapabilityRecord(configuration) + and: + driverCapabilityRecord.registerCapabilities("htmlUnit", DesiredCapabilities.htmlUnit()); + driverCapabilityRecord.registerCapabilities("firefox", DesiredCapabilities.firefox()); + when: + def drivers = driverCapabilityRecord.drivers + def capabilities = driverCapabilityRecord.driverCapabilities + then: + drivers == ["firefox","htmlunit"] + and: + capabilities["firefox"].getProperty("browserName") == "firefox" + capabilities["htmlunit"].getProperty("browserName") == "htmlunit" + + } +} diff --git a/core/src/test/resources/test-outcomes/containing-features-and-stories/browser-chrome.properties b/core/src/test/resources/test-outcomes/containing-features-and-stories/browser-chrome.properties new file mode 100644 index 0000000000..92f8592ea5 --- /dev/null +++ b/core/src/test/resources/test-outcomes/containing-features-and-stories/browser-chrome.properties @@ -0,0 +1,4 @@ +# +#Thu Feb 12 14:05:13 EST 2015 +version= +browserName=chrome diff --git a/core/src/test/resources/test-outcomes/containing-features-and-stories/browser-firefox.properties b/core/src/test/resources/test-outcomes/containing-features-and-stories/browser-firefox.properties new file mode 100644 index 0000000000..f28f7fe0b5 --- /dev/null +++ b/core/src/test/resources/test-outcomes/containing-features-and-stories/browser-firefox.properties @@ -0,0 +1,4 @@ +# +#Thu Feb 12 14:04:26 EST 2015 +version= +browserName=firefox diff --git a/core/src/test/resources/test-outcomes/full-json/browser-chrome.properties b/core/src/test/resources/test-outcomes/full-json/browser-chrome.properties new file mode 100644 index 0000000000..92f8592ea5 --- /dev/null +++ b/core/src/test/resources/test-outcomes/full-json/browser-chrome.properties @@ -0,0 +1,4 @@ +# +#Thu Feb 12 14:05:13 EST 2015 +version= +browserName=chrome diff --git a/core/src/test/resources/test-outcomes/full-json/browser-firefox.properties b/core/src/test/resources/test-outcomes/full-json/browser-firefox.properties new file mode 100644 index 0000000000..f28f7fe0b5 --- /dev/null +++ b/core/src/test/resources/test-outcomes/full-json/browser-firefox.properties @@ -0,0 +1,4 @@ +# +#Thu Feb 12 14:04:26 EST 2015 +version= +browserName=firefox diff --git a/serenity-report-resources/src/main/resources/freemarker/build-info.ftl b/serenity-report-resources/src/main/resources/freemarker/build-info.ftl new file mode 100644 index 0000000000..6ed1872398 --- /dev/null +++ b/serenity-report-resources/src/main/resources/freemarker/build-info.ftl @@ -0,0 +1,243 @@ + + + + + + + + + Serenity Reports + + + +<#include "libraries/common.ftl"> +<#include "libraries/jquery-ui.ftl"> +<#include "libraries/datatables.ftl"> +<#assign pie = true> +<#include "libraries/jqplot.ftl"> + +<#assign successfulManualTests = (testOutcomes.count("manual").withResult("SUCCESS") > 0)> +<#assign pendingManualTests = (testOutcomes.count("manual").withResult("PENDING") > 0)> +<#assign ignoredManualTests = (testOutcomes.count("manual").withResult("IGNORED") > 0)> +<#assign failingManualTests = (testOutcomes.count("manual").withResult("FAILURE") > 0)> + + + + + +
+
+ +
+ ${reportOptions.projectName} +
+
+
+ +
+ +
+ <#--
--> +
+ Home +
+
+
+ +
+ + +<#include "menu.ftl"> +<@main_menu selected="home" /> +
+
+
+
+
+

Build Information

+ + <#assign keys = build.generalProperties?keys> + + <#list keys as key> + + + + + +
${key}${build.generalProperties[key]}
+ + <#assign drivers = build.drivers> + <#list drivers as driver> +

Driver capabilities: ${driver}

+ <#assign driverCapabilities = build.driverProperties[driver]> + <#assign capabilityKeys = driverCapabilities?keys> + + <#list capabilityKeys as capability> + + + + +
${capability}${driverCapabilities[capability]}
+ + + +
+ <#--- Test Results end --> +
+
+
+ +
+
+ Serenity version ${serenityVersionNumber} +
+ + + diff --git a/serenity-report-resources/src/main/resources/freemarker/default.ftl b/serenity-report-resources/src/main/resources/freemarker/default.ftl index d80e814373..3d4fd465c5 100644 --- a/serenity-report-resources/src/main/resources/freemarker/default.ftl +++ b/serenity-report-resources/src/main/resources/freemarker/default.ftl @@ -72,6 +72,9 @@ ${testOutcome.formattedIssues} + <#if (testOutcome.driver)??> + ${testOutcome.driver} + diff --git a/serenity-report-resources/src/main/resources/freemarker/menu.ftl b/serenity-report-resources/src/main/resources/freemarker/menu.ftl index da89af95fb..6e7c808b3a 100644 --- a/serenity-report-resources/src/main/resources/freemarker/menu.ftl +++ b/serenity-report-resources/src/main/resources/freemarker/menu.ftl @@ -40,7 +40,7 @@ - Report generated ${timestamp} + Report generated ${timestamp}
\ No newline at end of file diff --git a/serenity-report-resources/src/main/resources/report-resources/css/core.css b/serenity-report-resources/src/main/resources/report-resources/css/core.css index c185f0b5cf..5a13643fc1 100644 --- a/serenity-report-resources/src/main/resources/report-resources/css/core.css +++ b/serenity-report-resources/src/main/resources/report-resources/css/core.css @@ -1416,3 +1416,11 @@ ul.second-level-requirements { color: #0d78ae; border: none; } + +.build-info table { + table-layout: fixed; +} + +.build-info table td,th { + overflow: hidden; +} \ No newline at end of file diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-appium.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-appium.png new file mode 100644 index 0000000000000000000000000000000000000000..cddbc84086329eb5ed26e5baffb7ce842551efbb GIT binary patch literal 7928 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 Eg3*Mc3jhEB literal 0 HcmV?d00001 diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-firefox.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-firefox.png new file mode 100644 index 0000000000000000000000000000000000000000..fcfca19f6edc3e87fb1bccdeb6b941e1267b2946 GIT binary patch literal 22901 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 literal 0 HcmV?d00001 diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-htmlunit.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-htmlunit.png new file mode 100644 index 0000000000000000000000000000000000000000..307e591e59d6e5a6b73ccdfd979b1f171c970139 GIT binary patch literal 5085 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 literal 0 HcmV?d00001 diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-iexplorer.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-iexplorer.png new file mode 100644 index 0000000000000000000000000000000000000000..9d41dea8435428fb8747a80aff0c3bbf2daaac39 GIT binary patch literal 20138 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

Y~Na&3=5Rbzs(3=0f$lmeWzY}f0B5_h@ zIE5EFckcKLS_K5s4oFwZzG68bF55tV@QKfzdG;vft`%pIAb1}|Q5?rEZ1_Mum&wV` z-`&0YixI&pS_zh2xl9Ppce*cVV=RT#f&ojgrnwY?UVr;*{>4APm<-8_vB?bF&g-w= z|Dm5}V79e$YTGWUOz>2uen`XFfGI&4(~2O{yp}cOu`eI|*2BG}l?bGw;=MIS3GMEN z-w4t(<=1}yKR125C#V6lt@%T}vrZ!gXuRCDy02#4ehiRWN*OUBS9j9M4Zr$pv-_{# z6m6HVi}Cso{&e#n{gU<<(!rVKC`6noVy8?n4bG-b!azHKM~5E0s1ci;md|)B_B01A zDy6>1LJv+6x zJ@h**c17UOef@9#-pxPy{!Np1NreV}dFits`VhWxSK$ZG47F8@lG;q!UJN0OhJza8 zDvI1dk!TPVOK2F(STq?ap%5H4Q#bsZf4k#{{+lH=T6jAw>I@LWngDeYyb7s`53VT9 zjz-I;R7hJx-rx+b@$7MW;;Ee0X!`84MKc`?%6!;Q8#XewbOAua zHi|I0PHeQ0HmW=xSrwrB}wpxMX=Q9T=Rw>{Nq1p%wJUIuL@gGMsxC^hrapCzc@T~u-{p79wq`MHaOKHtdmFf zI@X>{%0Qhl6(NgF=_C@Z8?zGZ)gSt`-T&|dPZ@4pab@dx*Q*r4<*rnw*jNTh2=)5( zV&08wc2^qZ-+Jh=|MDk`_kMheVFamxi5k7aE%~Ay&=->{r!?8>8sbrP=$g!i*w}bl z^FZ9+dFwkr{3m-~bMqx~wKY{s&wTwW_rCWBcO>;liW9@ml1Emjh+0Lz9aZn>Qed?E zj|nlMW|76*2w)Yb*poFEilVps)i?d~-)isPF4H^WH0H>9KvbBR6dFRZ(7tTvj{Mm1 z2S5C$Xa44|cH3byDVO_s-2le+11*+r$)iw|N~NM+u{$C%QQ=(xVuE2asugA8eUY5r zzW=sA`jhMKc*~^|wPi(O2mj(P9{HF5y>B0~gj}#B5Jf9$ieJyESi83&L=0>3`fUDa zex@N@BjFo_dDCQ|}BoGO%l&(`fLf9eL6CvSR$8ygPYF=ioSyb*gx8%_icrcS%QUjD# zdy9aeFoYyZRi*T064&Mq+!Ath2nIDL@=O) zP-D#qDIsB4z*UHuj!%$dW-U3^yqvU{sOBR!&(3;v#57NEs=^Filszky}|nh3ZgrpxPDmfkIK!$v1ee2s;~Q*0!kV zI0*%#8>6GxW239H%TM)A?*E;CfAa@_hO0MxTnb()x&g>AKltg-KKVPpV0veBkwRc2 zJ5cTU5I365;p7v90%uT>kdvw*u>`{=GIoY1*FBX&q9`OdMFGl*gd|N0+y+;XYT^*VS7=^ml?^uc?7|M!>v;=f$K>xPwur+U&i z)4Pu^pO`h1Girgx8_MU~4LlT;)nyr2iU`bXr6QW$YqGO$Wl4aUnb^k3 z%3w-|(>C@$`OCNb`mbg4m-=e*_3@I^4M4nm?#o|({NMed{pLM2E=%pjW_m>@?|K@Y zS=aqeVPhs6|ad{D!NUJ`Pxpa>6yW?v)*6v?tgOg z2Y+Vnjyq`UjRJ@sAhA{<>O})cVF{5* zEGJz!2~IRH8DkS73cm2cZ8Otey{I?@G4KqpPM~d#5;irmH7!vVqKF7-j3c+d@0Nf1 zbCwjN@;~@1L-z=wD30EL|C1m4*up12GBsRoq?ut9!wv(+fZ|lF4t$Y2ln$>l zzD8U3K zV6-%&uwj-c{0GuhVKfxN634V5l>aPX0OeyU-jgji^FFoXmxN4sE|U@0~z0qfA{3syvj_3i03*R&2?yY04HcHi=v z=4F>BwO2rCRN=db?iaundC}{Z?RMGexqO(PS&$Ic{Ob`^)imoiiKAK;)$4JynKWBT zqaMfW?InE$@!d=J|1a^9JNDnh`S>2)FDtk#x9p9a-^2PS%aS{tj@!C-tbPwwD9dtr bdHMeXbSet$A^|Ql00000NkvXXu0mjf;SaLg literal 0 HcmV?d00001 diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-phantomjs.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-phantomjs.png new file mode 100644 index 0000000000000000000000000000000000000000..295511c4e6651d2afea4998ac91f72f10d7ac676 GIT binary patch literal 13771 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 N($O@~C`Q^w{s+|0zzYBX literal 0 HcmV?d00001 diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-provided.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-provided.png new file mode 100644 index 0000000000000000000000000000000000000000..7e473d27f89588e77e292e1144545f2b0499f5a5 GIT binary patch literal 19327 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 GM*I&?ke0*% literal 0 HcmV?d00001 diff --git a/serenity-report-resources/src/main/resources/report-resources/images/driver-safari.png b/serenity-report-resources/src/main/resources/report-resources/images/driver-safari.png new file mode 100644 index 0000000000000000000000000000000000000000..abbf228597ba86449abaf79f6eb654c11274f4f4 GIT binary patch literal 18023 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