NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Architecture question: How to stay backwards compatible when using new resources in existing test applications

I am writing "driver" VIs for measurement devices, power supplies etc. for our automatic tester which runs TestStand. We have built an extensive library with many different resources. I am now facing the issue, that some of the successors of certain ressources (which have equal or better specification) from the same OEM, cannot be used with the same VIs as the behaviour is a bit different and the OEMs do not offer an emulation mode. But also, we are using a completely different scope by another OEM, due to obsolescence.

 

First, we tried to build VIs by keeping the name of the VI and differentiate within the VI by requesting IDN every time, so it is backwards compatible. This does not seem to be a good solution, as we are touching all the old drivers and one wrong VI that is uploaded to the master could cause all testers to stop. 

 

Another idea is to store all used resource types in the Station Globals and replace all VI calls by respective sequence call with the same parameters. The subsequences would then look up which resource is built in and uses a select case to call the correct VI or a series of VIs in case of e.g. a necessary reconfiguration of the device as it has shown to be necessary for certain devices to behave equally. Drawback is, that all driver VIs have to be replaced by sequence calls so every software is to be able to run with every resource. 

 

Now to my question: How could this be done better, what is the gold standard to do it?  Suggestions welcome! Thank you.

 

0 Kudos
Message 1 of 2
(56 Views)

You may benefit from abstracting the instrumentation from your test code.

Don't Let Obsolescence Cause Your Test System to Flatline - NI

 

This is a great article on Abstraction layers - https://www.bing.com/ck/a?!&&p=4ee73f7c850e2cb083df2dff49789e7cdd5bf995e835682a54311e89bea9a716Jmltd...

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution
Message 2 of 2
(33 Views)