HsacExamples.SlimTests.BrowserTests.ScenarioTest


Website testing using scenario and BrowserTest



On this page we test retrieving record details using AllMusic.
It uses a Slim scenario[?] to define a parameterized script.
This is then invoked multiple times from a Decision table[?], once for each row.


The configuration of Selenium (i.e. which browser to use) and starting the browser session is done in the SuiteSetup[?]. Which allows this configuration to be shared between tests. Closing the browser is done in SuiteTearDown, which happens after all tests are completed.

First we go to the Discography page for Van Morrison.

script browser test org.openqa.selenium.TimeoutException: timeout: Timed out receiving message from renderer: -0.002 (Session info: chrome=80.0.3987.87) (Driver info: chromedriver=80.0.3987.16 (320f6526c1632ad4f205ebce69b99a062ed78647-refs/branch-heads/3987@{#185}),platform=Windows NT 10.0.10586 x86_64) (WARNING: The server did not provide any stacktrace information) Command duration or timeout: 0 milliseconds Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03' System info: host: 'localhost', ip: '127.0.0.1', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-1055-gcp', java.version: '1.8.0_242' Driver info: org.openqa.selenium.remote.RemoteWebDriver Capabilities {acceptInsecureCerts: false, acceptSslCerts: false, applicationCacheEnabled: false, browserConnectionEnabled: false, browserName: chrome, chrome: {chromedriverVersion: 80.0.3987.16 (320f6526c1632..., userDataDir: C:\Users\ADMINI~1\AppData\L...}, cssSelectorsEnabled: true, databaseEnabled: false, goog:chromeOptions: {debuggerAddress: localhost:49760}, handlesAlerts: true, hasMetadata: true, hasTouchScreen: false, javascriptEnabled: true, locationContextEnabled: true, mobileEmulationEnabled: false, nativeEvents: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: WINDOWS, platformName: WINDOWS, proxy: Proxy(), rotatable: false, setWindowRect: true, strictFileInteractability: false, takesHeapSnapshot: true, takesScreenshot: true, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unexpectedAlertBehaviour: ignore, unhandledPromptBehavior: ignore, version: 80.0.3987.87, webStorageEnabled: true, webdriver.remote.sessionid: 74ed0e4e6eb242638abd370a507...} Session ID: 74ed0e4e6eb242638abd370a507c4669
set continue if ready state interactive No Method setContinueIfReadyStateInteractive[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean true
open No Method open[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean https://www.allmusic.com
show No Method clickIfAvailable[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean click if available I accept
enter No Method enterAs[2] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean Van Morrison as Search
press No Method press[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean enter
click No Method click[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean Van Morrison
click No Method click[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean Discography

Then we check some entries.

scenario album details _ album, year?, label?
scroll to @{album}
$year= value of Year in row where Album is @{album}
$label= value of Label in row where Album is @{album}


album details
album year? label?
Astral Weeks 1968 Test not run Warner Bros. Test not run
scenario album details _ album, year?, label?
scroll to No Method scrollTo[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean Astral Weeks
$year= No Method valueOfInRowWhereIs[3] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean value of Year in row where Album is Astral Weeks
$label= No Method valueOfInRowWhereIs[3] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean value of Label in row where Album is Astral Weeks
Moondance 1970 Test not run Rhino / Warner Bros. Test not run
scenario album details _ album, year?, label?
scroll to No Method scrollTo[1] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean Moondance
$year= No Method valueOfInRowWhereIs[3] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean value of Year in row where Album is Moondance
$label= No Method valueOfInRowWhereIs[3] in class nl.hsac.fitnesse.fixture.slim.web.LayoutTest. Available methods: addValueTo(java.lang.Object, java.lang.String) -> void aroundSlimInvoke(fitnesse.slim.fixtureInteraction.FixtureInteraction, java.lang.reflect.Method, java.lang.Object[]) -> class java.lang.Object clearValue(java.lang.String) -> boolean clearValues() -> void copyValuesFrom(java.util.Map) -> void equals(java.lang.Object) -> boolean excludedTags() -> interface java.util.List expandPeriodsInNamesToNestedMaps(boolean) -> void expandsPeriodsInNamesToNestedMaps() -> boolean getClass() -> class java.lang.Class getMapHelper() -> class nl.hsac.fitnesse.fixture.util.MapHelper getOverallReportLink() -> class java.lang.String globalValue(java.lang.String) -> class java.lang.String hashCode() -> int includedTags() -> interface java.util.List layoutCheckMessages() -> class java.lang.Object notify() -> void notifyAll() -> void passedSpecCount() -> int repeatAtMostTimes() -> int repeatAtMostTimes(int) -> void repeatCount() -> int repeatInterval() -> long reset() -> void set(java.lang.String, java.lang.Object) -> void setBase64EncodedContentOfAsValueFor(java.lang.String, java.lang.String) -> void setBooleanValueFor(boolean, java.lang.String) -> void setContentOfAsValueFor(java.lang.String, java.lang.String) -> void setDoubleValueFor(double, java.lang.String) -> void setExcludedTags(java.util.List) -> void setGlobalValueTo(java.lang.String, java.lang.String) -> void setIncludedTags(java.util.List) -> void setIntValueFor(int, java.lang.String) -> void setLayoutCheckName(java.lang.String) -> void setMapHelper(nl.hsac.fitnesse.fixture.util.MapHelper) -> void setRepeatIntervalToMilliseconds(int) -> void setValueFor(java.lang.Object, java.lang.String) -> void setValuesFor(java.lang.String, java.lang.String) -> void specErrorCount() -> int specWarningCount() -> int timeSpentRepeating() -> long toString() -> class java.lang.String value(java.lang.String) -> class java.lang.Object verifiedSpecCount() -> int verifyLayoutUsing(java.lang.String) -> class java.lang.String wait() -> void wait(long) -> void wait(long, int) -> void waitMilliseconds(int) -> boolean waitSeconds(int) -> boolean value of Label in row where Album is Moondance

Writing the scenario like this can become a bit cumbersome when many parameters are needed. They are repeated in: the scenario's first row, the scenario rows where they are used and the table headers where the scenario is invoked.
Repeating the parameters in the first row of the scenario definition can be omitted using a custom extension to Slim. This is shown in TableTemplateTest.