I’m running Blueprint Functional Tests, and I have a pair of related questions.
Is there any way to tell, definitely, what has caused a test to be marked as a failure? I attached a screenshot of me running a test via the Automation tab of the Session Frontend, and I only get a Pass/Fail message - no explanation as to why the test was marked as a fail. I can export the results via the menu in the lower right, and it will give me the log messages but not tell me what failed the test. Checking the editor logs also doesn’t tell me what specific thing failed the test.
My best guess is that any error output to the logs is failing the test. If this is correct, what is the best way to disable this? Ideally, when we write tests, we want the test code to be 100% in control of the test passing or failing.
Selecting the failing test row in the automation tab should give the list of collected events during the test run.
Also BP functional tests need to call Finish test at some point or it will be considered a failure through a timeout.
All BP functional tests have a timeout, it is configurable on a test basis by selecting the related actor in the map and searching from timeout in details panel.
To come back on the Finish Test node call, one can attach a message to the call and that message is going to be attached to the test events.
To be clear, as mentioned in the original post, I do have a node called Finish Test and when I step through with the debugger, the node is being reached. Further, the message attached to the Finish Test node is showing up in the log. The Finish Test node is marked as a success, and the test is STILL being marked as a failure by the Session Frontend/Automation tab. (and also when I run the test via command line tools and/or Gauntlet).
How can I force it such that I can control whether the test is marked as a failure or a success? I would expect calling Finish Test with Succeeded to do this, but it does not.
You should see before that line all the collected events during the test. Which should include the errors and messages that were raised during the test.
And every single collected event is marking the test as a failure, and every single event must be addressed/fixed before the test will be marked as a pass? (assuming I also mark the test as a pass)