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