Ask a Question

Use csv/excel file to update Project Suite/Project variables before running test?

SOLVED
shiva_ranabhat
Contributor

Use csv/excel file to update Project Suite/Project variables before running test?

Hi,

 

I was just wondering if there is a way to update project suite/project variables value using data-driven logic?

It would help non-QA staff to just use file to update all variables and run the test in many environments. 

 

Many Thanks,

Shiva

2 ACCEPTED SOLUTIONS

Accepted Solutions
NisHera
Valued Contributor

Re: Use csv/excel file to update Project Suite/Project variables before running test?

You can do something like this...........

 

DDT.ExcelDriver('C:\myVariable.xlsx','sheet1',true);
do {
   if (!Project.Variables.VariableExists("DatabaseName"))
            { Project.Variables.AddVariable("DatabaseName", "String") }
    Project.Variables.DatabaseName = DDT.CurrentDriver.Value('DBname');
    }
while (!(DDT.CurrentDriver.EOF()));
DDT.CloseDriver(DDT.CurrentDriver.Name);

View solution in original post

joseph_michaud
Moderator

Re: Use csv/excel file to update Project Suite/Project variables before running test?

As a convenience, you can access a variable in the Variables collection by its name.  "varName" is not the name of the variable in the collection.

 

You probably want


ProjectSuite.Variables.VariableByName(varName) = varValue;

-----
Joseph

View solution in original post

6 REPLIES 6
NisHera
Valued Contributor

Re: Use csv/excel file to update Project Suite/Project variables before running test?

You can do something like this...........

 

DDT.ExcelDriver('C:\myVariable.xlsx','sheet1',true);
do {
   if (!Project.Variables.VariableExists("DatabaseName"))
            { Project.Variables.AddVariable("DatabaseName", "String") }
    Project.Variables.DatabaseName = DDT.CurrentDriver.Value('DBname');
    }
while (!(DDT.CurrentDriver.EOF()));
DDT.CloseDriver(DDT.CurrentDriver.Name);

View solution in original post

shiva_ranabhat
Contributor

Re: Use csv/excel file to update Project Suite/Project variables before running test?

Thanks,

 

Is 'DatabaseName' the name of project suite variable or the variable name column in excel file?

and similarly, is 'DBname' the name of column forvariable values or the variable itself?

 

 

shiva_ranabhat
Contributor

Re: Use csv/excel file to update Project Suite/Project variables before running test?

Hi, 

 

what is wrong in my line "ProjectSuite.Variables.varName= varvalue; " line?

It throws a Jscript runtime error: Object doesn't support this property or method.

 

function DDTDriverTest(){
DDT.ExcelDriver('C:\\TestComplete_Parameters\\RedOwl_Parameters.xlsx', "Sheet1", true);

// while there is data
while(!DDT.CurrentDriver.EOF()){

var varName= DDT.CurrentDriver.Value(0);
var varType= DDT.CurrentDriver.Value(1);
var varValue= DDT.CurrentDriver.Value(2);

if(!ProjectSuite.Variables.VariableExists(varName)){
ProjectSuite.Variables.AddVariable(varName,varType);
}

ProjectSuite.Variables.varName= varValue;
DDT.CurrentDriver.Next();
}


// Close driver
DDT.CloseDriver(DDT.CurrentDriver.Name);
}

 

k_de_boer03
Contributor

Re: Use csv/excel file to update Project Suite/Project variables before running test?

If the value of varName is "foo" and varvalue is "bar"

 

 

var foo = "bar"

 

 

these lines:

  

if(!ProjectSuite.Variables.VariableExists(varName)){
  ProjectSuite.Variables.AddVariable(varName,varType);
}

will create a Project Suite variable called foo, and you can access it using:

 

ProjectSuite.Variables.foo

So your code:

 

ProjectSuite.Variables.varName = varValue;

Tries to set the value of a project suite variable name "varName" instead of "foo". This variable does not exist, and thus gives the error.

 

 

 

 

joseph_michaud
Moderator

Re: Use csv/excel file to update Project Suite/Project variables before running test?

As a convenience, you can access a variable in the Variables collection by its name.  "varName" is not the name of the variable in the collection.

 

You probably want


ProjectSuite.Variables.VariableByName(varName) = varValue;

-----
Joseph

View solution in original post

shiva_ranabhat
Contributor

Re: Use csv/excel file to update Project Suite/Project variables before running test?

Cool! This works Cat LOL

 

Thanks Everyone!

cancel
Showing results for 
Search instead for 
Did you mean: