This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TI's HalCoGenTau (Test Automation Unit) is broken in Windows 10

Other Parts Discussed in Thread: HALCOGEN, SAFETI-HALCOGEN-CSP

Hi All,

I am trying to use TI's HalCoGenTau (Test Automation Unit) with Windows 10 and I’m experiencing some issues.

https://www.ti.com/tool/SAFETI-HALCOGEN-CSP#overview

Part#: HCG-CSP-RM46-NOLDRA

    1. Installation Requirements:
  1. • Windows® Windows version 7 or higher -> we are using windows 10
    • Code Composer StudioTm 5.4 (or higher) -> we are using 10.4.0
    • Microsoft OfficeTm 2007 (or higher) -> 18.2209.1061.0 (after 2021)
    • Perl 5.x. Download Link → http://www.perl.org/get.html#win32

This tool requires the installation of LDRAUnit-TI-Qual 9.4.3 to achieve full functionality. Basically, HalCoGenTau calls LDRAUnit-TiQual’s cmd line app via PERL scripts.

  • Here is a list of Issues with the Perl Scripts that come shipped with TI’s HalCogenTau.
    • Instead of executing the perl script HalCoGenTau seems to open them in a text editor (notepad).
      • This is caused by a change in windows 7 -> Windows 10 where calling a perl scripts seems to have changed
        • Work-around:
          • Any system “system()” call within a perl script requires “perl” to be in front of the script name.
            • Broken: system("$ScriptPath\\ConfigureTestbediniFlags.pl", "COMPRESS_EXH=TRUE");
            • Fixed: system("perl", "$ScriptPath\\ConfigureTestbediniFlags.pl", "COMPRESS_EXH=TRUE");
        • There was also a potential way to fix this by changing windows’ file association mechanism. But scripts are still opened when this is configured.
    • Any path in the perl scripts specified with a double slash i.e. “\\” results in a file unfound error.
    • One of the perl scripts (HCG_Unit_Test.pl  line 415) had an extra “}” closing brace. Meaning that this file was never run or even compiled (wtv that means in perl) before being committed.

This product is used for certifying SAFETY related applications in the Transportation and Aerospace Fields, and it would be nice If support could be provided. Updating installation requirements, the product’s webpage would be a good starting point.

Regard,

William Kolment

Quester Tangent

  • Hi William Kolment,

    Thanks for sharing all these details.

    We started working on your issue and will provide an update ASAP.

    --
    Thanks & regards,
    Jagadish.

  • Hi William Kolment,

    There was also a potential way to fix this by changing windows’ file association mechanism. But scripts are still opened when this is configured.

    This way should work. 

    • Any path in the perl scripts specified with a double slash i.e. “\\” results in a file unfound error.
    • One of the perl scripts (HCG_Unit_Test.pl  line 415) had an extra “}” closing brace. Meaning that this file was never run or even compiled (wtv that means in perl) before being committed.

    I didn't get issue before, and didn't bug report from our customers who used the CSP. 

    But one change should be make in Creat_Make_file_HCG.pl: line 175, change 5 to 20

    I am sorry I don't have a working LDRA on my laptop, so I can not perform any CSP unit/functional test using LDRA tool.

  • Hi QJ,

    I tried the following based on your last POST.

    [1] reverted scripts to original shipped with tool

    [2] re-associated windows .pl extension to perl binary

    [3] Modified -> Creat_Make_file_HCG.pl: line 175, change 5 to 20


    After making changes to .pl file above:
    Click Run -> opens text editor of scripts in the following order

    Execute_HCG_TestCase.pl
    ConfigureTestbediniFlags.pl
    Create_Make_file_HCG.pl
    Generate_TCF.pl
    ConfigureTestbediniFlags.pl
    Unit_test_LDRA.pl

    ConsolidateCodeCoverage.pl
    ConsolidateRegressionReport.pl

    one test suite with one test case was selected.


    Notes:-------------------------------------------------------------
    I'm pretty sure the HalCoGenTau.exe calls at first HCG_GenerateCode.pl.
    Then there is a chain of .pl script calling other .pl script via the "system(script path)" cmd


    So, it looks like re-associating the .pl extension to the perl binary did not work.
    I also verified with a custom perl script that generates a junk log file that script execution happens after
    double-clicking on the file.

  • there is a chain of .pl script calling other .pl script via the "system(script path)" cmd

    You are correct. HCG_GenerateCode.pl calls Execute_HCG_TestCase.pl

    Did you change the association to all the .pl files in scripts folder? I think you have set up your environment variables properly for perl.

  •  I changed the association, see the attached screen shot. 

    1. When I double click on them, the cmd prompt flashes, indicating the perl script ran
    2. In another folder on my computer, I have a perl script that generates a debug bread crumb file. So I known for 100% that the association is set properly
    3. TAU no longer opens the scripts in the editor when run is clicked

    Looking at the log file from my Test\ADC1\FuncTest\ dir  I can see there are more issues when running Generate_TCF.pl

    So, now I'm running into Path issues:

    i.e. when Create_Make_file_HCG.pl is run

    1. my ($FileName, $Path, $suffix) = fileparse($TestName, '\.[^\.]*'); <-- parses input into three parts.
    2. C:\softwaredev\ti\SafeTI-HALCoGen-CSP\RM46x_v04.07.01\HALCoGen\RM46x\Sample_Projects\CSP_RM46L852ZWT_Def\Test\ADC1\FuncTest\ADC1_FT.xlsx
      1. FileName: ADC1_FT
      2. Path: C:\softwaredev\ti\SafeTI-HALCoGen-CSP\RM46x_v04.07.01\HALCoGen\RM46x\Sample_Projects\CSP_RM46L852ZWT_Def\Test\ADC1\FuncTest\
      3. suffix: .xlsx
    3. my $MakeFileName=$Path."\\Debug\\"; <-- is later used for the make file name.
    4. Path with "....FuncTest\... + \\Debug..." -> Functest\\Debug      <--- fails here because of the extra slash

    So after fixing that issue by removing one of those "\", I found another path bug error when running Generate_TCF.pl. See output below:

    "
    Generating TCF :Passed
    Executing Testcase for C:\softwaredev\ti\SafeTI-HALCoGen-CSP\RM46x_v04.07.01\HALCoGen\RM46x\Sample_Projects\CSP_RM46L852ZWT_Def\Test\ADC1\FuncTest\ADC1_FT.tcf
    Can't open perl script ".\ConfigureTestbediniFlags.pl RESULTSDIR=C:\softwaredev\ti\SafeTI-HALCoGen-CSP\RM46x_v04.07.01\HALCoGen\RM46x\Sample_Projects\CSP_RM46L852ZWT_Def\Reports\ADC1_FT"": Invalid argument
    LDRA WorkArea : C:\softwaredev\ldra\ldra_unit_ti_qual_workspace\Qt: Untested Windows version 6.2 detected!"

  • Hi William,

    Did you run the perl scripts from TAU? I don't have a working LDRA license on my laptop, so I am not able to run TAU. But I knew that one customer just completed unit tests and functional tests using TAU and LDRAUnit-TI-Qual 9.4.3. They did all the tests on TMS570LS12x device, and didn't see the problems you mentioned. 

  • So, re-installed all the tools (including LDRA) on a windows 7 VM. The tool is not generating any perl script errors or subsequent compilation failures on windows 7. I also noticed, its not failing on double slashes present in the perl script generated paths. So this is a windows 10 compatibility issue. I suggest you elevate this problem to the software team responsible of the tool. At least mention that there are some issues in windows 10.

  • Thanks William!