ErrorItems errors = dte.ToolWindows.ErrorList.ErrorItems;
我只能读取和显示消息1到10。TwinCAT System (10000) or PlcTask (350
):dte.ToolWindows.ErrorList.ErrorItems;
不会捕获吗?Show output from build and Show output from twinCAT
。VS2013控制台输出:
Message 1 The application is up to date 0 0 Message 2 Build complete -- 0 errors, 0 warnings : ready for download! 0 0 Message 3 Additional code checks ... 0 0 Error 4 SA0033: Unused Variable 'fbSum_Test' UnitTestJenkins (UnitTestJenkins\UnitTestJenkins) Error 5 SA0033: Unused Variable 'fbDegreesToRadians' 4 1 UnitTestJenkins (UnitTestJenkins\UnitTestJenkins) Error 6 SA0033: Unused Variable 'data' FB_DegreesToRadians_Test.DegreesToRadians_Test1 3 1 UnitTestJenkins (UnitTestJenkins\UnitTestJenkins) Message 7 Additional code checks complete -- 3 errors 0 0 Message 8 Generate TMC information ... 0 0 Message 9 Import symbol information ... 0 0 Message 10 generate boot information... PLC.UnitTestJenkins 0 0 UnitTestJenkins (UnitTestJenkins\UnitTestJenkins) Message 11 29.11.2019 09:52:58 477 ms | 'TwinCAT System' (10000): Ein Neustart des TwinCAT Systems wurde von AmsNetId: 10.73.8.239.1.1 Port 32867 angefordert. Message 12 29.11.2019 09:52:58 614 ms | 'TwinCAT System' (10000): Konfiguration des COM Servers TcEventLogger wird gesichert! Message 13 29.11.2019 09:52:59 440 ms | 'TwinCAT System' (10000): COM Servers TcEventLogger wird heruntergefahren! Message 14 29.11.2019 09:53:01 467 ms | 'TwinCAT System' (10000): Konfiguration des COM Servers TcEventLogger wird geladen! Message 15 29.11.2019 09:53:01 468 ms | 'TwinCAT System' (10000): COM Server TcEventLogger wird initialisiert! Message 16 29.11.2019 09:53:01 517 ms | 'TwinCAT System' (10000): TcIo Server wurde gestartet: TcIo. Message 17 29.11.2019 09:53:01 530 ms | 'TwinCAT System' (10000): TcPlc30 Server wurde gestartet: TcPlc30. Message 18 29.11.2019 09:53:01 537 ms | 'TwinCAT System' (10000): TcRtsObjects Server wurde gestartet: TcRtsObjects. Message 19 29.11.2019 09:53:01 543 ms | 'TwinCAT System' (10000): TcRTime Server wurde gestartet: TcRTime. Message 20 29.11.2019 09:53:01 660 ms | 'License Server' (30): license validation status is Valid(3) Message 21 29.11.2019 09:53:01 704 ms | 'TCRTIME' (200): Intel(R) Core(TM)-i 4'th generation detected Message 22 29.11.2019 09:53:02 078 ms | 'TwinCAT System' (10000): COM Server TcEventLogger wird gestartet! Error 23 29.11.2019 09:53:02 108 ms | 'PlcTask' (350): FAILED TEST 'PRG_TEST.fbSum_Test@TwoPlusTwoEqualsFour', EXP: 4, ACT: 3, MSG: The calculation is not correct Error 24 29.11.2019 09:53:02 168 ms | 'PlcTask' (350): FAILED TEST 'PRG_TEST.fbDegreesToRadians@DegreesToRadians_Test1', EXP: 0.0, ACT: 0.01745329, MSG: The calculation is not correct Error 25 29.11.2019 09:53:02 228 ms | 'PlcTask' (350): FAILED TEST 'PRG_TEST.fbDegreesToRadians@DegreesToRadians_Test2', EXP: 1.0, ACT: 0.01745329, MSG: The calculation is not correct Error 26 29.11.2019 09:53:02 388 ms | 'PlcTask' (350): | ==========TESTS FINISHED RUNNING========== Error 27 29.11.2019 09:53:02 708 ms | 'PlcTask' (350): | Test suites: 2 Error 28 29.11.2019 09:53:03 028 ms | 'PlcTask' (350): | Tests: 4 Error 29 29.11.2019 09:53:03 348 ms | 'PlcTask' (350): | Successful tests: 1 Error 30 29.11.2019 09:53:03 668 ms | 'PlcTask' (350): | Failed tests: 3 Error 31 29.11.2019 09:53:03 988 ms | 'PlcTask' (350): | ======================================
Jenkins控制台上的输出:[只能读取前10条消息]
ActivateConfiguration Errors count: 10 vsBuildErrorLevelLow: Description: The application is up to date vsBuildErrorLevelLow: Description: Build complete -- 0 errors, 0 warnings : ready for download! vsBuildErrorLevelLow: Description: Additional code checks ... vsBuildErrorLevelHigh: Description: SA0033: Unused Variable 'fbSum_Test' vsBuildErrorLevelHigh: Description: SA0033: Unused Variable 'fbDegreesToRadians' vsBuildErrorLevelHigh: Description: SA0033: Unused Variable 'data' vsBuildErrorLevelLow: Description: Additional code checks complete -- 3 errors vsBuildErrorLevelLow: Description: Generate TMC information ... vsBuildErrorLevelLow: Description: Import symbol information ... vsBuildErrorLevelLow: Description: generate boot information... Exit code is 1
C#代码:
//5.4.1 ITcPlcProject - Automation Interface document ITcSmTreeItem plcProjectRootItem = sysMan.LookupTreeItem("TIPC^UnitTestJenkins"); ITcPlcProject iecProjectRoot = (ITcPlcProject)plcProjectRootItem; iecProjectRoot.BootProjectAutostart = true; iecProjectRoot.GenerateBootProject(true); sysMan.ActivateConfiguration(); sysMan.StartRestartTwinCAT(); ErrorItems ActivateConfigurationErrors = dte.ToolWindows.ErrorList.ErrorItems; Console.WriteLine("ActivateConfiguration Errors count: " + ActivateConfigurationErrors.Count); for (int i = 1; i <= ActivateConfigurationErrors.Count; i++) { ErrorItem item = ActivateConfigurationErrors.Item(i); Console.WriteLine(item.ErrorLevel + ": " + "Description: " + item.Description); }
请查看输出的屏幕截图:Build&TwinCAToutput
使用自动化接口,我可以在TwinCAT 3.1.4024.4中构建和启动激活配置。如果同一项目在正常运行和激活配置下,则消息和错误为...
我看到您正在使用TcUnit。问题在于,您在收集ErrorItem之前没有等待TcUnit完成。仅在执行ActivateConfiguration()和StartRestartTwincat()之后才收集错误项(这就是为什么只获得前10个)。您需要等待TcUnit完成。