Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6D7981857E for ; Tue, 16 Jun 2015 14:31:57 +0000 (UTC) Received: (qmail 53187 invoked by uid 500); 16 Jun 2015 14:31:52 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 53140 invoked by uid 500); 16 Jun 2015 14:31:52 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 53129 invoked by uid 99); 16 Jun 2015 14:31:52 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 16 Jun 2015 14:31:52 +0000 Received: from mail-yk0-f175.google.com (mail-yk0-f175.google.com [209.85.160.175]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id ADDA51A0503 for ; Tue, 16 Jun 2015 14:31:51 +0000 (UTC) Received: by ykar6 with SMTP id r6so14742256yka.2 for ; Tue, 16 Jun 2015 07:31:50 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.170.225.193 with SMTP id r184mr847025ykf.88.1434465110508; Tue, 16 Jun 2015 07:31:50 -0700 (PDT) Received: by 10.129.24.211 with HTTP; Tue, 16 Jun 2015 07:31:50 -0700 (PDT) In-Reply-To: <557FAED4.7080502@gmail.com> References: <557F928A.70305@gmail.com> <557FAE9D.4060501@gmail.com> <557FAED4.7080502@gmail.com> Date: Tue, 16 Jun 2015 10:31:50 -0400 Message-ID: Subject: Re: Can no longer run ITs on command line like before From: Christopher To: Accumulo Dev List Content-Type: multipart/alternative; boundary=001a113abcae5accc10518a36f1b --001a113abcae5accc10518a36f1b Content-Type: text/plain; charset=UTF-8 Yeah, I typically skip those too, when I run a single test. Personally, I don't find it that bad, because I understand which flags I want to set to skip specific things, but I can understand how this might be frustrating to somebody else. FWIW, you can get similar functionality with surefire, but you'd have to specify -DtestSourceDirectory='${project.basedir}/src/main/java' -DtestClassesDirectory='${project.build.directory}/classes' so surefire can find the tests. Failsafe already has this configuration set, so it's probably just easier to use failsafe to execute ITs, and surefire to execute unit tests. That's how they are designed to work, after all. On Tue, Jun 16, 2015, 01:06 Josh Elser wrote: > And, for argument's sake, the actual command I have to run to get the > old functionality is worse than you wrote: > > mvn clean verify -Dit.test=CyclicReplicationIT -DfailIfNoTests=false > -Dcheckstyle.skip -Dfindbugs.skip -Dtest=skipall > > Josh Elser wrote: > > No typo, and this is exactly what I meant to defeat by saying "the most > > correct way to invoke ITs". > > > > We could previously run ITs via surefire without issue and this is now > > broken. As I said, I understand this is not "how it should be done", but > > I would imagine the strong majority of devs understand "mvn test > > -Dtest=MyTest" and not that they suddenly have to do something different. > > > > Christopher wrote: > >> Not sure if this was a typo, or the problem, but you're trying to run > >> an IT with the surefire plugin, rather than the failsafe plugin. This > >> is incorrect. Your command should be: > >> > >> `mvn clean verify -Dtest=skipall -Dit.test=CyclicReplicationIT > >> -DfailIfNoTests=false` > >> > >> This will cause the surefire plugin to be a noop (because "skipall" > >> doesn't match anything), and the failsafe plugin will work as > >> expected, executing the test in question. > >> > >> -- > >> Christopher L Tubbs II > >> http://gravatar.com/ctubbsii > >> > >> > >> On Mon, Jun 15, 2015 at 11:05 PM, Josh Elser > wrote: > >>> Trying to look into a failing test for Eric, and I see that the > >>> following no > >>> longer runs the test: > >>> > >>> `mvn clean package -Dtest=CyclicReplicationIT -DfailIfNoTests=false` > >>> > >>> Looks like this is because the maven-surefire-plugin configuration > >>> doesn't > >>> have the same testSourcesDirectory configuration that failsafe does. > >>> > >>> While I understand that it's not "the most correct way to invoke ITs", > I > >>> think this is an impediment for devs (especially with all of the > >>> other cruft > >>> tied into the verify lifecycle phase). > >>> > >>> Is there a reason this doesn't wasn't done? > --001a113abcae5accc10518a36f1b--