Testcase (FB)ΒΆ

FUNCTION_BLOCK Testcase EXTENDS Testcase_Base IMPLEMENTS IBaseIecUnitTest

Base class for a simple test case.

To implement a testcase:

  1. Extend your test from this function block

  2. Add {attribute 'test'} to the FB, so that it is identified as a test

  3. Optionally add any of the following attributes as desired

    • {attribute 'testcategory':='<add categories here>'}

    • {attribute 'testcasename':='<new name>'} to use a testcasename other then the FB name

    • {attribute 'testcasetimeout':='<timeout in ms>'} to alter the default timeout for this test

  4. Add a call to SUPER^() to your implementation of the FB.

  5. Overwrite method Execute() to implement your test

  6. Optionally overwrite any of the following methods as desired

InOut:

Scope

Name

Type

Comment

Inherited from

Input

xExecute

BOOL

Rising edge: Action starts
Falling edge: Resets outputs
If a falling edge occurs before the function block has completed its action, the outputs operate in the usual manner and are only reset if either the action is completed or in the event of an error. In this case, the corresponding output values (xDone, xError, iError) are present at the outputs for exactly one cycle.

ETrigA

xAbort

BOOL

TRUE: Action is stopped immediately and all outputs are reset to their initial values.

ETrigA

Output

xDone

BOOL

TRUE: Action successfully completed

ETrigA

xBusy

BOOL

TRUE: Function block active

ETrigA

xError

BOOL

TRUE: Error occurred, function block aborts action
FALSE: No error

ETrigA

xAborted

BOOL

TRUE : Action aborted by user

ETrigA

xFinished

BOOL

Testcase_Base

sInfo

WSTRING(Constants.WSTRING_LENGTH)

additional information (e.g. an error text)

Methods:

Structure: