VI Analyzer Enthusiasts Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

More VIAnalyzer false fails on a CI/CD pipeline

Hi all, 

This is a continuation on a previous resolved issue as I came across a few seemingly different false fails. 

I am running VI analyzer on a server that we have dedicated for CI/CD. I am using G-CLI tool and the LabVIEW functions to run VI analyzer. I am getting false fail on two tests, listed below, however, I only get these false fails when I am calling the G-CLI based tool from the pipeline. If I run the same command locally on the server PC, then these tests do not fail. If I run the VI analyzer through the GUI tool, it does not return those false fails on either my machine or the server. 

 

The tests are: 

- Wire bends - this tests in C:\Program Files (x86)\National Instruments\LabVIEW 2018\project\_VI Analyzer\_tests\Block Diagram\Style has a password protected so I cannot open the block diagram and test if there is a race condition. 
- Wires under objects - the block diagram of this test is open but it is quite a complex (and messy!) VI so I can't trace yet where the false fails is coming from. There are even comments in in indicating that it could cause false fails. 

Has any of you experience similar issues and have any suggestion/workarounds? 

Many Thanks, 

 

Riley 

Message 1 of 7
(2,514 Views)

When I see those two tests fail on one configuration but not another, it's almost always due to font differences. One way to debug (with Wires Under Objects, anyway, since it's not password-protected) would be to add calls to show the diagram of the (failing) VI when the test runs, and then call ObjHighlight on the failing objects, to see what they look like. My guess is that there are different fonts that are causing diagram objects to change appearance (like Unbundle By Name functions getting bigger/smaller), resulting in new wire bends and overlapping objects.

 

As for why the fonts are different, I'm not sure... I haven't done much with CLI stuff. If a different LabVIEW configuration (like INI file) is being used for one run of the EXE vs. others, that could explain font differences. I don't know if there are other causes.

0 Kudos
Message 2 of 7
(2,488 Views)

@Darren wrote:

When I see those two tests fail on one configuration but not another, it's almost always due to font differences. One way to debug (with Wires Under Objects, anyway, since it's not password-protected) would be to add calls to show the diagram of the (failing) VI when the test runs, and then call ObjHighlight on the failing objects, to see what they look like. My guess is that there are different fonts that are causing diagram objects to change appearance (like Unbundle By Name functions getting bigger/smaller), resulting in new wire bends and overlapping objects.

 

As for why the fonts are different, I'm not sure... I haven't done much with CLI stuff. If a different LabVIEW configuration (like INI file) is being used for one run of the EXE vs. others, that could explain font differences. I don't know if there are other causes.


Have definitely seen this problem before and it is fonts.

 

Fab had some workaround regarding manipulating ini files to make sure they all match or something.

Sam Taggart
CLA, CPI, CTD, LabVIEW Champion
DQMH Trusted Advisor
Read about my thoughts on Software Development at sasworkshops.com/blog
GCentral
0 Kudos
Message 3 of 7
(2,485 Views)

Thank for the suggestions. Unfortunately I don't think it is the font, it is the same on both my machine and the server and I even replicated the INI file and it still happens. The problem is it happens when ran on the same machine through a pipeline but it doesn't happen when ran locally on that machine. 

 

0 Kudos
Message 4 of 7
(2,445 Views)

Let us know what happens when you try my suggestion above of putting a breakpoint in the test and showing the tested VI's diagram and Object Highlight to see what the failing object looks like.

0 Kudos
Message 5 of 7
(2,433 Views)

Hi Darren, 

 

Sorry for the delay in responding. Unfortunately because these particular false fails only happen when ran through the pipeline, it is difficult to test this. Anything that requires a popup on the server side makes the pipeline hang-up. So I can add a highlight object and run the gcli command to run VI analyzer on the server and the failed objects for Wires under objects get highlighted. But when ran through the pipeline the VI Analyzer task does not highlight the objects and if I add breakpoints it gets stuck and keeps running without doing anything. 

I guess I can try to record the locations of the failed objects and try to trace them and will be trying to understand if there is anything on the agent settings that prevents popups. But if anybody has any other tips please let me know.

0 Kudos
Message 6 of 7
(2,417 Views)

Another thing you can do is save off an image of the block diagram during the analysis:

Darren_0-1661530044042.png

 

0 Kudos
Message 7 of 7
(2,413 Views)