2018 bis heute | 2017 2016 2015 2014 | 2013 | 2012

Mailingliste - Einträge 2018 bis heute

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title></title>
<meta name="GENERATOR" content="MSHTML 8.00.6001.23286">
</head>
<body bgcolor="#ffffff" text="#000000">
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">Hi all,</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial"></font></span> </div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">does anyone has experience in using the build system Gradle to run QF-Test suites and to check the process result return value?</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial"></font></span> </div>
<div><span class="839142316-28032012"><font color="#0000ff" face="Arial"><font size="2">Gradle's marketing [http://www.gradle.org]  tells us: "<font color="#000000" face="Times New Roman">Gradle is build automation
<em>evolved</em>. </font></font></font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" face="Arial"><font size="2"><font color="#000000" face="Times New Roman">Gradle combines the power and flexibility of
<a href="http://ant.apache.org/">Ant</a> with the dependency management and conventions of
<a href="http://maven.apache.org/">Maven</a> into a more effective way to build. </font>
</font></font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" face="Arial"><font size="2"><font color="#000000" face="Times New Roman">Powered by a Groovy DSL..."</font></font></font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial"></font></span> </div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">Especially the possibility to integrate QF-Test suite execution with Groovy -- that is already a QF-Test scripting language - could make this approach interesting.</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">However, I'm not sure if my first Gradle solution is really an optimal solution.</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial"></font></span> </div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">So, perhaps other QF-Test users have ideas or comments ...</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial"></font></span> </div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">Best regards</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">Klaus Peter Berg</font></span></div>
<div><span class="839142316-28032012"></span><span class="839142316-28032012"><font color="#0000ff" size="2" face="Arial">__________________________________________</font></span></div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Courier New">/*
<br>
 QF-Test GRADLE build file for Windows OS.<br>
</font><font color="#0000ff" size="2" face="Courier New">*/<br>
    <br>
defaultTasks 'runAllTests'</font></span></div>
<div><font color="#0000ff" size="2" face="Courier New"></font> </div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Courier New">def basedir = "."<br>
def logdir = "$basedir"<br>
def suite = "../../Test_Suites/AllTests"<br>
def testcase = "Run all tests"<br>
def reportDir = "$basedir/report"<br>
def qftest = null<br>
env = System.getenv()</font></span></div>
<div><font color="#0000ff" size="2" face="Courier New"></font> </div>
<div><span class="839142316-28032012"><font color="#0000ff" size="2" face="Courier New">task checkProperties {<br>
    if (!env.QFTEST_HOME) {<br>
        throw new Exception("No Windows environment variable 'QFTEST_HOME' found!")<br>
    }<br>
    qftest = "${env.QFTEST_HOME}/bin/qftest.exe"<br>
}</font></span></div>
<div><font color="#0000ff" size="2" face="Courier New"></font> </div>
<span class="839142316-28032012">
<div><br>
<font color="#0000ff" size="2" face="Courier New">task runAllTests(dependsOn: 'checkProperties') {<br>
    def reportDirFile = new File(reportDir)<br>
    if (reportDirFile.exists()) {<br>
        reportDirFile.deleteDir() // delete directory with all it's subdirectories and files<br>
    }<br>
    else {<br>
        reportDirFile.mkdirs()<br>
    }</font></div>
<div><font color="#0000ff" size="2" face="Courier New"></font> </div>
<div><font color="#0000ff" size="2" face="Courier New">    def result = 0<br>
    try {<br>
        result = exec {<br>
            executable = qftest<br>
            args = ['-J-Duser.language=en', '-batch', '-runlog', "$logdir/+b", '-report', reportDir, '-test', testcase, "${suite}.qft"]<br>
        }           <br>
    }<br>
    catch (org.gradle.process.internal.ExecException ex) {<br>
        def regex = /^.+finished with \(non-zero\) exit value ([1-3])\.$/<br>
        def matcher = (ex.message =~ regex)<br>
        def exitCode = matcher[0][1]<br>
        switch (exitCode) {<br>
            case '1': println "\nTest terminated with warnings."<br>
                break<br>
            case '2': println "\nTest terminated with errors!"<br>
                break<br>
            case '3': println "\nTest terminated with exceptions!"<br>
                break<br>
            default:<br>
                println "Test result undetermined: $exitCode"<br>
        }<br>
        println()<br>
    }<br>
    if (result == 0) {<br>
        println "Test terminated successfully."<br>
    }<br>
}</font></span></div>
</body>
</html>