Working with Projects

For XJIntegration to be used, an existing project must first be loaded. This can take the form of an XJPack file (*.xjp) or, if a valid XJDeveloper licence is in place, an XJDeveloper project file (*.xjd). The XJPack file is the recommended one to use because it avoids the risk of accidentally causing problems by updating a project in XJDeveloper after an XJIntegration project has been created.

  • An XJPack file can be created in XJDeveloper using the File/Export Project/To XJPack File... option.

There are 2 classes of project:

  • RunnerProject: allows XJRunner Integration to be used
  • AnalyserProject: allows XJAnalyser Integration to be used

In both cases, a string is used to pass in the name of the relevant XJPack file. For example, in C#, the RunnerProject object can be instantiated as follows:

var project = new RunnerProject(@"C:\Users\Public\Documents\XJTAG 4.2\Demo Board v4\XJDemo4.xjp");

In LabVIEW, projects are opened as shown in the example of Figure 4 below, which shows the XJTAG OPEN PROJ VI and its lower-level functions. It is taken from the example XJTAG Single Test Run.vi, the code for which is included in the XJTAG installation; available VIs are described in the section on Examples of Use.

  • When re-using any of the example VIs, because they are inter-dependent, either reference them in their original installed location or copy them all into your LabVIEW project location. Do not just copy a single VI into your new LabVIEW project.
XJTAG OPEN PROJ loads the project with filename defined here, with an optional input to specify a variant name. This output is the refnum for the runner project, which is passed to a VI to run that project’s tests. A TestCollection refnum representing the tests defined in the project is output here. The project defined by the file path is loaded. GetTestList() is used to create a TestCollection object representing all the tests included in the project, with the default set of tests enabled to run.

Figure 4: Using XJTAG LOAD PROJ

Closing a project

When all the testing that uses an open project has been completed, that project can be disposed.

  • The project should not be closed after every test. A project should be left open until all the testing work has been finished that uses that project. Repeated opening and closing of a project is costly in time and could cause resource problems. See also Changing Projects.

In C#, a project is disposed as follows:

Projectname.Dispose();

The LabVIEW example XJTAG Single Test Run.vi shows how a project can be closed using CloseProject.vi as illustrated below:

The Runner Project refnum is passed to the CloseProject.vi on its Project input terminal. CloseProject.vi handles closing the project, by calling DisposeDotNet.vi.

Figure 5: Closing a Project in LabVIEW

It should be noted that, in this example, no more boards are to be tested using the loaded project, and so the project is disposed at this point. However, it is important to remember that, if further tests are to be run using that project, it should be left instantiated.