Don't think about Maven for now. Once you build your fist test in AS3 I will probably add there Maven too. In that case Maven is just building jar and you can execute those jar. Executing them probably is happen through the junit - maybe we could use flexunit ? etc.
Here is how I understand above example: 1) Maven is building jar and helping to reach our examples probably by dependency: RoyaleStore 2) jar has been run along with tests which are using gecko driver [1] 3) Test is executed [3] - If we let's say can write tests in node.js and use selenium functions - that's ok cause we can wrap up all node things in AS3. [1] https://github.com/mozilla/geckodriver [2] https://github.com/apache/royale-asjs/blob/develop/examples/examples-integrationtests/src/test/java/org/apache/royale/examples/royalestore/RoyaleStoreIT.java Piotr 2017-11-03 13:36 GMT+01:00 Harbs <[email protected]>: > I don’t understand how they work at all. There seems to be some Maven > magic going on, and I was having trouble figuring it out that last time I > looked. > > > On Nov 3, 2017, at 2:23 PM, Piotr Zarzycki <[email protected]> > wrote: > > > > Harbs, > > > > I haven't used them personally, but I understand how they are working. I > > agree that we should put our effort to have those tests written in AS3 > > instead of Java. We don't have to many active people among the committer > > who know Java. Those example which we have can be just starting point - > Can > > it be rewritten to AS3 ? > > > > Piotr > > > > 2017-11-03 13:04 GMT+01:00 Harbs <[email protected] <mailto: > [email protected]>>: > > > >> Hi Piotr, > >> > >> Do you understand how the Selenium tests work and how to write them? > >> > >> It looks like the tests are written in Java. IMO, ideally, the tests > >> should be written in ActionScript. > >> > >> Selenium has a Node.js driver and it makes sense that we should be > taking > >> advantage of that. > >> > >> In fact, we can probably have one framework which does non-UI unit > testing > >> using Node and UI testing using the node and selenium. > >> > >> Harbs > >> > >>> On Nov 3, 2017, at 1:31 PM, Piotr Zarzycki <[email protected]> > >> wrote: > >>> > >>> Hi Harbs, > >>> > >>> Fully agree what you are saying! Sometimes I have found myself > difficult > >>> without deeper knowledge how something is working when I check the > code. > >>> One thing which I can mention is that we already have Selenium > >> integrated. > >>> If you are going to spend some time on that I would start from the > point > >>> [1] and see whether we can use it. > >>> > >>> As for your coming to US - Wish I could be there! > >>> > >>> [1] > >>> https://github.com/apache/royale-asjs/tree/develop/examples/examples- > >> integrationtests <https://github.com/apache/royale-asjs/tree/develop/ < > https://github.com/apache/royale-asjs/tree/develop/> > >> examples/examples-integrationtests> > >>> > >>> Piotr > >>> > >>> > >>> 2017-11-03 12:19 GMT+01:00 Harbs <[email protected] <mailto: > [email protected]> <mailto: > >> [email protected] <mailto:[email protected]>>>: > >>> > >>>> One topic which keeps coming up is better test coverage for Royale. > >>>> > >>>> I think this is becoming a critical issue for a few reasons: > >>>> 1. As we get close to version 1.0 it’s necessary to have good test > >>>> coverage for confidence of quality and confidence that we don’t > >> introduce > >>>> recessive bugs. > >>>> 2. It’s really hard to accept Github pull requests without examining > the > >>>> code VERY well that it does not introduce recessive bugs. CI which > runs > >>>> automated tests could give a preliminary test on pull requests to > ensure > >>>> that they don’t break anything. If the pull requests do break > >> something, it > >>>> allows the requester to fix the problem with confidence without taking > >>>> others’ time. > >>>> > >>>> I think we need to break up testing into pieces and figure out a > >> strategy > >>>> to implement automated tests in a way that they are maintainable. > >>>> > >>>> Some points: > >>>> 1. I think integration into something like Travis would be very > helpful. > >>>> 2. I think there’s a Jenkins plugin for building pull requests. Not > sure > >>>> how useful it is.[1] > >>>> 3. Josh has created a Node.js-compatible test-runner architecture > which > >>>> could be useful for unit tests on parts of the framework which don’t > >> rely > >>>> on browser features. (i.e. models and the like) He mentioned the > >>>> possibility of donating it, and I think that would be a very useful > >> feature. > >>>> 4. For UI and integration tests, there seem to be some pretty cool > >>>> integrations using Selenium.[2][3] > >>>> 5. I think the main testing effort needs to be using JS and something > >> like > >>>> Josh’s testing framework for non-UI pieces and some easy-to-use > Selenium > >>>> integration for visual pieces and integration tests. > >>>> 6. We probably also want some API endpoints we can test off of for > >>>> integration testing. > >>>> > >>>> I’m willing to invest time into this. > >>>> > >>>> It’s going to be a lot of work building out the tests and I think we > >> need > >>>> a plan for that. My thoughts: > >>>> > >>>> 1. Step one is to make it easy to write meaningful automated tests and > >>>> establish a clear pattern. > >>>> 2. Step two is to start writing tests starting from the > >> most-used/easiest > >>>> to beak pieces and work out from there. > >>>> 3. Once the pattern is established, any new pieces MUST have testing > >>>> coverage. > >>>> 4. When fixing bugs, attention should be paid to adding testing for > that > >>>> component. > >>>> 5. When a pull request comes in on a piece which does not have unit > >> test, > >>>> a test must be written before accepting the pull request. The test > does > >> not > >>>> need to be written by the requester. Before examining the request, the > >> test > >>>> should be written to pass for expected behavior and fail for the bug > >> that > >>>> the pull request is attempting to fix (assuming the pull request is to > >> fix > >>>> a bug). > >>>> > >>>> Thoughts? > >>>> Harbs > >>>> > >>>> P.S. I’m thinking of coming to the US in late December/early January. > I > >>>> would be interested in getting together for a hacking session with > folks > >>>> who are available. > >>>> > >>>> [1]https://wiki.jenkins.io/display/JENKINS/GitHub+pull+ < > https://wiki.jenkins.io/display/JENKINS/GitHub+pull+> > >>>> request+builder+plugin <https://wiki.jenkins.io/ < > https://wiki.jenkins.io/> < > >> https://wiki.jenkins.io/ <https://wiki.jenkins.io/>> > >>>> display/JENKINS/GitHub+pull+request+builder+plugin> > >>>> [2]https://docs.travis-ci.com/user/gui-and-headless-browsers/ < > https://docs.travis-ci.com/user/gui-and-headless-browsers/> < > >> https://docs.travis-ci.com/user/gui-and-headless-browsers/ < > https://docs.travis-ci.com/user/gui-and-headless-browsers/>> < > >>>> https://docs.travis-ci.com/user/gui-and-headless-browsers/ < > https://docs.travis-ci.com/user/gui-and-headless-browsers/> < > >> https://docs.travis-ci.com/user/gui-and-headless-browsers/ < > https://docs.travis-ci.com/user/gui-and-headless-browsers/>>> > >>>> [3]https://saucelabs.com/products/integrations < > https://saucelabs.com/products/integrations> <https://saucelabs.com/ < > https://saucelabs.com/> > >> products/integrations> <https://saucelabs.com/ <https://saucelabs.com/> > <https://saucelabs.com/ <https://saucelabs.com/>> > >>>> products/integrations> > >>> > >>> > >>> > >>> > >>> -- > >>> > >>> Piotr Zarzycki > >>> > >>> mobile: +48 880 859 557 > >>> skype: zarzycki10 > >>> > >>> LinkedIn: http://www.linkedin.com/piotrzarzycki < > http://www.linkedin.com/piotrzarzycki> < > >> http://www.linkedin.com/piotrzarzycki <http://www.linkedin.com/ > piotrzarzycki>> > >>> <https://pl.linkedin.com/in/piotr-zarzycki-92a53552 < > https://pl.linkedin.com/in/piotr-zarzycki-92a53552> < > >> https://pl.linkedin.com/in/piotr-zarzycki-92a53552 < > https://pl.linkedin.com/in/piotr-zarzycki-92a53552>>> > >>> > >>> GitHub: https://github.com/piotrzarzycki21 <https://github.com/ > piotrzarzycki21> <https://github.com/ <https://github.com/> > >> piotrzarzycki21> > >> > > > > > > > > -- > > > > Piotr Zarzycki > > > > mobile: +48 880 859 557 > > skype: zarzycki10 > > > > LinkedIn: http://www.linkedin.com/piotrzarzycki < > http://www.linkedin.com/piotrzarzycki> > > <https://pl.linkedin.com/in/piotr-zarzycki-92a53552 < > https://pl.linkedin.com/in/piotr-zarzycki-92a53552>> > > > > GitHub: https://github.com/piotrzarzycki21 <https://github.com/ > piotrzarzycki21> > -- Piotr Zarzycki mobile: +48 880 859 557 skype: zarzycki10 LinkedIn: http://www.linkedin.com/piotrzarzycki <https://pl.linkedin.com/in/piotr-zarzycki-92a53552> GitHub: https://github.com/piotrzarzycki21
