We have an lab network and decided to use NAPALM framework (library that implements a set of functions to interact with different router vendor devices using a unified API) as it supports all types of devices that we need to test. There is support for configuring devices, but mainly for retrieving operational state of devices, that is key for our testing.
As a result of several months work we have now basic environment for testing thanks to NAPALM, but for our need we had to extend it with several functions for parsing operational data. These functions are covering different areas as IS-IS, LDP, BFD, BGP, PIM, MPLS TE and help us to properly check overall status of the box. As I work for OBS these functions are Service Provider oriented. Our goal is to publish them either as part of NAPALM official package or external extension. So also others can benefit from the work that was done as part our project.