[MUSIC PLAYING]
INSTRUCTOR: Hi, guys.
Today we're going to talk about how
to use UiPath test suite with cross browser testing.
We're going to start off with UiPath Test Manager.
Test Manager has a dashboard where
I can view various previous test results
and make informed decisions on my release cycle.
To begin for a cross browser testing project,
I'm going to start by defining a requirement.
For demo purposes, I have this website called UiBank
and I want to ensure and test the ability
to apply for a loan and the functionality
of the automatic calculator on my website.
More specifically, a user, they should
be able to apply for a loan with any loan amount,
loan length, income, age, and they
should be able to perform this process across browsers
and across different operating systems,
whether that's a Windows operating system for desktops
or Android for mobile devices or iOS for Apple mobile devices.
Now once I know my requirement, the next step as a tester
is that I have to define different test cases.
And you can see I've actually defined nine different test
cases down here.
And for each one, I want to go into the website
and apply for the loan with various data.
And so I've laid out the manual steps here in the manual steps
tab.
However, I'm going to go ahead and take the opportunity
to show you this manually.
So I'm going to go over to my uibank.uipath.com website,
I'm going to navigate to the loan application page,
and then I'm going to enter various information.
Let's say I'm requesting a loan for $10,000,
I'll pay it back over three years.
My current income, let's say, it's $100,000.
And my age-- let's say I am 30 years old.
Now when I submit this loan application,
there's a calculator in the background that I want to test.
And based on that input data, my expected loan rate is 7%.
So if I were to test this manually,
I'd take a screenshot of this page, I'd check all the boxes.
Yes, it shows 7%.
Now if I were to do this across all the different variations,
across different mobile browsers,
across different mobile devices, it might take a while.
And so this is a great opportunity
to automate this with UiPath.
So to actually build the automation,
what we're going to do is navigate to UiPath Studio.
Within UiPath Studio, for those of you familiar,
this is going to be our home page.
And for application testing, we're
actually going to use this test automation project.
Now I'm going to start not off with a blank project.
But if you were starting with a blank project,
the main importance of this testing automation project
is that it's going to automatically bring
in our testing activity dependency package.
So you'll be able to start with a test case.
Now our test case, by default, follows a BDD test framework
where it's going to give you three sequences of a given when
and then sequence.
If we search our activities pain for the testing activity pack,
you'll see that I have various data activities
and verification activities.
These data activities can help you synthetically generate
test data for your test case, and you'll typically
use them in the given sequence as prerequisite steps.
The when sequence is going to be a series of actions
that you're going to do to replicate the manual actions I
showed you earlier, and the then sequence
is reserved for these verification activities
where you're actually going to verify something on the screen,
whether that's retrieving text--
in this case, I'd be retrieving the loan rate--
or something else.
Now I have a test case already created.
And in order to create this, I could have used our app web
recorder or I could have used my various activities here.
But it's pretty straightforward.
Even though you might not have seen UiPath studio before,
you should be able to follow along
with exactly what's happening.
I'm opening the browser, I'm clicking
the products pane, the loan dropdown,
applying for the loan, typing in all my information
into those five fields we saw, and then clicking
the Submit Loan button.
Now the great thing about this is
that UiPath doesn't require you to build a testing framework
like a lot of other tools do.
You can just start off with the [INAUDIBLE],,
create the automation.
And then simply any time you find a reusable component,
you can just right click that activity
and say extract as a workflow.
And that's exactly what I've done here.
So in my project pan, you'll see I
have a series of reusable libraries that I've used
in order to apply for a loan.
And any time I want to use these in a specific test case--
let's take, for example, my standard loan test case here,
all I've done is drag in this apply for loan reusable
component and imported specific arguments into it.
Now once I've built my automation,
the next thing I'm going to do is link
that automation back to the test that I originally defined.
Why do I do this?
Well, once I publish my automation,
I package this project, I can now
send it to our centralized orchestrator that
allows me to execute multiple tests simultaneously
across different robots.
And that's what we call distributed execution.
Now if I'm a tester, I don't really
need to worry about how the orchestration works.
All I have to do is go over to this test set tab,
I have to define what exactly are the tests that I
want to execute.
In this specific example, we're actually
going to be using something called a data-driven test.
A data-driven test allows us to have a single script,
but actually go through multiple different data variations.
And so as I execute this in an automated fashion,
you'll see that my test manager is communicating
with my centralized orchestrator which will then
start the execution for six different variations
of the same test case.
And you can see all of those starting to appear now.
Now we'll see my robot come in action.
You'll see this icon down here.
And it's going to go through all of the different variations.
Our first variation is Internet Explorer.
We're entering all the fields and returning our loan results.
Our next test case is going to go ahead and open Edge and go
through a different data set.
Our third scenario covers Chrome.
And our final scenario covers Firefox.
For mobile automation, we're going
to use an emulator called Sauce Labs.
Sauce Labs is a cloud emulation tool
that integrates with UiPath via APM
and it can be used to emulate mobile devices,
whether those are Android mobile devices or iOS mobile devices.
UiPath can integrate with any mobile emulator tool,
whether that's something like APM or Browser Stack
Or Perfecto Mobile.
Performance and load time of your mobile emulator
will depend on where your Sauce Lab server is hosted.
Now as the tests finish, I as a tester can go into test manager
and view all my test execution results.
So you can see each of the different six variations
we saw live.
I can navigate into any one of these and view the results.
From the results page, we see our assertions, the actual log
message of whether the test passed or failed,
and we can view and expand and see the screenshots
at that point of time of verification.
In addition, we can dive into the robot logs.
This provides a great audit trail for us.
And lastly, because this is a single script,
I might be interested for variation 3, what
were the actual input values that were used.
And we can see all of those listed here.
You can see in this variation, I use the Chrome browser,
and this was my various loan information.
In addition, I have the ability to see
which machine and what robot executed this
and how long it took to execute.
That finishes our cross browser testing demo.
Thanks for joining us, and stay tuned
for our next demonstration of UiPath test suite.
Thanks.