Hi Francesco,

I still see some benefits to extract integration tests applying to whole web 
application from real unit tests checking logic located only in current module.
I agree that it is not urgent task at the moment, although it will make my 
development cycle faster even now.
Do you have any concerns if I create jira for this with minor priority?

Cheers,
Andrei.

> -----Original Message-----
> From: Francesco Chicchiriccò [mailto:ilgro...@apache.org]
> Sent: Dienstag, 11. Dezember 2012 11:25
> To: dev@syncope.apache.org
> Subject: Re: [DISCUSS] Re: Extract syncope system/integration tests into
> separate project
> 
> On 10/12/2012 10:40, Andrei Shakirin wrote:
> > Hi Francesco,
> >
> > Yep, we need kind of plan to synchronize our work.
> >
> > I see the following order:
> > 1. Merge the DEV_ROLE_PROVISIONING (Francesco) 2. Separate
> persistence
> > layer SYNCOPE-241, SYNCOPE-242 (Christian) 3. Extract
> > integration/system tests (Andrei) 4. Merge CXF branch (Jan, Christian,
> > Andrei)
> >
> > For (4) some work still should be done, so I see this merge in the next 
> > year.
> >
> > What do you think?
> 
> It sounds fine, as long as we agree that (3) is a good thing for the project, 
> as it
> happened for (1), (2) and (4) :-)
> 
> > Regarding integration/system tests, I have some reasons to move them
> into separate maven module:
> > 1) Integration and system tests are normally use not the single, but
> > multiple modules (in syncope soon it will be core and persistence
> > modules, further even more)
> 
> Correct, but I don't see any reason to not keep the integration tests bundled
> with the module providing the REST interface.
> With maven, src/test is for tests and src/main for actual source code, isn't 
> it?
> ;-)
> 
> > 2) Actually running integration tests takes about 3 mins, but I expect it 
> > will
> grow in the future. For me it is a reason to separate fast JUnit tests and
> integration tests to make development cycle shorter.
> 
> It could be, but I don't see any reason for worrying about this now.
> 
> > 3) Integration and system tests normally require specific dependencies and
> logic: cargo plugin, unzip/copy web application, etc. Syncope can also be
> tested with different servlet containers (tomcat, glassfish, TomEE+, etc). I
> think placing this deps and logic in one project and reusing it has some
> benefits.
> 
> Syncope core can be already tested against many servlet containers and
> many DBMSes (I went into more details about this in [1]).
> 
> > 4) Separate module for systests is kind of common practice in many apache
> projects: CXF, Camel, Karaf. Therefore separation can make understanding of
> Syncope build process more easy for communities from other apache
> projects.
> 
> The projects you are mentioning are frameworks, and I see perfectly normal
> that for testing a framework you need to build test applications; but Syncope
> core is a web application, not a framework.
> 
> > What is your opinion?
> 
> My concerns stand still; mainly, I don't see the point of having a Maven
> artifact like org.apache.syncope:syncope-core-integration-tests.
> 
> Regards.
> 
> [1]
> http://syncope-dev.1063484.n5.nabble.com/Introducing-myself-and-a-
> proposal-to-modularize-the-core-tp5711268p5711283.html
> 
> >> -----Original Message-----
> >> From: Francesco Chicchiriccò [mailto:ilgro...@apache.org]
> >> Sent: Montag, 10. Dezember 2012 09:57
> >> To: dev@syncope.apache.org
> >> Subject: [DISCUSS] Re: Extract syncope system/integration tests into
> >> separate project
> >>
> >> Hi all,
> >> let's try to make some order :-)
> >>
> >> The current situation is:
> >>
> >>    1. I am about to merge the DEV_ROLE_PROVISIONING branch into the
> trunk
> >>    2. Jan (with help from Christian) will then merge the cxf branch
> >> into the trunk and also apply some refactoring (see SYNCOPE-241 and
> >> SYNCOPE-242) by splitting the core module
> >>
> >> After (2) will have completed, we can think to discuss about
> >> additional refactoring, IMO.
> >>
> >>
> >> Now, I am not completely sure about the proposed refactoring,
> >> especially after what I expect from (2): could you please give more
> >> details about the benefits?
> >> For example, I am not sure that moving test classes and resources in
> >> separate modules (hence making such classes part of the release) is
> >> necessarily a good thing.
> >>
> >> Regards.
> >>
> >> On 10/12/2012 09:41, Andrei Shakirin wrote:
> >>> Hi JB,
> >>>
> >>> I mean just maven module, sure :)
> >>> What do you prefer as a name?
> >>> a) itests
> >>> b) systests
> >>>
> >>> Cheers,
> >>> Andrei.
> >>>
> >>>> -----Original Message-----
> >>>> From: Jean-Baptiste Onofré [mailto:j...@nanthrax.net]
> >>>> Sent: Sonntag, 9. Dezember 2012 20:47
> >>>> To: dev@syncope.apache.org
> >>>> Subject: Re: Extract syncope system/integration tests into separate
> >> project
> >>>> Hi Andrei,
> >>>>
> >>>> by separate project, you mean a "real" project (with its own
> >>>> release cycle, artifacts, svn repo, etc), or just a Maven module ?
> >>>>
> >>>> I don't think it's a good idea to have it in a separate "real"
> >>>> project as it's coupled to the others artifacts/modules/codebase.
> >>>>
> >>>> But a itest Maven module it's a good think (it's what we have most
> >>>> of projects, like Karaf, ServiceMix, etc).
> >>>>
> >>>> Regards
> >>>> JB
> >>>>
> >>>> On 12/09/2012 07:37 PM, Andrei Shakirin wrote:
> >>>>> Hi,
> >>>>>
> >>>>> I would suggest to extract integration and system tests into
> >>>>> separate
> >>>> project. From my perspective it makes management of tests and build
> >>>> process more transparent and easy. Of course,  JUnit tests will
> >>>> stay in corresponded projects.
> >>>>> Does it make sense?
> >>>>>
> >>>>> Cheers,
> >>>>> Andrei.
> 
> --
> Francesco Chicchiriccò
> 
> ASF Member, Apache Syncope PMC chair, Apache Cocoon PMC Member
> http://people.apache.org/~ilgrosso/

Reply via email to