Problem using RunAllTests.xaml with the UIDemo walkthrough

Has someone tried the RunAllTest.xaml ?

It works fine for InitAllSetting.xaml but I got stuck with InitAllApplications.xaml.

The reason is that I can’t open the UIDemo application because it has as argument : FileName : inConfig(“UiDemoPath”).ToString.
This path is correctly retrieved from the Orchestrator in InitAllSetting.xaml however. But the output argument of the latter (out_Config) isn’t pass to the input argument of InitAllApplications.xaml (in_Config) by RunAllTest.xaml

If you at the Invoke Test file activity inside RunAllTests, you will see that no arguments is pass to the called workflow. Why?

The only way to fix would be to define a default value for the path I guess

I don’t see how you can test something that expects a parameter and not give it one.

It’s possible that the parameter is missing. You can pass it in. Nothing is cast in stone :slight_smile:

I’ve stopped using that XAML. When I build a workflow these days, I build a Test_Workflow_Name xaml that calls the actual workflow and pass it all the parameters hard-coded. This way I make sure that each small unit of work functions correctly.
It really helps and when I finally bring all of these units together in the grand scheme of things and run the Main.xaml.

Thank you for you answer.

I guess an easier way to test the workflow is what you suggested.

I know that RunAllTest.xaml does not pass the argument when it calls the other workflow. But I didn’t figure out an easy way to do so since the invoke workflow activity is embedded inside a for loop and the arguments to pass change at every iterations.

What is the purpose of RunAllApplications.xaml so ? I find it pretty limited because it does not pass the arguments. If I want to make it work I would have to fix a default values for the arguments in the workflows I want to test but it doesn’t seem a good solution to ensure the workflows work fine…

Do you mean RunAllTests.xaml? If so, it’s a container that invokes _Tests.xaml.

It is designed to work with the original REFramework in mind. Meaning, if you implement the stock framework components without changing how the framework interfaces with them (meaning, no change in the number or type of parameters passed to them) , then RunAllTests is of immense help in doing an across the board test of your RPA application.

@AndyMenon

I am working with the ReFramework for the first time, and tend to dig into things. Am I right in understanding that, out of the box, the RunAllTests.xaml will FAIL if InitAllApplications.xaml uses information from the config file by accessing the in_Config argument? (Data\Config.xlsx).

I do not see how it can possibly succeed, as written “out-of-the-box”. InitAllApplications.xaml takes the Config as an input, but when run by RunAllTests.xaml, from the list of default tests in Test_Framework\_Tests.xlsx, Test number 2 (Line 3 of the .xlsx) Config will be null, because the test is calling InitAllApplications.xaml directly, not as part of a test case/test harness.

Seems pretty silly to have the ReFramework default template have a test that will 100% fail if a robot is implemented as the framework was intended.

Am I missing something in the test_framework part of the ReFramework???

Honestly, i would focus on understanding how it works, and then implement an actual application.

That is how I work with it even today, and never got hung up very much on the tests.

Once you’ve got the hang of it, then most of your questions about testing will have been answered.

Thanks. That is what I just did. I removed the default broken test and wrote ones that make sense.