ZenoTest
ZenoTest — Windows desktop UI test automation for Qt, WPF, WinForms & native apps. Record, script, and run automated GUI tests with CI/CD integration.

do...while

do
{
    // statements
}
while (condition);

Description
Executes the enclosed block of statements first, then evaluates the condition.
If the condition is true, the loop repeats. If false, the loop terminates.
Unlike while, the body is always executed at least once, because the condition is checked after the first iteration.
The break keyword can be used inside the loop body to exit the loop prematurely.

Condition
- The condition must be a boolean expression. It is evaluated after each loop iteration.
- If the condition evaluates to false (or the expression is not of type bool), the loop terminates.

Special Keywords
- break - Exits the do...while loop immediately, regardless of the condition.

Example
void main()
{
    // Body executes at least once
    int i = 0;
    do
    {
        Print(i);
        i++;
    }
    while (i < 5);
    // Output: 0, 1, 2, 3, 4

    // Body runs once even though condition is false
    int x = 10;
    do
    {
        Print(x);
    }
    while (x < 5);
    // Output: 10

    // Example with break
    int y = 0;
    do
    {
        if (y == 3)
        {
            break;
        }
        Print(y);
        y++;
    }
    while (true);
    // Output: 0, 1, 2
}
#define #include abs Array ceil CloseAUT Console mode do...while DoubleClick DragAndDrop Execute Fail File floor for Format GetAUTFileVersion GetAUTProductVersion GetAUTQtVersion GetAUTSuspectedCompiler GetAUTSuspectedFramework GetClipboard GetCurrentDate GetCurrentTime GetCurrentWorkingDir GetEnv GetName GetProcessID GetProcessIDHandle GetQtProperty GetText GetTimestamp GetValue Handle HasFocus IsAUT64Bit IsChecked IsEnabled IsVisible LeftMouseClick LeftMouseDown LeftMouseUp max MiddleMouseClick MiddleMouseDown MiddleMouseUp min MouseMove MouseWheel Pass pow Predefined Constants Print rand Regex RegexMatch RightMouseClick RightMouseDown RightMouseUp round Script Language SendKeys SendMessage SetClipboard SetFocus SetGlobal SetQtProperty ShellProcess Sleep sqrt srand StartAUT string TerminateProcess TimerStart TimerStop TimerVerifyLess vec2d VerifyContains VerifyEmpty VerifyEndsWith VerifyEqual VerifyExists VerifyFalse VerifyGreater VerifyGreaterEqual VerifyLess VerifyLessEqual VerifyNotEqual VerifyNotExists VerifyScreenCompareEdgeBased VerifyScreenComparePixelExact VerifyStartsWith VerifyTrue WaitForControl WaitUntilEnabled WaitUntilVisible while