sarutak commented on a change in pull request #29827:
URL: https://github.com/apache/spark/pull/29827#discussion_r494703217
##########
File path: .github/workflows/build_and_test.yml
##########
@@ -273,6 +273,44 @@ jobs:
cd docs
jekyll build
+ webui-tests-with-chrome:
+ name: WebUI tests with chrome
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout Spark repository
+ uses: actions/checkout@v2
+ - name: Cache Maven local repository
+ uses: actions/cache@v2
+ with:
+ path: ~/.m2/repository
+ key: webui-tests-with-chrome-maven-${{ hashFiles('**/pom.xml') }}
+ restore-keys: |
+ webui-tests-with-chrome-maven-
+ - name: Install Java 11
+ uses: actions/setup-java@v1
+ with:
+ java-version: 11
+ - name: Install Chrome and ChromeDriver
+ run: |
+ sudo apt update
+ sudo apt install google-chrome-stable
+ sudo apt install chromium-chromedriver
+ - name: Run WebUI tests with Maven
+ run: |
+ export MAVEN_OPTS="-Xmx2g -XX:ReservedCodeCacheSize=1g
-Dorg.slf4j.simpleLogger.defaultLogLevel=WARN"
+ export MAVEN_CLI_OPTS="--no-transfer-progress"
+ mkdir -p ~/.m2
+ ./build/mvn -Dspark.test.webdriver.chrome.driver=/usr/bin/chromedriver
\
+ -Dguava.version=25.0-jre -Djava.version=11
-Dtest.default.exclude.tags= -Dtest=none \
Review comment:
It can be one option but I'm wondering if we can make much better
coverage for UI tests somehow.
I often see that UI tests are done by "manual" especially when the change is
related to JavaScript.
`UISeleniumSuite`, `HistoryServerSuite` and other similar suites are enough
for the static part of the UI like but not enough for the dynamic part which
dynamically changes DOM or CSS by JavaScript.
Those existing suites use `HtmlUnitDriver` but its JavaScript support is not
enough.
So I think it's better if we can run test with real browsers in the CI.
`ChromeDriver` is similar to `HtmlUnitDriver` but it uses the real Chrome so
we can test JavaScript related stuffs.
`ChromeUISeleniumSute` and `ChromeUIHistoryServerSuite` use `ChromeDriver`
rather than `HtmlUnitDriver` and all tests in the suites are what need
JavaScript support so I think they cover new ground.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]