in mustella/src/main/java/marmotinni/MarmotinniRunner.java [198:262]
public static void main(String[] args)
{
ArrayList<String> scripts = new ArrayList<String>();
Map<String, String> argsMap = new HashMap<String, String>();
for (String arg : args)
{
String[] keyValuePair = arg.split("=");
if (keyValuePair[0].equals("script"))
scripts.add(keyValuePair[1]);
else
argsMap.put(keyValuePair[0], keyValuePair[1]);
}
final String showScriptsArg = argsMap.get("showScripts");
TestStep.showScripts = showScriptsArg != null && showScriptsArg.equalsIgnoreCase("true");
final String showStepsArg = argsMap.get("showSteps");
TestCase.showSteps = showStepsArg != null && showStepsArg.equalsIgnoreCase("true");
final String url = argsMap.get("url");
System.out.println(url);
final String browser = argsMap.get("browser");
WebDriver driver;
if (browser != null && browser.equalsIgnoreCase("chrome"))
driver = new ChromeDriver();
else
{
//set webdriver.gecko.driver at launch time via Ant or Maven or command-line
//System.setProperty("webdriver.gecko.driver", driverPath);
//DesiredCapabilities capabilities = DesiredCapabilities.firefox();
FirefoxOptions ffo = new FirefoxOptions();
//ffo.setLogLevel(FirefoxDriverLogLevel.TRACE);
//capabilities.setCapability("marionette", true);
driver = new FirefoxDriver(ffo);
}
driver.get(url);
int exitCode = 0;
try
{
MarmotinniRunner mr = new MarmotinniRunner();
final String verboseXMLParsingArg = argsMap.get("verboseXMLParsing");
mr.verboseXMLParsing = verboseXMLParsingArg != null && verboseXMLParsingArg.equalsIgnoreCase("true");
int n = scripts.size();
for (int i = 0; i < n; i++)
{
if (!mr.runTest(driver, scripts.get(i)))
{
System.out.println("script failed");
exitCode = 1;
}
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
e.printStackTrace();
exitCode = 1;
}
finally
{
driver.quit();
}
System.exit(exitCode);
}