Ask a Question

projectPath returns project parent directory

SOLVED
djeang
New Contributor

projectPath returns project parent directory

I Use ReadyAPI 3.20.2 

 

My project is located under c:\readyapi-projects\my-project and is shared on git

So there is on my disk :

  • c:\readyapi-projects\my-project\setting.xml  file
  • c:\readyapi-projects\my-project\.git    directory

But when I want to get the project base path using : 

 

 

 

def projectPath = new com.eviware.soapui.support.GroovyUtils(context).projectPath 
log.info projectPath

 

 

 

I get c:\readyapi-projects instead of c:\readyapi-projects\my-project

 

Does someone has an idea on how to get the path of the project (and not the parent dir) ?

3 REPLIES 3
groovyguy
Community Hero

If you look at your Project, and at the Project Properties tab, you shouyld have a property called "Resource Root." I usually set this via the drop-down menu to ${projectDir}

 

Then, in a groovy script, you can reference it with:

 

def projDir = context.expand('${projectDir}');



---

Click the Accept as Solution button if my answer has helped, and remember to give kudos where appropriate too!
KarelHusa
Super Contributor

@djeang ,

ReadyAPI allows two structures to save projects:

  • single file: the project is a single XML file, all included
  • composite: directory structure, useful for versioning and team collaboration

 

I assume previously the projectPath (the code you mentioned above) was meant as the parent directory for single file xmls:

log.info new com.eviware.soapui.support.GroovyUtils(context).projectPath 

 

If you want to get the directory of the composite project structure, you may use the project method:

 

log.info context.testCase.getTestSuite().getProject().getPath()

 

Please note the method will return:

  • directory for composite format
  • xml file for single-file format

 

Best regards,

Karel

 

Karel@apimate.eu
https://apimate.eu

This still returns parent project directory.

cancel
Showing results for 
Search instead for 
Did you mean: