[QA/dashboard] Frontend tests on Jenkins

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
I just wanted to raise a discussion about testing the dashboard
frontend.

First of all, I'm happy to say that we have gathered over 100 frontend
unit tests by now.

Each of us makes sure, that all unit tests are passing (of course ;) ),
so we run 'npm start' which will run all tests on 'Chrome'.

I'm telling you this, because you need to know that we make sure all
tests are passing in a modern browser that can be used with a UI or
with out it (headless).

As time goes by we create a PR against ceph and Jenkins will try to run
our unit tests, but this time, PhantomJS has to be used (...)

PhantomJS doesn't have a UI, doesn't support what modern browsers can
do, but we can install it through npm.

We increasingly write unit tests and we develop on typescript that will
be compiled to Javascript that is understandable on any modern browser.
Modern browsers have implemented built in functionality to understand
modern ES6 concepts like 'Proxy', but PhantomJS isn't modern.

See this table for more information
https://kangax.github.io/compat-table/es6/

The thing is, we will hit the limitations of PhantomJS pretty soon, as
a matter of fact, I already hit it with the use of 'Proxy'.
https://github.com/ceph/ceph/pull/20822

As you can see in my work, I have to ignore a lot of lines and I have
to mock out the usage from the code. This will of course increase over
time.

I would love to see a change here, because we want to have the fronted
tested through end to end (E2E) tests as well.

Both unit and E2E tests could be run with chrome headless, but
therefore chromium or google-chrome are needed to be installed on the
Jenkins instance.

Can someone give me a hint how this installation could be achieved?
As mocking built ins because of a missing installation, wastes a lot of
resources.

Any help is appreciated
-- 
Stephan Müller

SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton,
HRB 21284 (AG Nürnberg)

--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux