indeed, updating a result template is currently not possible, as far as I can tell (unfortunately my colleague who knows most about the templates will not be in office until January). There is a workaround, though (I admit, it's not really a nice workaround, but it should be better than setting up those 50 result values again):
- Copy the content of the template
- Go to a website that allows you to convert strings to base64 encoding (e.g. https://www.base64encode.org/)
- Paste the content of the template and edit the desired changes
- Encode the string and copy the result
Now, you need to find out the object name of the template. It is derived from the filename of the file that was used as a template, it is just cleaned of characters that are not allowed in an object's name (e.g. '.' or '-'). The easiest way to determine the resulting name is to (in a new project) create any object (e.g. a Parameter) and try to rename it to the original filename. The resulting name should be the same as the generated name of your template. For the rest of my post I assume the template's object name is "data".
With that info, go back to your project and enter "data.setContent("[B64]<encoded base64 data>")" in the console, replacing "<encoded base64 data>" with the result you got from the encoding website. This should do the trick (at least it worked in my test right now - all result values are still there and my changes are there as well).
I will create a backlog entry in our change management system that there should be an easier way to do this.
The list of parameter names is a good idea, I will "take it on the list", as well.
Regarding XML: I like the idea of integrating XML in the template mechanism (it's been brought up internally a couple of times, but the requests for it were too few to actually do it).
We already have a XML result file type (xffl). I must admit that it is not very well documented, though, and that I don't have a lot of experience with it (a search in the Documentation Browser for "xffl" will give you some results, though). If you enter an XML file in the right XML dialect, CAESES will automatically extract the objects that are contained in it. It is mainly for basic types (e.g. doubles, vectors, strings). E.g. the XML file
<?xml version="1.0" encoding="UTF-8" ?>
Would be imported as a single double value with the name "foobar". Creating a parameter by double-clicking in the result table will create a parameter with the name "eval_foobar".
I assume, your tools do not produce this kind of XML, though (of course). In that case, it is possible to use XSLT (http://en.wikipedia.org/wiki/XSLT) to transform any XML file in the correct format. But unfortunately, I just realized that XSLT is only available for the Custom integration type. This should not be the case and I will change that for 3.1.3. Once that is released (and if you are interested) I can explain more about how to use XSLT transformations in the integration.