Forum Discussion
chicks
14 years agoRegular Contributor
Take a look at the BuiltIn.Param object. Here's some sample code I'm using so I can pass different data files at startup.
This is JavaScript.
Regards,
Curt
function CommandLineArgs()
{
// start /wait "TestComplete" "C:\Program Files (x86)\Automated QA\TestComplete 8\Bin\TestComplete.exe" "C:\TestCompleteFiles\testcomplete\Shell_Member_Portal_suite\Shell_Member_Portal_suite.pjs" /p:MemberPortal /r /data="C:\\TestData\\MP_Shell.xlsx"
//Parameter[1] = C:\TestCompleteFiles\testcomplete\Shell_Member_Portal_suite\Shell_Member_Portal_suite.pjs
//Parameter[2] = /p:MemberPortal
//Parameter[3] = /r
//Parameter[4] = /data="C:\\TestData\\MP_Shell_QA_Box.xlsx
var nArgs = BuiltIn.ParamCount();
var str;
var args = new Array();
var re = new RegExp("=","g");
// Log.Message("Total number of command-line arguments: " + nArgs);
// Log.Message("The fully-qualified name of the TestComplete executable: " + BuiltIn.ParamStr(0));
var argumentFound = false;
for (var i = 1; i <= nArgs ; i++) {
str = BuiltIn.ParamStr(i);
Log.Message("param = " + str);
if ( str.indexOf("/data=") != -1) {
argumentFound = true;
Log.Message("data = " + str);
args = str.split(re);
Log.Message("args = " + args);
excelData = args[1];
myExcel = args[1];
Log.Message("excelData = " + excelData);
Log.Message("myExcel = " + myExcel);
}
}
if (argumentFound == false) {
Log.Message("Data sheet was not specified in the command line. Default data sheet " +excelData + " will be used.");
}
}
This is JavaScript.
Regards,
Curt
function CommandLineArgs()
{
// start /wait "TestComplete" "C:\Program Files (x86)\Automated QA\TestComplete 8\Bin\TestComplete.exe" "C:\TestCompleteFiles\testcomplete\Shell_Member_Portal_suite\Shell_Member_Portal_suite.pjs" /p:MemberPortal /r /data="C:\\TestData\\MP_Shell.xlsx"
//Parameter[1] = C:\TestCompleteFiles\testcomplete\Shell_Member_Portal_suite\Shell_Member_Portal_suite.pjs
//Parameter[2] = /p:MemberPortal
//Parameter[3] = /r
//Parameter[4] = /data="C:\\TestData\\MP_Shell_QA_Box.xlsx
var nArgs = BuiltIn.ParamCount();
var str;
var args = new Array();
var re = new RegExp("=","g");
// Log.Message("Total number of command-line arguments: " + nArgs);
// Log.Message("The fully-qualified name of the TestComplete executable: " + BuiltIn.ParamStr(0));
var argumentFound = false;
for (var i = 1; i <= nArgs ; i++) {
str = BuiltIn.ParamStr(i);
Log.Message("param = " + str);
if ( str.indexOf("/data=") != -1) {
argumentFound = true;
Log.Message("data = " + str);
args = str.split(re);
Log.Message("args = " + args);
excelData = args[1];
myExcel = args[1];
Log.Message("excelData = " + excelData);
Log.Message("myExcel = " + myExcel);
}
}
if (argumentFound == false) {
Log.Message("Data sheet was not specified in the command line. Default data sheet " +excelData + " will be used.");
}
}