LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Automated testing of LabView VIs

I'm looking for a tool that I can use for functional and regressing testing of automate testing of LabView VIs.  I'm not looking for unit testing tools, as I'm not the developer.  I'm the software test engineer for a team that is building applications in LabView that I need to verify.  I have tried AutoIt, but the inspector cannot read the contents of the VI, so I can't interact with it.  I'm looking into TestPlant's eggPlant Functional, but this uses image capture techniques, which I find to be less robust.  Does anyone know of any third-party tools that interact with LabView VIs for this kind of testing?

0 Kudos
Message 1 of 7
(1,514 Views)

As far as I know, there isn't even a way to view LV block diagrams without LabVIEW itself. LabVIEW has a very robust set of logging frameworks you could use, as well any manner of ways to run some VI with varying inputs. You may have some success doing this with LabWindows/CVI, but I've not used that before.

0 Kudos
Message 2 of 7
(1,497 Views)

Using NI tools to validate NI tools violates core QA practices.  Whatever application we end up using to test LabView VIs must be a third-party tool.

0 Kudos
Message 3 of 7
(1,479 Views)

You can deploy to an executable and use CLI arguments to set indicators and controls, as seen here: http://digital.ni.com/public.nsf/allkb/17C3AD70493CE0208625666A00763364. This can easily be scripted to give you all manner of configurations. You can also analyze the binary in the static analyser of your choice.

0 Kudos
Message 4 of 7
(1,475 Views)

Does it have to be a "pre-made" tester or can you create your own using C++, .NET, VB, or similar?

 

If you can make your own, see this article:

Calling LabVIEW VIs from Other Programming Languages

 

 

0 Kudos
Message 5 of 7
(1,451 Views)

@robbovill wrote:

Using NI tools to validate NI tools violates core QA practices.  Whatever application we end up using to test LabView VIs must be a third-party tool.


Why? Isn't it only the inputs and outputs that's important? Why would that be more secure if a 3rd party checks? If so, use a 3rd party to check the NI tools, then you can use those. 😛

/Y

G# - Award winning reference based OOP for LV, for free! ADDQ VIPM Now on GitHub
"Only dead fish swim downstream" - "My life for Kudos!" - "Dumb people repeat old mistakes - smart ones create new ones."
Certified-LabVIEW-Developer
0 Kudos
Message 6 of 7
(1,436 Views)

Two options I can think of:

- Enable ActiveX on your application and then use the ActiveX interface (e.g. from another language) to control the application

- Image-based automation techniques (e.g. the ones you've already mentioned)

0 Kudos
Message 7 of 7
(1,425 Views)