mftf 1.24 KB
#!/usr/bin/env php

<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

if (PHP_SAPI !== 'cli') {
    echo 'bin/mftf must be run as a CLI application';
    exit(1);
}

$autoloadPath = realpath(__DIR__ . '/../../../autoload.php');
$testBootstrapPath = realpath(__DIR__ . '/../dev/tests/functional/standalone_bootstrap.php');

try {
    if (file_exists($autoloadPath)) {
        require_once $autoloadPath;
    } else {
        require_once $testBootstrapPath;
    }
} catch (\Exception $e) {
    echo 'Autoload error: ' . $e->getMessage();
    exit(1);
}


try {
    $application = new Symfony\Component\Console\Application();
    $application->setName('Magento Functional Testing Framework CLI');
    $application->setVersion('2.3.14');
    /** @var \Magento\FunctionalTestingFramework\Console\CommandListInterface $commandList */
    $commandList = new \Magento\FunctionalTestingFramework\Console\CommandList;
    foreach ($commandList->getCommands() as $command) {
        $application->add($command);
    }
    $application->run();
} catch (\Exception $e) {
    while ($e) {
        echo $e->getMessage();
        echo $e->getTraceAsString();
        echo "\n\n";
        $e = $e->getPrevious();
    }
    exit(1);
}