Hi Brock,

On Fri, Apr 13, 2012 at 12:12 PM, Brock Noland <[email protected]> wrote:

> On Fri, Apr 13, 2012 at 7:05 PM, Bruno Mahé <[email protected]> wrote:
> > On 04/13/2012 11:00 AM, Brock Noland wrote:
> >>
> >> I have been thinking about this for a while.  Let's say that we wanted
> >> to write some integration tests, that is programmatically startup
> >> flume node with a specific configuration. Given the current module
> >> layout, where would we do this? It seems like the node module would be
> >> the correct module but then it would have to have knowledge of all
> >> other modules.
> >>
> > Could you define "integration"?
> > Depending on your definition, Apache Bigtop may be more suitable for
> > such integration tests.
>
> Start up a flume agent with a SequenceGeneratingSource, using
> RecoverableMemoryChannel, and writing to HDFSSink using file:/// as
> the FileSystem run it for a few seconds and shut it down.
>

In the past I have used the FIT framework successfully to do integration
testing. It has a bit of a steep starting cost, but once the fixtures are
developed and a few tests written, it becomes very easy to extend and
maintain.

http://fit.c2.com/

The other alternative is to use TestNG/JUnit categorized for integration
test where you create the various processes in a controlled environment
etc. This approach is a bit more tedious and harder to maintain, although
easer to start with.

Thanks,
Arvind Prabhakar

Reply via email to