History of Changes | print-friendly |
- Version 0.9.16 (2003-04-12)
- Version 0.9.15 (2002-11-16)
- Version 0.9.14 (2002-10-25)
- Version 0.9.13 (2002-10-11)
- Version 0.9.12 (2002-10-8)
- Version 0.9.11 (2002-10-5)
- Version 0.9.10 (2002-09-28)
- Version 0.9.9.1 (2002-09-19)
- Version 0.9.9 (2002-08-22)
- Version 0.9.3 (2002-04-15)
Version 0.9.16 (2003-04-12)
- Fix followRedirects so that it works with ports other than 80. Thanks to igor.pascual @ ieuskadi.com for reporting. (JT)
- Added fileRequest action task, which lets one apply Anteater tests to a local file. (JT) Thanks to James Gessling.
- Add filename-format property and setFilenameFormat attribute for loggers, which allows users to specify a template name for log files. The default is TEST-${groupid}_${taskname}_${url}_line-${lineno}_test-${vm-count}${_run-:run}.xml (JT) Thanks to James Gessling.
- Fixed a bug where when haltonerror is true (the default), the last failing test does not generate a log file. (JT) Thanks to James Gessling.
- Added a overwrite property for loggers. If set to false, log files won't be overwritten across Anteater runs. (JT)
- Fixed a bug where HTTP BASIC authentication failed due to a corrupted socket outputstream. Thanks to Dan Dexter for reporting, and Brian Robinson for the fix. (JT)
- Fixed major bug where <contentEquals href="..."> would always pass. (JT) Thanks to James Gessling.
- Include antRun and antRun.bat scripts, so exec can be called from Anteater scripts. Thanks to Ying-Yi Huang. (JT)
- Fix a bug where if a 302 redirect is encountered with a server-relative Location: path (not absolute), Anteater would die with a 'No protocol' error. Thanks to Ying-Yi Huang for reporting. (JT)
- Attempt to fix a problem with anteater-update.bat, reported under Win2k, where the update script is downloaded but not applied. (JT)
- When a connection error occurs, throw a proper BuildException to cause a non-zero exit code. Thanks to Dan Dexter. (JT)
- Fix a stupid oversight, where the 'description' attribute of a group was not used, but a 'description' property was. Thanks to Shane Taylor for pointing this out. (JT)
- Fixed a bug where tests would have incorrect 'package' attribute in the TESTS XML file. Thanks for Shane Taylor for reporting. (JT)
Version 0.9.15 (2002-11-16)
- Update the jelly 'update' to use commons-beanutils-1.5.jar instead of the SNAPSHOT. (JT)
- Get the 'validate' target (and webapp) working again with the latest Forrest. (JT)
- HTML reports now display the task description. In frames, each record displays the task @description, or if not available, the target @description. Categories and various other URLs also have rollover descriptions. In noframes, the task @description is printed above each test, and group description property (if any) in the category table. This is all overridable by users. (JT)
-
Rationalize the set of description properties made available to
reporters. For each testcase, the following properties are made
available:
- project.description - project description
- group.description - Any description property set in groups. Inheritable
- target.description - Target @description attributen
- task.description - Task @description attribute
- description - First of the above which is non-blank, from task to project.
- Fixed SSL to support unsigned certificates, which are commonly encountered in development environments. (II)
- JTidy error message are now captured and included in the HTML reports. (JT)
- Reduce duplicate error messages in logs. Matcher test errors (not just failures) now trigger an immediate end to that matcher, rather than going through the other tests. (JT)
Version 0.9.14 (2002-10-25)
- Added a 'followRedirects' flag to httpRequest. If set to true, HTTP 302 redirects will be transparently followed, and the redirected-to page tested. (JT)
- Add support for HTTPS URLs. Requires JSSE jars, which are included in JDK 1.4 and above. (JT)
-
Fixed annoying bug where text logs misreported the URL being tested:
Starting http://unset_host:0/...
(JT) - Added an 'enable' flag which, when set to false, lets one 'switch off' certain tests in certain groups. The use-case is to allows tests to be grouped into 'profiles' (normal, strict, extra-strict), and then unwanted profiles can be disabled at runtime. (JT)
- Request params can now be specified as part of the URL query string, as an alternative to the existing <parameter> tag. (JT)
- JTidy now no longer replaces <i>, <b> etc with CSS. (JT)
- Text logger: print headers in an easier to read format. (JT)
- Print a warning when an unused regexp group (...) is the probable cause of a failed match. (JT)
- Add 'ignoreSpaces' property to regexp and xpath matchers. This allows an easy way to ignore whitespace differences in dynamically produced HTML. It is automatically set if 'usetidy' is true (and not explicitly overridden). (JT)
- Switch off JTidy's clean-up-HTML feature, which was converting tags to CSS. (JT)
- Added <uses> tag, which allows scripts to specify what Anteater version and features the script requires. (JT)
- Fix bug where it was impossible to add a data type to the default group with the 'group' attribute, eg <logger group="default"> (JT)
- Fix bug where <httpRequest href="http://foo.com"> wouldn't work, it needed a trailing '/'. This is now automatically added. (JT)
- When a matcher test throws an error (not a failure), don't evaluate other tests. (JT)
- Fixed bug in <image> tag, which would die with a NullPointerException if the HTTP response body was empty. (JT)
- Better 'xpath' error messages. When JTidy parsing fails, fall back to the raw content, causing the XPath parser to reports a more meaningful error. (JT)
- Small XML logger fix; previously, blank exceptions would cause an Anteater stacktrace. (JT)
- Header names are now case-insensitive, as per the HTTP spec. (JT)
- Binary response data is no longer printed to the terminal when debuggin, which used to mess up the terminal. Instead a message like Got body: <<binary data. type='image/svg-xml' length=531>> is printed. (JT)
- Examples now all use the <waitfor> task to wait for the Tomcat server to start, rather than sleeping for X seconds and hoping for the best. This reduces execution time too. (JT)
- Fixed a bug where 'match' elements wouldn't exit after the first had succeeded. (JT)
Version 0.9.13 (2002-10-11)
- Added anteate-update scripts. These allow extensions to Anteater to be automatically downloaded and applied. Current optional features include 'jelly' (Jelly support), 'xhtml-schema' (Relax NG xhtml schemas) and 'rng-schemas' (general RNG schemas). (JT)
- Anteater scripts now have a set of anteater.* properties automatically defined. With these, they can determine the Anteater version and Anteater optional features present. (JT)
- Fixed anteater.bat, which was completely broken after the Ant 1.5.1 upgrade. (JT) Thanks to Robert Leftwich.
- Fixed build.bat in source distribution, which wouldn't work if ANT_OPTS wasn't set. (JT) Thanks to Robert Leftwich.
- Fixed small cookie parsing bug. (JT)
Version 0.9.12 (2002-10-8)
- Updated jars and scripts to those from Ant 1.5.1 (JT)
- Added install-jelly.jelly.{bat,sh} scripts for easy installation of Jelly. (JT)
- 'sendResponse' can now contain nested 'responseCode', 'contentEquals' and 'header' elements. (JT)
- Fixed text logger output for 'header' tests. (JT)
- In the text log, the '..done' message is printed on the same line as the rest of the test message. (JT)
- Fix bug where matchers with dynamically generated contents don't print it in the text logger. (JT)
Version 0.9.11 (2002-10-5)
- Make session cookie parsing much more robust, fixing a bug reported by Reinhard Poetz. (JT)
- Fixed a bug where the parameter matcher could break if there were multiple values for a single parameter. (JT)
- sendResponse (used to send HTTP responses) can now have it's body content specified as nested text. It may also be generated dynamically by a nested jelly tag. (JT)
-
Added Jelly support. All matcher tasks may now take a nested <jelly> element. The specified jelly script will be run, and it's output used as the body contents of the nesting element. This allows us to dynamically create HTTP responses and requests.
Jelly support is optional; the jars can be automatically downloaded by invoking the ${anteater.resources}/scripts/install-jelly.xml script.
(JT) - Fixed a bug where a POSTed message with no body would not generate a correct request (no content-length) (JT)
- Fixed a bug in the XPath matcher, where tests like <xpath select="/html/body//p" value="abc"/> would ignore the 'value' and succeed if any of the selected nodes were present. (JT)
- It is now possible to have nested 'contentEquals' and 'method' elements directly below an action task. These are used to set the HTTP body contents, and HTTP method respectively. Previously, these had to be done via attributes, which aren't flexible enough (but still supported). (JT)
- Fix a serious bug with the DOS script, where Anteater would report Target `' does not exist in this project.. (JT) Thanks to Ivelin Ivanov.
Version 0.9.10 (2002-09-28)
- Added the 'blob' (aka 'image') matcher, which allows one to validate binary file formats. Currently, a selection of images (including jpg, png, gif and swf) can be detected, courtesy of Marco Schmidt's ImageInfo class. (JT)
-
Fixed a bug where if we had:
<group id="a"> <logger type="xml"/> <group id="b"/> </group> ... <httpRequest group="b" ... />
Then the XML log reported the httpRequest's log as belonging to group 'a', not 'b'. This was because the logger belongs to group a. Now the ownership gets propagated down to 'b'. (JT) - Commented out the example banner in the frames HTML reports. (JT)
- The location of each test is now stored as part of the test properties (see 'Properties > > ' link in the frames HTML). (JT)
- Fixed a large reporting bug, where tests with the same base URL but different parameters were overwriting each other's HTML report files. As a result, the frames HTML would have a bunch of links to the same test. (JT)
- Fix a JTidy problem, where if a HTML resource has a DOCTYPE declaration, it would leave us with invalid XML. The adopted solution is to always strip the DOCTYPE declaration. (JT)
- Add a 'pattern' attribute to the XPath matcher. This allows one to match a regexp pattern against the string value of a node identified by an XPath pattern. (JT)
- Fix bug where if more than one 'parameter' or 'header' element was specified underneath an action task, only the last was picked up. (JT)
- Fix regexp and contentEquals matchers so that text body content has expressions substituted. Eg: <regexp>${someProperty}</regexp> (JT)
- When invoking the report target, the log.dir property may now be omitted. It will default to 'logs', same as the XML logger does. (JT)
Version 0.9.9.1 (2002-09-19)
- Cleaned up some build problems, verified samples work in preparation for 0.9.9.1 release. (JT)
- Fixed bug where examples/resources/sessiondemo.war was corrupt in binary distributions. (JT)
- Fixed bug in the 'haltonerror' logic. Previously, haltonerror only worked if the last (or only) test gave an error. Now, any test in the matcher triggers haltonerror. (JT) Thanks to Ivelin Ivanov.
- Fixed bug where XML files with DTDs specified in their DOCTYPE declarations didn't parse. (JT) Thanks to Ivelin Ivanov.
- Replaced the yucky PNG logo with an equally yucky SVG logo :) An excuse to exploit Cocoon's svg2png serializer, and now changing the logo can be done by anyone. (JT)
- Created a website, built with Forrest and Cocoon. See http://aft.sourceforge.net/. (JT)
Version 0.9.9 (2002-08-22)
- Wrote DTDs, XSLT and XSL:FO stylesheets for Anteater's user manual. Docs are written a derivative of Apache's XML DTD with custom additions for documenting an XML framework, thus keeping the doc source semantically rich. Stylesheets then convert this to HTML or PDF. PDF results can be seen at http://aft.sourceforge.net/manual/Anteater.pdf. HTML results at http://aft.sourceforge.net/manual/ (OP)
- Wrote first draft of the user manual. (OP)
- Additions to user manual. (JT)
- Added an examples/ directory with 25-odd demonstration scripts. (JT)
- Beginnings of "metadata" model started, with inheritable "description" property that can be attached to a project, group or action task. (JT)
- New grouping system, whereby tasks can be grouped together and collectively assigned loggers, sessions, namespaces, and config properties. This makes writing large test scripts much simpler. Groups are hierarchical and inherit/override objects from their ancestor. There is an implicit default group. Group properties can be specified from the command-line, so for example one can set a global debug level with -Ddefault.debug=10 (JT)
- Anteater is now fully configurable by properties, and this is integrated with the grouping system. Configurable settings include default host, port, timeout, debug level, logger, HTTP protocol, error handling (haltonerror) and use of JTidy. (JT)
- Pluggable logging system implemented via <logger type=".."/>. Text, color (default), 'minimal' and XML loggers implemented. XML logger outputs XML extending that produced by JUnit's formatter. (JT)
- XML-to-HTML reporting implemented. This is an adaptation of the XSLTs used in <junitreport>. Both frames and non-frames HTML implemented. Tests are grouped by 'group' (see above). HTML reporting target now built into Anteater; can be invoked via <ant antfile="${anteater.report}"/>. See examples/report.xml (JT)
- Improved ability to do conditional logic in the matchers of action tasks. Added a 'value' attribute to <match>. We can now have <match assign="someprop" value="someval">, and if that matcher's tests all succeed, then 'someprop' is set to value 'someval'. Typical use-case: a number of matchers will set a variable to different values if they match, allowing us to determine after the action task what happened. See examples/logic_*.xml (JT)
- <deploy> task added for deploying webapps or wars. See examples/deploy.xml (JT)
- <http> element removed in favour of <group> (JT)
- Method matcher now ignores case. (JT)
- Regexp matcher now uses Jakarta ORO, fixing an infinite loop bug. Regexp 'group' values, eg (.*), can now be assigned to Ant properties. (JT)
- Add regexp capabilities to header and responseCode matchers. Eg, one can now do: <header name="Content-Type" pattern="text/*"/> to match all text responses, or: <responseCode pattern="3.."/> to match all 'redirect' responses. One can also assign a regexp group to a value with: <header name="Content-Type" assign="texttype" pattern="text/(.*)"/>. See examples/header.xml (JT)
- New Relax NG matcher added. See examples/relaxng.xml (JT)
- XPath matcher substantially upgraded. Can now specify boolean '/foo/bar=baz' tests. (JT)
- Namespace support added for XPath matcher. See examples/xpath.xml (JT)
- Session support added. See examples/session.xml (JT)
- Fix bug where a HTTP keepalive response by servers could seemingly hang Anteater. (JT)
- The 'href' and 'content' attributes now resolve properly from the Ant basedir. (JT)
- Anteater now reports an error when offline, instead of hanging. (JT)
- URLs now need not specify port. (JT)
Version 0.9.3 (2002-04-15)
- Released version 0.9.3 (OP)