Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 928E8200BCA for ; Mon, 21 Nov 2016 17:53:07 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 9104A160AF9; Mon, 21 Nov 2016 16:53:07 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id B416C160AEF for ; Mon, 21 Nov 2016 17:53:06 +0100 (CET) Received: (qmail 10301 invoked by uid 500); 21 Nov 2016 16:53:05 -0000 Mailing-List: contact dev-help@syncope.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@syncope.apache.org Delivered-To: mailing list dev@syncope.apache.org Received: (qmail 10270 invoked by uid 99); 21 Nov 2016 16:53:05 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 21 Nov 2016 16:53:05 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id BA70A1A0228 for ; Mon, 21 Nov 2016 16:53:04 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.363 X-Spam-Level: * X-Spam-Status: No, score=1.363 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RDNS_DYNAMIC=0.363] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id t9P4Zp-sAUge for ; Mon, 21 Nov 2016 16:53:02 +0000 (UTC) Received: from rovere.tirasa.net (93-56-25-79.ip287.fastwebnet.it [93.56.25.79]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id EF8795F254 for ; Mon, 21 Nov 2016 16:53:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by rovere.tirasa.net (Postfix) with ESMTP id 763032FDCACDC for ; Mon, 21 Nov 2016 17:52:53 +0100 (CET) X-Virus-Scanned: amavisd-new at tirasa.net Received: from rovere.tirasa.net ([127.0.0.1]) by localhost (rovere.tirasa.net [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id FkZa8yL0htGn for ; Mon, 21 Nov 2016 17:52:53 +0100 (CET) Received: from [192.168.0.187] (unknown [192.168.0.187]) (Authenticated sender: matteo.dicarlo) by rovere.tirasa.net (Postfix) with ESMTPSA id 271642FDCACDA for ; Mon, 21 Nov 2016 17:52:53 +0100 (CET) Subject: Re: [DISCUSS] Enduser Test Profile To: dev@syncope.apache.org References: <582F0E43.7080107@tirasa.net> <582F2CC7.2010209@tirasa.net> <4cabc434-7327-4fa4-9d40-33a1fb30edc0@typeapp.com> <94de9195-c645-b658-9274-a465635cae9a@apache.org> <583322D2.1@tirasa.net> <008d088e-a579-9410-d027-66fa18ecd63d@apache.org> From: Matteo Di Carlo Message-ID: <58332664.6060104@tirasa.net> Date: Mon, 21 Nov 2016 17:52:52 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <008d088e-a579-9410-d027-66fa18ecd63d@apache.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable archived-at: Mon, 21 Nov 2016 16:53:07 -0000 Hi Francesco, yes, that's what I would like to do, so the new user profile would=20 override existing plugin configurations. I undestand that would be the=20 right solution. Thank you. Matteo. On 21/11/2016 17:47, Francesco Chicchiricc=C3=B2 wrote: > On 21/11/2016 17:37, Matteo Di Carlo wrote: >> Hi, >> here =20 >> is one possible solution I found today to run tests AND prepare a=20 >> test environment in the same time. Test related plugins are included=20 >> in a new profile. >> This could be a good solution if the new profile is the only one=20 >> using those plugins I think. > > With your changes, now enduser integration tests will fail during a pla= in > > mvn clean verify > > as the required plugins are not configured any more in the default=20 > profile. > > This breaks the current set up. > > The point is that enduser integration tests involves both propagation=20 > and execution: > > 1. propagation and execution must be *both run* during plain build=20 > (e.g. "mvn clean verify") > 2. propagation and execution must be *both skipped* if required (e.g.=20 > in the skipTests profile) > > Essentially, you would like to add a new profile (say 'dev') where=20 > preparation is run but execution is skipped - thus allowing for manual=20 > tst execution against a fully-compliant test environment. > Did I get it right? > > If so, you should not remove any line from the current=20 > fit/enduser-reference/pom.xml but rather only add a new profile. > > HTH > Regards. > >> On 21/11/2016 09:43, Francesco Chicchiricc=C3=B2 wrote: >>> Matteo, >>> please draft an updated >>> >>> fit/enduser-reference/pom.xml >>> >>> somewhere (gist, as suggested should be good enough) so that we can=20 >>> take an effective look at the proposed changes. >>> Thanks. >>> >>> Regards. >>> >>> On 18/11/2016 18:03, Andrea Patricelli wrote: >>>> Hi all, >>>> >>>> I think that hacking the pom.xml of the fit/enduser cannot be a=20 >>>> long lasting solution. So I agree about introducing a specific=20 >>>> profile for developing of IT tests, it could help for the current=20 >>>> developing needs. >>>> It would also be cool to have more granularity and run specific=20 >>>> tests using maven like Francesco pointed out. >>>> Actually, as it seems to me, the main problem is that to develop=20 >>>> and run an IT test for the enduser we must wait for the complete=20 >>>> cargo system to startup, we have no granularity. It is not feasible=20 >>>> while developing tests. We need to run single tests (while=20 >>>> developing) against a running syncope environment (enduser ui +=20 >>>> core), and at the moment AFAIK we are not able to run single tests=20 >>>> through maven, we have to use js tools as Matteo said. >>>> >>>> =E2=80=8BBest regards, >>>> Andrea >>>> >>>> Il giorno 18 nov 2016, 17:31, alle ore 17:31, Matteo Di Carlo=20 >>>> ha scritto: >>>>> >>>>> On 18/11/2016 16:00, Francesco Chicchiricc=C3=B2 wrote: >>>>>> On 18/11/2016 15:20, Matteo Di Carlo wrote: >>>>>>> Hi all, >>>>>>> I would like to share some considerations about enduser testing. >>>>>>> >>>>>>> After tests have been written or updated we are able to run them >>>>>>> manually through node and protractor directly from >>>>>>> ${enduser-test.dir}: a directory created in /fit/enduser/target >>>>>>> during pre-integration-test phase. During the same phase=20 >>>>>>> protractor, >>>>>>> phantomjs and node are installed too. >>>>>>> Actually in the build cycle these four operations are skipped, so >>>>>>> every time we work on enduser tests we need to temporarily modify >>>>>>> syncope-fit-enduser-reference pom to run tests manually. >>>>>>> >>>>>>> Could be usefull to create a Enduser test specific maven profile = ? >>>>>> Hi Matteo, >>>>>> please go ahead and post your proposed changes to >>>>>> fit/enduser-reference/pom.xml somewhere (Gist?), I am not sure to >>>>>> understand why you need it: is your purpose to build an easy way t= o >>>>>> leave Syncope running with the ability to manually run some JS tes= ts >>>>>> against it? >>>>>> >>>>>> In fit/core-reference you can achieve something similar by running >>>>>> >>>>>> mvn -Pdebug >>>>>> >>>>>> or >>>>>> >>>>>> mvn -Pdebug,all >>>>>> >>>>>> and then (for example) >>>>>> >>>>>> mvn test -Dtest=3DGroupITCase >>>>>> >>>>>> Is my understanding correct? Could you please provide a concrete >>>>>> example, besides your proposed changes? >>>>>> >>>>>> Regards. >>>>>> >>>>> Hi Francesco, >>>>> correct. the goal is developing enduser tests in a faster way, but >>>>> mainly I couldn't find where to run Node outside the enduser-test.d= ir >>>>> if >>>>> not created. >>>>> We can run tests with mvn clean verify, but running them with node >>>>> while >>>>> developing brings few advantages : >>>>> >>>>> -we can choose which test to run, e.g. if we are working on a singl= e >>>>> test we don't have to run them all, >>>>> -we can change protractor configuration, e.g. what browser to use f= or >>>>> testing or the order with which we want to run tests, and see resul= ts >>>>> without rebuild, >>>>> -we can change html views (since protractor works with html=20 >>>>> elements it >>>>> >>>>> can happen that we need to add tags to html files) and run the same >>>>> test >>>>> again. >>>>> >>>>> To achieve this goals everything I did is >>>>> >>>>> 1. removing true from every plugins that >>>>> excecute pre-integration-test phase, >>>>> 2. mvn -Pjrebel, >>>>> 3. move to enduser-test.dir >>>>> 4. write, modify tests or configuration files >>>>> 5. copy updated test files in enduser-test.dir >>>>> 6. delete test files I'm not interested to, from enduser-test.d= ir >>>>> 7. run nodejs/node/node nodejs/bin/protractor=20 >>>>> protractor-conf.js from enduser-test.dir >>>>> >>>>> So I think a appropriate profile could be a solution. Changes I=20 >>>>> made to >>>>> >>>>> the pom is a quick solution to work temporarily. >>>>> If there is a mvn parameter to force building Syncope without=20 >>>>> skipping >>>>> pre-integration-test phase would be much quicker ! >>>>> >>>>> Matteo. >>