19-06-19 10:42 AM
04-04-23 08:32 AM
Hi Ishan,
Can you please let me know wat all validations that you were able implement by parsing the bprelease xml file.
Regards
Manjunath
RPA Technical Architect
Bangalore India
04-04-23 12:52 PM
Hi Manjunath R Food for thoughts - lot of these validation depends on your development standards i.e. naming standards, nesting (blocks) stages, retries, If you have a colouring standards for blocks for input and outputs, etc.
Just for example the process Name, subpages & data Items (global Var) naming standards you can always validate those from the XML and check through Regex Match flag Y/N if that pass the naming standards you have set - start with a small process XML either process or Object - Just try spotting around what all you need to validate with the available info and if those are matching your development standards and write your reviews as flags in a predefined excel process review template.
Or if its object Validate if the defined exception message are being thrown as per standards to have an easy picking for support team whenever any object fails in prod - Something like : Object Name + Page Action Name + Error Message. Also whether the Action has information written in it to explain what exactly it does and is not left blank sort of etc. - these all can be validated and then needs to be fed as passed/failed in a excel template for Process/Object Review Checklist.
You would have to play around with the XML to get what you need as per your development standards, exactly how Ishan Mahajan did for checking the exceptions messages validation if those are set upto standards.
20-03-24 12:33 PM
Hi all,
to verify Blue Prism "code", you can check the process or object XML files using XPath. A great example is given in the Digital Exchange with the DiGital DA: Blue Prism Digital Exchange
You can find some examples there how you can employ XPath to check the XML files. You can extend your checks even further by adding your own XPath rules. Those XPath rules can also be added to Sonarqube for example.
20-03-24 02:19 PM
I would also like to point out with some time and investigation, you can build a automated code reviewer that can catch issues that even the developer doesn't realize exist. We took the time to build a reviewer, in C#, that parses all the exported file types and places the information in object hierarchies (eg. File>Object>Page>Stage>Parameter). We then use LINQ to run through those hierarchies finding all the different issues that are not best practice or even pointing out code problems. We can go from percentage of stages with logging enabled (high level) down to developers leaving an unnecessary line feed in a parameter value (low level).
You can't catch everything but what you can helps out the developer as they are going along and the code reviewer so they can just concentrate on the overall flow of the process.
20-03-24 03:16 PM
Great example, thank you for sharing! 🙂