Description
Currently the Portlet 3.0 TCK pom.xml descriptor has a hard-coded path to the Chrome binary:
pom.xml
<test.browser.webDriver>c:/ntutil/chromedriver.exe</test.browser.webDriver>
This task will enable the Portlet 3.0 TCK to use an alternate Firefox/Chrome browser binary and assume Chrome can be run headless (a feature introduced for Linux/Mac in Chrome 59, Windows support in Chrome 60). When finished, testing the TCK can be accomplished with commands similar to the following:
# Headless Chrome with alternate Chrome driver and Chrome binary path cd portlet-tck_3.0/ -Dtest.browser=chrome \ -Dtest.browser.webDriver=/Users/foo/bin/chromedriver \ -Dtest.browser.binary=/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome
# Non-headless (full UI) Chrome with alternate Chrome driver and Chrome binary path cd portlet-tck_3.0/ mvn test -Prun-tck \ -Dtest.browser=chrome \ -Dtest.browser.webDriver=/usr/local/bin/chromedriver \ -Dtest.browser.binary=/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \ -Dtest.browser.headless=false
# Non-headless (full UI) Firefox with alternate Firefox binary path cd portlet-tck_3.0/ mvn test -Prun-tck \ -Dtest.browser=firefox \ -Dtest.browser.binary=/Applications/Firefox_46.0.1.app/Contents/MacOS/firefox # NOTE: this version of webdriver only works up to firefox version 46.0.1 # We may need to switch to use the newer gecko driver for newer versions of firefox
# headless phantomjs with alternate binary path specified mvn test -Prun-tck \ -Dtest.browser=phantomjs \ -Dtest.browser.binary=/usr/local/bin/phantomjs
# headless htmlunit mvn test -Prun-tck \ -Dtest.browser=htmlUnit