[openstack-dev] [Ceilometer] Vertica Storage Driver Testing

Clint Byrum clint at fewbar.com
Thu Jan 2 23:27:49 UTC 2014


Excerpts from Herndon, John Luke's message of 2014-01-02 15:16:26 -0800:
> Hi,
> 
> I¹m working on adding a vertica (www.vertica.com) storage driver to
> ceilometer. I would love to get this driver into upstream. However, I¹ve
> run into a bit of a snag with the tests. It looks like all of the existing
> storage drivers have ³in-memory² versions that are used for unit tests.
> Vertica does not have an in-memory implementation, and is not trivial to
> set-up. Given this constraint, I don¹t think it will be possible to run
> unit tests ³out-of-the-box² against a real vertica database.

Well arguably those other implementations aren't really running against
a real database either so I don't see a problem with this.

> 
> Vertica is mostly sql compliant, so I could use a sqlite or h2 backend to
> test the query parts of the driver. Data loading can¹t be done with
> sqlite, and will probably need to be tested with mocks. Is this an
> acceptable approach for unit tests, or do the tests absolutely need to run
> against the database under test?
>

A fake Vertica or mocking it out seems like a good idea. I'm not deeply
involved with Ceilometer, but in general I think it is preferable to
test only the _code_ in unit tests. However, it may be a good idea to
adopt an approach similar to Nova's approach and require that a 3rd
party run Vertica integration tests in the gate.



More information about the OpenStack-dev mailing list