Testing framework for PLC programs