google/ioweb2016

wct fails locally on router suite

Closed this issue · 6 comments

I cloned this to learn more about Polymer testing, but it is failing with below. Any ideas why it is failing? This is all on a local Linux machine....no cloud. I use Chrome 53, not chromium.

four@localhost ~/github/ioweb2016 $ wct
Installing and starting Selenium server for local browsers
Selenium server running on port 48365
Web server running on port 2000 and serving from /home/four/github/ioweb2016
chrome 53                Beginning tests via http://localhost:2000/components/ioweb2016/generated-index.html?cli_browser_id=0
chrome 53                â app/scripts/helper/router_test.html » IOWA.Router_ » navigate runs page transition

  Cannot set property 'selectedPage' of undefined
    <unknown> at       Router.navigate at router.js:268:0
    <unknown> at   Context.<anonymous> at router_test.html:78:0

chrome 53                â app/scripts/helper/router_test.html » IOWA.Router_ » navigate updates router state

  Cannot set property 'selectedPage' of undefined
    <unknown> at       Router.navigate at router.js:268:0
    <unknown> at   Context.<anonymous> at router_test.html:107:0

chrome 53                â app/scripts/helper/router_test.html » IOWA.Router_ » runSubpageTransition

  Cannot read property 'selectedPage' of undefined
    <unknown> at                     <unknown> at router.js:229:0
    <unknown> at                   Object.then at router_test.html:131:0
    <unknown> at   Router.runSubpageTransition at router.js:223:0
    <unknown> at               Router.navigate at router.js:271:0
    <unknown> at           Context.<anonymous> at router_test.html:145:0


chrome 53 (5/0/3)                     

pic1

Note: I am not running the back end. But that shouldn't matter, correct? There should be mock data making the test suite independent?

We didn't use wct test this year. That's left over from https://github.com/GoogleChrome/ioweb2015

Oh, ok.... thanks! Did you replace wct with some other testing? Or did you decide to skip testing entirely for 2016?

We had backend tests but not frontend tests.

If I may ask, please, for my own learning. Since testing theories are constantly evolving:

What was the deciding factor in not testing the front end?
Was it because ioweb 2016 is composed of pre-written Polymer elements that have already been tested? But that would leave the custom elements instance methods untested.
For E2E, I guess you could say that the router suite wct covered most of that?

Mainly because of time :)

The project is composed of a few 20% engineers that help out over the course of a few months. The site also goes through 5-6 phases (launches) that alter it quite a big during that time. It's a challenge to dev + write new tests + iterate for all those different short-lived pieces. The engineers are also working on session content, codelabs and other stuff for Google I/O in addition to working on the site.

👍 This is valuable information, thank you so much!