Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase >> mail # dev >> unit tests


Copy link to this message
-
Re: unit tests
Oops, trying to specify the book's xml in general, forgot that there was an
actual book.xml. Thanks for the catch Doug.

On Mon, Nov 28, 2011 at 3:40 PM, Doug Meil <[EMAIL PROTECTED]>wrote:

>
> The development chapter is in developer.xml, actually, but I think that
> adding to the book would be a good idea.
>
>
>
> On 11/28/11 6:30 PM, "Jesse Yates" <[EMAIL PROTECTED]> wrote:
>
> >Alternatively, a good place for this would also be in the book.xml, under
> >(13) Building and Developing HBase
> >
> >-Jesse
> >
> >On Mon, Nov 28, 2011 at 3:10 PM, Todd Lipcon <[EMAIL PROTECTED]> wrote:
> >
> >> Haven't had a chance to review the full note below, but one request:
> >> can we please put this in the code tree itself in a file like
> >> TESTING.txt or README.testing.txt or something?
> >>
> >> It'd be nice to be able to refer back to it from within the code tree.
> >>
> >> -Todd
> >>
> >> On Mon, Nov 28, 2011 at 12:29 PM, N Keywal <[EMAIL PROTECTED]> wrote:
> >> > Hi,
> >> >
> >> > The surefire modification seems to work well, so we can move to the
> >>final
> >> > step.
> >> > Please find below the last proposition for the test. The behavior
> >> described
> >> > can be activated with:
> >> >  - a commit of hbase-4847
> >> >  - a modification of the jenkins config to run mvn verify vs. mvn
> >>tests.
> >> >
> >> > The main points are:
> >> >  - should we run small & medium tests only by default on a developer
> >> > machine => here answer is yes
> >> >  - should we run all tests on the central build => here answer is yes
> >> >  - should we stop when a small test fails => here answer is yes
> >> >  - should we stop when a medium test fails => here answer is yes
> >> >
> >> >
> >> > Also, I just had a discussion with Jesse, who think we should
> >>keep/have
> >> the
> >> > notion of integration test. If retained, the points above must be
> >> impacted
> >> > to take this into account.
> >> >
> >> >
> >> > fyi, there are today:
> >> >  - 416 small tests, executed in ~3 minutes
> >> >  - 489 medium tests, executed in ~35 minutes (without parallelization)
> >> >  - 280 large tests, executed in ~90 minutes (without parallelization)
> >> >
> >> > --
> >> > 1) Running tests
> >> > HBase tests are divided in three categories: small, medium and large,
> >> with
> >> > corresponding JUnit categories: SmallTests, MediumTests, LargeTests.
> >> >
> >> > - Small tests are executed in a shared JVM. We put in this category
> >>all
> >> the
> >> > tests that can be executed quickly (the maximum execution time for a
> >>test
> >> > is 15 seconds, and they do not use a cluster) in a shared jvm.
> >> > - Medium tests represents tests that must be executed before
> >>proposing a
> >> > patch. They are designed to run in less than 30 minutes altogether,
> >>and
> >> are
> >> > quite stable in their results. They're designed to last less than 50
> >> > seconds individually. They can use a cluster, and each of them is
> >> executed
> >> > in a separate JVM.
> >> > - Large tests are everything else. They are typically integration
> >>tests,
> >> > regression tests for specific bugs, timeout tests, performance tests.
> >> Some
> >> > of them can be flaky. They are executed before a commit on the
> >> > pre-integration machines. They can be run on the developer machine as
> >> well.
> >> >
> >> > Commands are:
> >> > 1) mvn test
> >> >  - execute small tests in a single JVM and medium tests in a separate
> >>JVM
> >> > for each test
> >> >  - medium tests are NOT executed if there is an error in a small test
> >> >  - large tests are NOT executed
> >> >  - there is one report for small tests, and one report for medium
> >>tests
> >> -if
> >> > they are executed-
> >> >
> >> > 2) mvn verify
> >> >  - execute small tests in a single JVM then medium tests in a separate
> >> JVM
> >> > for each test, then large tests in a separate JVM as well.
> >> >  - medium tests are NOT executed if there is an error in a small test
> >> >  - large tests are NOT executed if there is an error in a small or
Jesse Yates
240-888-2200
@jesse_yates
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB