Skip to content

Provide Semi-Automatic Integration Test using AllTypesFESA.silecsdesign

@m.marn: While I further think about it, I suppose it could be beneficial to not introduce the creation/processing of a fully fledged Fesa class into silecs-testing, but instead only test our generated AllTypes.cpp/AllTypes.h by injecting some Fake classes. As far as I can see, we would need Fake-classes for ServiceLocator, MultiplexingContext, Device, MyRWBlockPropPropertyData, MyWOBlockPropPropertyData and MyCBlockPropPropertyData.

You think it would make sense to Test like that ? Or would you rather go for a full Fesa-Class ?

Besides that, suppose we would net something like this:

  • Create some IntegrationTesting.sh script (mention that in the README.md), in order to guide the user through steps which should be done for an integration test. Roughly:
    • Mention that we only can test Device and Blockmode for Siemens SIMATIC_S7-1500 - TIA Portal (Our testing system on tsts7001)
    • Build & Install silecs locally
    • Ask user to upload SiemensStep7Block.scl file to the testing PLC (We have to upload twice, due to #96)
    • Run testing client (or Fesa class) with the according *.silecsparam
    • Ask user to upload SiemensStep7Device *.scl file to the testing PLC
    • Run testing client (or Fesa class) with the according *.silecsparam
    • Launch silecs-diagnostic and ask the user to press some buttons to at least test to connect and get/set some value

The testing client(or Fesa class) should get/set each possible PLC value via the different get/setOneDevice/someDevice/AllDevices methods

Edited by al.schwinn