Canoo / Ant properties scoping differently in tasks and steps?
We have a Canoo webtest set up to test a multi-locale application. For each locale, the webtest loads a number of properties开发者_JAVA百科 from a properties file.
In the example below, locale_code, htaccess.username, htaccess.password and webtest_url are all defined in such a property file.
In the webtest task itself, ${locale_code} is replaced, resulting in (for example) "CatalogueOrderFriendsCountry DE-DE http://www.example.com".
The properties in the invoke step, however, are not replaced, with the description showing up as "Einstieg Hauptseite ${webtest_url}" even though they are properly replaced just one line above it.
<project default="test">
<import file="../../definitions.xml"/>
<target name="test" depends="wt.defineMacros">
<webtest name="CatalogueOrderFriendsCountry ${locale_code} ${webtest_url}">
<invoke username="${htaccess.username}" password="${htaccess.password}" url="${webtest_url}" description="Einstieg Hauptseite ${webtest_url}"/>
...
It is pretty obvious that the locale specific properties file is loaded, we can change webtest_url (for example) in the file and the new value is properly replaced in the webtest name.
I know next to nothing about ant (Canoo being my exposure to it), and very little about Canoo webtest (I recently inherited them), so I'm not even sure whether this is a webtest or an ant issue.
You are probably using Ant 1.8
Dynamic properties are not evaluated.
You have to use Ant 1.7
See issue Dynamic property resolution does not work with Ant 1.8 or later
or Canoo Webtest Mailing List
精彩评论