trafficserver-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan D. Cabrera" <>
Subject Re: TDD/Unit testing ATS plugins
Date Tue, 31 Dec 2013 22:44:37 GMT

On Dec 31, 2013, at 1:53 PM, James Peach <> wrote:

> On Dec 31, 2013, at 8:44 AM, Alan D. Cabrera <> wrote:
>> I'm looking for an example of an ATS plugin that has extensive unit tests.
> There are none.
>> I'm having problems linking my Boost unit tests against the plugin library for obvious
reasons, it's a module not a shared library.
>> I tried setting up an internal static library that the tests would link against but
can't seem to get the object files directly included into the ATS plugin.
> There's no reason, in principle, that this would not work. For many plugins it would
be reasonable to separate core functions from the Traffic Server bindings, and use a TDD approach
for developing the core.

Yes, but Autotools is getting in the way.  I can't seem to get those core functions, which
are in the static library that's shared by the plugin and tests, into the ATS plugin module.
 This is the Autotools "example" that I'm looking for.

The dearth of specific replies tells me that everyone likely does integration testing only.
 That, or everyone is getting ready for the new year's eve festivities.  ;)

> For the remainder of the tests, I'd recommend an integration testing approach. There
is a very simple integration test harness in the ci/tsqa directory on master. You can use
that to set up an independent ATS installation and drive integration tests through it.

I'll take a look at that.

> Finally, the core has the concept of "action tags", which are useful for testing, but
not exposed through the API. Action tags would let you test corner cases, by setting tags
to force particular APIs to fail, for example.

Interesting.  Where can I see examples of this form of testing?


View raw message