Exemplo n.º 1
0
function updowndata($buildSearched, $component = null, $caseIDarg = null)
{
    $version = getVersionFromBuild($buildSearched);
    // get up/down data for a build
    if ($component == null) {
        $arrData = createDataForUpDown($buildSearched);
    } elseif ($component != null) {
        $arrData = createDataForUpDownComponent($buildSearched, $component);
    } elseif ($caseID != null) {
        $arrData = createDataForUpDownCase($buildSearched, $caseIDarg);
    }
    if (!is_array($arrData)) {
        return "not_array";
    }
    // extract searched build data
    $buildData = array();
    foreach ($arrData as $release => $releaseData) {
        foreach ($releaseData[builds] as $buildNum => $build) {
            if ($buildNum == $buildSearched) {
                $buildData = $build;
                break;
            }
        }
    }
    // create results array
    $moduleArr = array();
    foreach ($buildData[rel] as $versionFull => $release) {
        $relID = getVersionIDFromVersionFull($versionFull);
        if (!is_array($moduleArr[$relID][categories])) {
            $moduleArr[$relID][categories] = array();
        }
        foreach ($release[cases] as $caseID => $case) {
            if (!is_array($moduleArr[$relID][categories][$case[category]])) {
                $moduleArr[$relID][categories][$case[category]] = array();
                if (!is_array($moduleArr[$relID][categories][$case[category]][modules][$case[component]])) {
                    $moduleArr[$relID][categories][$case[category]][modules][$case[component]] = array();
                }
            }
            $moduleArr[$relID][categories][$case[category]][modules][$case[component]][cases][$caseID] = $case;
        }
    }
    foreach ($moduleArr as $relID => $rel) {
        $modNames = array();
        $catNames = array();
        $pass = $fail = $time = 0;
        foreach ($rel[categories] as $catName => $category) {
            array_push($catNames, "'" . $catName . "'");
            $passC = $failC = $timeC = 0;
            foreach ($category[modules] as $modName => $module) {
                array_push($modNames, "'" . $modName . "'");
                $passM = $failM = $timeM = 0;
                foreach ($module[cases] as $caseID => $case) {
                    $timeC += $case[time];
                    $timeM += $case[time];
                    $time += $case[time];
                    if (!($case[time] > 0)) {
                        $case[time] = 1;
                    }
                    $moduleArr[$relID][categories][$catName][modules][$modName][cases][$caseID][time] = date("i:s", mktime(0, 0, $case[time]));
                    if ($case[status] == "PASSED") {
                        $passM++;
                    } elseif ($case[status] != "RUNNING") {
                        $failM++;
                    }
                }
                //email
                if ($failM == 0) {
                    $moduleArr[$relID][categories][$catName][modules][$modName][email] = 0;
                } else {
                    $moduleArr[$relID][categories][$catName][modules][$modName][email] = 1;
                }
                if ($gren == "grenreg") {
                    $moduleArr[$relID][categories][$catName][modules][$modName][stats] = createTPFtableGren($passM, $failM, $version, $buildSearched, $modName, $catName, "yes");
                    $moduleArr[$relID][categories][$catName][modules][$modName][chart] = createBarChartForGrenReg($passM + $failM, $passM, $failM, $buildSearched, $version, $modName, $catName, "yes");
                } else {
                    $moduleArr[$relID][categories][$catName][modules][$modName][stats] = createTPFtableUpDown($relID, $passM, $failM, $version, $buildSearched, $modName, $catName, "yes");
                    $moduleArr[$relID][categories][$catName][modules][$modName][chart] = createBarChartForRegression2($passM + $failM, $passM, $failM, $buildSearched, $version, $modName, $catName, "yes");
                }
                $moduleArr[$relID][categories][$catName][modules][$modName][time] = Sec2Time($timeM);
                $commentData = getModuleCommentsUpDown($modName, $catName, $buildSearched, $version, $relID);
                $ownerData = getModuleOwners($modName);
                $moduleArr[$relID][categories][$catName][modules][$modName][sqaOwner] = $ownerData[sqa];
                $moduleArr[$relID][categories][$catName][modules][$modName][devOwner] = $ownerData[dev];
                $moduleArr[$relID][categories][$catName][modules][$modName][autOwner] = $ownerData[auto];
                if (is_array($commentData)) {
                    $moduleArr[$relID][categories][$catName][modules][$modName][comment] = $commentData[comment];
                    $moduleArr[$relID][categories][$catName][modules][$modName][bugLink] = createModuleBugField($commentData[bugs]);
                    $moduleArr[$relID][categories][$catName][modules][$modName][bugs] = $commentData[bugs];
                }
                $passC += $passM;
                $failC += $failM;
            }
            $moduleArr[$relID][categories][$catName][stats] = createTPFtable2($passC, $failC, $version, $buildSearched, "", $catName, "");
            $moduleArr[$relID][categories][$catName][chart] = createBarChartForRegression2($passC + $failC, $passC, $failC, $buildSearched, $version, $modName, $catName, "");
            $moduleArr[$relID][categories][$catName][time] = Sec2Time($timeC);
            $pass += $passC;
            $fail += $failC;
        }
        $moduleArr[$relID][stats] = createTPFtable2($pass, $fail, $version, $buildSearched, "", "", "");
        $moduleArr[$relID][chart] = createBarChartForRegression2($pass + $fail, $pass, $fail, $buildSearched, $version, $modName, $catName, "");
        $moduleArr[$relID][time] = Sec2Time($time);
        $moduleArr[$relID][modNames] = implode(",", array_unique($modNames));
        $moduleArr[$relID][catNames] = implode(",", array_unique($catNames));
        $moduleArr[$relID][fullname] = getVersionFullFromVersionID($relID);
    }
    // sort category / component names in alphabetical order
    $relNames = array();
    foreach ($moduleArr as $relID => $rel) {
        // store updown release names
        array_push($relNames, $relID);
        ksort($moduleArr[$relID][categories], SORT_STRING);
        foreach ($rel[categories] as $catName => $module) {
            ksort($rel[categories][$catName][modules], SORT_STRING);
        }
    }
    $result = array();
    array_push($result, $moduleArr);
    array_push($result, implode(",", $relNames));
    return $result;
}
Exemplo n.º 2
0
function format_use_time($time)
{
    $array = Sec2Time($time);
    return $array['string'];
}
Exemplo n.º 3
0
        //$moduleArr[categories][$cat][modules][$comp][comment] ='Yet to Run in this build';
        $moduleArr[categories][$cat][modules][$comp][basetable] = createBasetable(0, $baseValue[$comp]);
        $commentData = getModuleComments($comp, $cat, $build, $version, $regr);
        $ownerData = getModuleOwners($modName);
        $moduleArr[categories][$cat][modules][$comp][comment] = $commentData[comment];
        $moduleArr[categories][$cat][modules][$comp][bugLink] = createModuleBugField($commentData[bugs]);
        $moduleArr[categories][$cat][modules][$comp][bugs] = $commentData[bugs];
        $moduleArr[categories][$cat][modules][$comp][bugsOld] = $commentData[bugsOld];
        $moduleArr[categories][$cat][modules][$comp][bugLinkOld] = createModuleBugField($commentData[bugsOld]);
    }
    $moduleArr[basetable] = createBasetable($pass + $fail, $baseVal + $catextra);
}
//////4. till here///////////////////
$moduleArr[stats] = createTPFtable2($pass, $fail, $version, $build, "", "", "", "platform.php");
$moduleArr[chart] = createBarChartForReg($pass + $fail, $pass, $fail, $build, $version, $modName, $catName, 0);
$moduleArr[time] = Sec2Time($time);
///////////////////////////////////////////////////
###########################################################################################################################
// sort category / component names in alphabetical order
ksort($moduleArr[categories], SORT_STRING);
foreach ($moduleArr[categories] as $catName => $module) {
    ksort($moduleArr[categories][$catName][modules], SORT_STRING);
}
###########################################################################################################################
// export to excel
if ($regr == "phase") {
    $build = $_GET[build];
}
$index = 1;
$filename = "casedata/exportData" . $build . ".csv";
exec('chmod 777 /casedata/');
Exemplo n.º 4
0
        $casesUpDown[$caseID][countID] = $i;
        $i++;
        $time += $case[time];
        if ($case[status] == "PASSED") {
            $passed++;
        } elseif ($case[status] != "RUNNING") {
            $failed++;
        }
    }
    $smarty = new TLSmarty();
    $smarty->assign('flag', $flag);
    $smarty->assign('testcases', $casesUpDown);
    $smarty->assign('version', $version);
    $smarty->assign('build', $build);
    $smarty->assign('mod', $mod);
    $smarty->assign('cat', $cat);
    $smarty->assign('rap', $rap);
    $smarty->assign('gren', $gren);
    $smarty->assign('regr', $regression);
    $smarty->assign('relID', $relIDarg);
    $smarty->assign('updown', $updown);
    $smarty->assign('count', count($casesUpDown));
    $smarty->assign('pass', $passed);
    $smarty->assign('fail', $failed);
    $smarty->assign('time', Sec2Time($time));
    $smarty->assign('platform', $_GET['platform']);
    $smarty->assign('moduleArrUpDown', $results[0]);
    $smarty->assign('relNames', $results[1]);
    $smarty->assign('updownStatus', is_array($results) ? "" : "not_array");
    $smarty->display('platform.tpl');
}
Exemplo n.º 5
0
function createDataForRegBuild($build)
{
    $buildDataArr = array();
    #      if ($build < 18344 || $build > 99999) return;
    // establish connection to DB
    $linkID = connectDB();
    // get a list of runIDs for this build
    $runIDsArr = getLatestRegRunsForBuild($build);
    if ($runIDsArr == "") {
        return " has NO RUNS!<br>PLEASE SEARCH ANOTHER BUILD!";
    }
    foreach ($runIDsArr as $runID => $build) {
        $caseDataArr = array();
        $passed = $running = $failed = $time = 0;
        $caseIDsArr = getCasesNoPlatform($runID);
        if (!$caseIDsArr) {
            continue;
        }
        ereg("([0-9]+\\.[0-9]+).+", $build[version], $regs);
        $release = $regs[1];
        foreach ($caseIDsArr as $caseID) {
            $caseStatusRow = getCaseStatusWithModules($runID, $caseID);
            if (!ereg('^SETUP', $caseStatusRow['caseName']) && !ereg('^CLEANUP', $caseStatusRow['caseName'])) {
                $buildDataArr[$release][builds][$build[build]][version] = $build[version];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][title] = formatCaseTitle($caseStatusRow['caseName']);
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][component] = $caseStatusRow['component'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][category] = $caseStatusRow['category'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][script] = $caseStatusRow['script'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][status] = $caseStatusRow['caseStatus'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][started] = $caseStatusRow['startedCase'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][time] = $caseStatusRow['caseExecutionTime'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][log] = $build[runlog] . $caseStatusRow['scriptlog'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][notes] = $caseStatusRow['caseRunComments'];
            }
        }
        //end case
    }
    //end run
    foreach ($buildDataArr as $release => $releaseData) {
        $time_release = 0;
        foreach ($releaseData[builds] as $versionID => $build) {
            $case_count = 0;
            foreach ($build[cases] as $caseID => $case) {
                $i = 0;
                foreach ($case[runs] as $runID => $run) {
                    if ($case_count == 0) {
                        $runArr = end($buildDataArr[$release][builds][$versionID][cases][$caseID][runs]);
                        $buildDataArr[$release][builds][$versionID][started] = $runArr[started];
                    }
                    if ($i == 0) {
                        // get runStatus from runID
                        $buildDataArr[$release][builds][$versionID][runstatus] = getRunStatusForReg($versionID);
                        if ($run[status] == "PASSED" || $run[status] == "RUNNING") {
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][status] = $run[status];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][time] = $run[time];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][started] = $run[started];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][log] = $run[log];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][notes] = $run[notes];
                            break;
                        } else {
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][status] = $run[status];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][time] = $run[time];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][started] = $run[started];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][log] = $run[log];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][notes] = $run[notes];
                        }
                    }
                    if ($run[status] == "PASSED") {
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][status] = $run[status];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][time] = $run[time];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][started] = $run[started];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][log] = $run[log];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][notes] = $run[notes];
                        break;
                    }
                    $i++;
                }
                $case_count++;
            }
            $passed = $failed = $running = 0;
            foreach ($buildDataArr[$release][builds][$versionID][cases] as $caseID => $case) {
                if (!ereg('^SETUP', $case[title]) && !ereg('^CLEANUP', $case[title])) {
                    if ($case[status] == "PASSED") {
                        $passed++;
                    } elseif ($case[status] == "RUNNING") {
                        $running++;
                    } else {
                        $failed++;
                    }
                }
                $time_release += $case['time'];
            }
            $total = $passed + $failed;
            if ($total != 0) {
                $buildDataArr[$release][builds][$versionID][total] = $total;
                $buildDataArr[$release][builds][$versionID][passed] = $passed;
                $buildDataArr[$release][builds][$versionID][running] = $running;
                $buildDataArr[$release][builds][$versionID][failed] = $failed;
                $buildDataArr[$release][builds][$versionID][status] = getPassFailStatus($failed, $buildDataArr[$release][builds][$versionID][runstatus]);
            }
        }
        //end build
        $buildDataArr[$release][time] = Sec2Time($time_release);
    }
    //end release
    mysql_close($linkID);
    insertRegressionToDB($buildDataArr);
    return $buildDataArr;
}
Exemplo n.º 6
0
function createDataForPhaseBuild($phase, $dataType = "smoke")
{
    $buildDataArr = array();
    $SC_TIMES = array();
    $linkID = connectDB();
    $build = getBuildFromTable($phase);
    if ($dataType == "phase") {
        $runIDsArr = getLatestPhaseRunsForBuild($build, $phase);
        $tableQuery = "phaseResults";
    } else {
        $runIDsArr = getLatestRegRunsForBuild($build);
        $tableQuery = "regressionResults";
    }
    if ($runIDsArr == "") {
        return " has NO RUNS!<br>PLEASE SEARCH ANOTHER BUILD!";
    }
    foreach ($runIDsArr as $runID => $build) {
        $caseDataArr = array();
        $passed = $running = $failed = $time = 0;
        $caseIDsArr = getPhaseCasesNoPlatform($runID);
        if (!$caseIDsArr) {
            continue;
        }
        ereg("([0-9]+\\.[0-9]+).+", $build[version], $regs);
        $release = $regs[1];
        foreach ($caseIDsArr as $caseID) {
            $caseStatusRow = getPhaseCaseStatusWithModules($runID, $caseID);
            if ($caseStatusRow['caseStatus'] != 'NOTATTEMPTED' && !ereg('^SETUP', $caseStatusRow['caseName']) && !ereg('^CLEANUP', $caseStatusRow['caseName'])) {
                $buildDataArr[$release][phase] = $phase;
                $buildDataArr[$release][version] = $build[version];
                $buildDataArr[$release][builds][$build[build]][version] = $build[version];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][title] = formatCaseTitle($caseStatusRow['caseName']);
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][component] = $caseStatusRow['component'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][category] = $caseStatusRow['category'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][script] = $caseStatusRow['script'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][status] = $caseStatusRow['caseStatus'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][started] = $caseStatusRow['startedCase'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][time] = $caseStatusRow['caseExecutionTime'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][log] = $build[runlog] . $caseStatusRow['scriptlog'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][notes] = $caseStatusRow['caseRunComments'];
                $buildDataArr[$release][builds][$build[build]][cases][$caseID][runs][$runID][inbuild] = $build[inbuild];
                // CASE RUN TIME: ALL RUNS + SETUP/CLEANUP
                //
                if (!isset($buildDataArr[$release][builds][$build[build]][cases][$caseID][time])) {
                    $buildDataArr[$release][builds][$build[build]][cases][$caseID][time] = $caseStatusRow['caseExecutionTime'];
                } else {
                    $buildDataArr[$release][builds][$build[build]][cases][$caseID][time] += $caseStatusRow['caseExecutionTime'];
                }
            } else {
                if (!isset($SC_TIMES[$caseStatusRow['script']][time])) {
                    $SC_TIMES[$caseStatusRow['script']][time] = $caseStatusRow['caseExecutionTime'];
                } else {
                    $SC_TIMES[$caseStatusRow['script']][time] += $caseStatusRow['caseExecutionTime'];
                }
            }
        }
        //end case
    }
    //end run
    foreach ($buildDataArr as $release => $releaseData) {
        $time_release = 0;
        foreach ($releaseData[builds] as $versionID => $build) {
            $case_count = 0;
            foreach ($build[cases] as $caseID => $case) {
                $i = 0;
                foreach ($case[runs] as $runID => $run) {
                    if ($case_count == 0) {
                        $runArr = end($buildDataArr[$release][builds][$versionID][cases][$caseID][runs]);
                        $buildDataArr[$release][builds][$versionID][started] = $runArr[started];
                    }
                    if ($i == 0) {
                        // get runStatus from runID
                        $buildDataArr[$release][builds][$versionID][runstatus] = getRunStatusForReg($versionID, $tableQuery);
                        if ($run[status] == "PASSED" || $run[status] == "RUNNING") {
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][status] = $run[status];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][started] = $run[started];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][log] = $run[log];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][notes] = $run[notes];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][inbuild] = $run[inbuild];
                            break;
                        } else {
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][status] = $run[status];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][started] = $run[started];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][log] = $run[log];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][notes] = $run[notes];
                            $buildDataArr[$release][builds][$versionID][cases][$caseID][inbuild] = $run[inbuild];
                        }
                    }
                    if ($run[status] == "PASSED") {
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][status] = $run[status];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][started] = $run[started];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][log] = $run[log];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][notes] = $run[notes];
                        $buildDataArr[$release][builds][$versionID][cases][$caseID][inbuild] = $run[inbuild];
                        break;
                    }
                    $i++;
                }
                $case_count++;
            }
            $passed = $failed = $running = 0;
            foreach ($buildDataArr[$release][builds][$versionID][cases] as $caseID => $case) {
                if (!ereg('^SETUP', $case[title]) && !ereg('^CLEANUP', $case[title])) {
                    if ($case[status] == "PASSED") {
                        $passed++;
                    } elseif ($case[status] == "RUNNING") {
                        $running++;
                    } else {
                        $failed++;
                    }
                }
                if (!$SC_TIMES[$case[script]][used]) {
                    $buildDataArr[$release][builds][$versionID][cases][$caseID][time] += $SC_TIMES[$case[script]][time];
                    $SC_TIMES[$case[script]][used] = 1;
                }
                $time_release += $buildDataArr[$release][builds][$versionID][cases][$caseID][time];
            }
            $total = $passed + $failed;
            if ($total != 0) {
                $buildDataArr[$release][builds][$versionID][total] = $total;
                $buildDataArr[$release][builds][$versionID][passed] = $passed;
                $buildDataArr[$release][builds][$versionID][running] = $running;
                $buildDataArr[$release][builds][$versionID][failed] = $failed;
                $buildDataArr[$release][builds][$versionID][status] = getPassFailStatus($failed, $buildDataArr[$release][builds][$versionID][runstatus]);
            }
        }
        //end build
        $buildDataArr[$release][time] = Sec2Time($time_release);
    }
    //end release
    mysql_close($linkID);
    insertPhaseToDB($buildDataArr, $tableQuery);
    return $buildDataArr;
}
        echo "count:" . $count . "<br/>";
        for ($k = 0; $k < $count; $k++) {
            $time[$j] = $_DB->GetResultValue($query, $k, 'time_taken');
            //print_r($time);
            $tim = explode(' ', $time[$k]);
            //print_r($tim);
            unset($tim[0]);
            //print_r($tim);
            $time_seconds = 0;
            foreach ($tim as $key => $str) {
                $str_time = $str;
                sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
                $time_seconds += isset($seconds) ? $hours * 3600 + $minutes * 60 + $seconds : $hours * 60 + $minutes;
            }
            echo $time_seconds;
            $a[$j] = Sec2Time($time_seconds);
            //$time_seconds=0;
        }
    }
}
/*end of program*/
//print_r($time);
//print_r($tim);
print_r($a);
function Sec2Time($time)
{
    if (is_numeric($time)) {
        $value = array("days" => 0, "hours" => 0, "minutes" => 0, "seconds" => 0);
        /*if($time >= 31556926){
            //$value["years"] = floor($time/31556926);
            $time = ($time%31556926);