microsoft / EasyRepro

Automated UI testing API for Dynamics 365
MIT License
522 stars 289 forks source link

[HOW-TO] Click on "Next Stage" button in Business Process Flow #713

Open Cornholio1337 opened 4 years ago

Cornholio1337 commented 4 years ago

Question

Hello everybody. Maybe I am doing something wrong here but I try to automate an UI Business Process Flow and it looks like there is no way to automate the click on the "Next Stage" button. xrmApp.BusinessProcessFlow.SelectStage() only selects the current stage, but then I have to click the "Next Stage" button. xrmApp.CommandBar.ClickCommand("Button Text") doesn't do anything apparently and xrmApp.BusinessProcessFlow.NextStage("Name of next stage") only opens the next stage "ribbon" but does not set it to active.

Am I doing something wrong here or is this function not possible at the moment?

Thank you in advance and greetings from Germany.

Cornholio1337 commented 4 years ago

Alright. I found out how to activate the button. It was not clear for me, that you have to pass the current stage name as the parameter for xrmApp.BusinessProcessFlow.NextStage() and not the name of the next stage. Now I have a new problem. I have a multi entity bpf and after clicking on next stage I have to click "+ Create" to create a new record of the entity of step two. Any idea how I can achieve this?

Greetings

Cornholio1337 commented 4 years ago

Okay I was able to achieve this via var e = client.Browser.Driver.FindElement(OpenQA.Selenium.By.Id("MscrmControls.Containers.ProcessStageControl-CreateNewContainer")); and then e.Click(); But it would still interest me if there is already a function for this.

Greetings

TYLEROL commented 4 years ago

Hi @Cornholio1337 ,

From re-assessing the current state of the Unified Interface and BPFs, this is a current feature gap. I've added an item to the backlog to track this and will re-open this issue for tracking as well.

Thank you for raising this gap.

Warm Regards, Tyler

tipsey commented 4 years ago

Question

Hello everybody. Maybe I am doing something wrong here but I try to automate an UI Business Process Flow and it looks like there is no way to automate the click on the "Next Stage" button. xrmApp.BusinessProcessFlow.SelectStage() only selects the current stage, but then I have to click the "Next Stage" button. xrmApp.CommandBar.ClickCommand("Button Text") doesn't do anything apparently and xrmApp.BusinessProcessFlow.NextStage("Name of next stage") only opens the next stage "ribbon" but does not set it to active.

Am I doing something wrong here or is this function not possible at the moment?

Thank you in advance and greetings from Germany.

Hi Not using xrmApp but got it working with xrmBrowser. You cannot assign the name of the ribbon but only the index, 0, 1, 2 etc

xrmBrowser.BusinessProcessFlow.SelectStage(2);

shariquekhan1997 commented 3 years ago

1158 Now you can access all the buttons in the Business Process Flow Dialog (example: Next Stage)

MANEnterprise-Joseph commented 1 year ago

Okay I was able to achieve this via var e = client.Browser.Driver.FindElement(OpenQA.Selenium.By.Id("MscrmControls.Containers.ProcessStageControl-CreateNewContainer")); and then e.Click(); But it would still interest me if there is already a function for this.

Greetings

I am having this issue right now. I click on Next Stage -> I have to click on + Create to create the record in the next stage of the BPF. Is there a way to do it by simply clicking Next Stage? The way it currently is isn't very user friendly.