📺 Develpreneur YouTube Episode

Video + transcript

Test Project 2.0 - Part 1

2022-02-22 •Youtube

Detailed Notes

Welcome, if you are a tester or developer interested in automation testing or are new to test automation tools than you defiantly need to check out TestProject. However, if you are not familiar with this tool that's OK. In Test Project A Review of Version 2.0 we cover all the new features in Test Project 2.0 as well as walk you through using the tool to setup your first test.

Test Project A Review of Version 2.0 Overview:

What is Test Project What's new in Version 2 Overview of the tool Creating your first test case What is Test Project?

TestProject is a community driven tool and has a free forever plan that is fully featured and that you can get started with in moments. In addition they have a lot of documentation that will help you with all the details you need to use TestProject to create effective test automation that your whole team can use. What Makes Test Project Unique?

First of its kind community powered test automation framework. Second its 100% free test automation development framework designed for agile teams! Advanced built-in recording capabilities AI-Powered self healing technology built in. It seamlessly supports iFrames, Popups and Dynamic Elements.  With built in Adaptive-wait technology it automatically handles deviations in web application loading times. Also supports both hybrid cloud and completely offline modes Has a CLI Agent. Finally, it's free forever for anyone to use. Start with a new account:

Create a new account or connect to an existing google or microsoft account.

Install & Register

First start by downloading the TestProject tool. Then, install the TestProject tool on your machine. Finally, make sure the tool is up and running. Make sure your os security settings allow test agent to access your machine

Additional Resources

Hybrid Cloud and Offline Mode https://docs.testproject.io/getting-started/hybrid-cloud-and-offline-mode Understanding Test Files https://docs.testproject.io/getting-started/hybrid-cloud-and-offline-mode/understanding-test-files Using AI to Improve Testing https://docs.testproject.io/getting-started/using-ai-to-improve-testing Finally, this series comes from our mentoring/mastermind classes.  These classes are virtual meetings that focus on how to improve our technical skills and build our businesses.  After all the goals of each member vary.  However, this diversity makes for great discussions and a ton of educational value every time we meet.  We hope you enjoy viewing this series as much as we enjoy creating it.  As always, this may not be all new to you, but we hope it helps you be a better developer.

Transcript Text
[Music]
hey guys welcome today we are moving
away from react and
we're going to start talking about a
testing tool i ran across called test
project
our presentation today we are going to
just it's going to be an overview of the
test project application what it is what
they do
and we're going to really look at a lot
of the things that they've added since
virgin 2.0 came out which uh
brought me back to this project because
now it's something that is a little more
polished a little more production ready
in the corporations
so this is going to be almost fully
hands-on so let me jump out
so the first thing is you need to go to
test project i o
and that will bring up their main
website here
and it is a free open source automation
tool that you can use
for a lot of different things you can
use it for uh web testing you can use it
for mobile testing
and what makes test projects so unique
is it's the first of its kind
where it is 100 open source it's a
community powered test automation
framework
a hundred percent free
they do not charge for anything and it
is a full test automation development
framework designed for agile teams
it also comes with advanced built-in
recording capabilities which we'll look
at today
it also comes with an ai powered self
healing technology built in so like if
your tests break or if you have some
loading issues it kind of can tweak and
self heal itself
it also seamlessly supports iframes
pop-ups dynamic elements modals all
those nasty things that bite us with
selenium or that you have to kind of
write your own solutions around
it also comes in with a built-in
adaptive weight technology so if you
remember some of my discussions about
the test framework i had to create some
custom
weight features in order for us to
handle the different dynamic weights
explicit implicit weights within
selenium so they have this built in
we'll take a look at that it's kind of
cool
it also supports hybrid cloud and it
also now supports completely offline
modes which is brand new with version
2.0
prior to version 2.0 it was completely
cloud-based which was great
unless you're dealing with a proprietary
company or with a company where
everything is stored offline or in
an offline capacity where it's behind a
firewall
it also supports a command line agent
which is really cool we won't get into
that too much today but we'll talk about
that in a future class where you can
actually export your tests and run them
from the command line you can also run
them through jenkins hudson or bamboo
any of your offline continuous
integration frameworks
and their goal is to keep this free
forever to anyone
all you have to do to get started you
can either enter in an email
and create an account through them or
you can use your existing google or
microsoft accounts before i log in
though let's just quickly go through
their website to highlight some of the
key places you might want to check out
so first and foremost test automation
without limits
again it's originally started out as a
cloud-based testing tool
but now they've also given you an
offline feature which is very cool with
version 2.0
you can basically record your test real
time and then you can export them to
rerun them locally
they also
integrate with things like browser
stacks sauce labs
they have some other executions where
you can deploy them through
hudson bamboo
they have really nice debugging and
reporting so you can really see what's
failing and how things are working again
it works seamlessly online and offline
and the other thing i wanted to point
out is well they have some navigation
here at the top the bulk of the
navigation of their website is at the
bottom of the site
this is where you can quickly find
access to anything that you need
one of the cool things here is here's a
quick list of everything that their test
solution covers it will handle web
testing android ios testing selenium
testing and appium testing
now the cool thing here though is ios
testing if you go to the little border
pier
it works even on windows so if you are
testing a native ios application you can
debug it from a windows application so
you're no longer tied to a macintosh in
order to do testing of ios devices so
that was really cool
some other things under platform you
have quick links to the mobile test
recorder the web test recorder
team collaboration this is really cool
so not only can you build your test
cases for your test groups you can also
share these tests across the
organization so you can send them to the
business you can send them to developers
and they can run these tests at will and
also have access to all the tools that
you have access to
again is a fully open source framework
which is really cool so if we wanted to
contribute we could fix a bug contribute
or add a new feature
it is bdd testing ready so you can do
behavior driven development
i'm not a huge fan of that but it is it
does support it so for readability for
business this is one approach you can
take
it's also cross-platform testing so you
can test across multiple browsers you
can test headless you can also push this
out to docker and run across a grid like
framework
it also has command line
and continuous integration pipelines
remote execution and a bunch of add-ons
which i'll briefly cover but i'm not
going to get into specifics to that
and proven testing solutions so it works
with web testing android testing ios
selenium and appy
the documentation
the key thing here i would recommend
if you're going to check this out
definitely start with creating an
account
go through installation and setup this
walks you through how to install the
agent
what you might need to do to set
security settings so that the agent will
actually run on your device
and some other things like you know
quick getting started and getting
started with ios testing
so we're actually going to jump in and
get our hands dirty right off the get-go
so we're not going to worry too much
about that but if you want to come back
later and check this out this is how you
can do it just go under documents
they also have some blogs these are
really cool they talk about selenium 4
some other things in the community
behavior driven development they've got
a lot of
interesting articles out here check some
of those out if you have time
they also have an online forum so you
can ask questions look and see what
issues people are having see if anything
relates to what you're doing
full online support really good
community
you can also search their site it's
really cool
and then you can also kind of look for
different things within the site
key shortcuts frequently asked questions
and so on
okay so from the test i o page we go up
to log in here
so it's going to log me in
now i've already installed the agent but
in order for the test to work or the
test recorder piece to work you have to
actually run the agent so right now it's
not running so let me kick that off
while i talk about the dashboard
so when you log into test project for
the very first time you're going to see
this little interface here
and we have things like project monitor
add-ons reports agents and integration
you also have this new test featured for
recording new tests and you also have
open file if you want to import tests
from your local file system
this little icon here indicates if you
have an agent running and you can have
multiple agents running if you wish so
you could have multiple workers if you
want to try to run multi-threaded
you can also invite people to
your project so you can build your
project team i have not seen a
limitation on this and again this is all
free so this is something maybe as a
group we might want to play around with
it also comes once you first log in for
the first time it comes with a pre-built
test case so the first thing they
recommend you do is once you log in just
run this guy see how it works so we'll
click run
oh okay so to run my test i have to pick
an agent
so since i only have the one agent right
now my first agent i can select that
i can do web testing or mobile testing
now we're not going to focus on mobile
today i'll cover that in the future
so when you select web it gives you all
the different browsers that are
currently installed
on your machine so what can the agent
work with
so i have chrome i have edge i have
firefox and i have safari
now just a little note safari
given the last
ios major update for mojave
this depending upon your security
settings may not work so you may have to
reduce your security settings of safari
in order to actually run safari tests
since most of the world is windows-based
or linux-based safari is just mac so
most of the other browsers here are
where you're going to focus your time
so we'll do chrome
and then i will hit next
so it says override default input
parameters or use source data i don't
have a data file yet so we'll override
the default inputs
and what this does is it looks at the
test and it says oh you have these three
input fields
what is the data that you want to enter
from them so we have the password 123
john doe
and
the start url for the test which is
going to be examples.testproject.io
web
then click run
and while it's running you can hit show
monitor and it will show you all your
agents that are running
so it's repair and it gives you the
status that's preparing the test now
since i ran it in the head mode it
actually opened up the browser it's
walking through it's populating the
values
and it just walked through and it
populated the test page
test finish we have a hundred percent
so as soon as it's done tearing down
this uh agent will shut down
so now it's gone
so now if i go back over to projects
so here's my project i can go here where
you see this little
graph icon
and i can click that and it takes us to
the reports for this run
so this test ran it took 27 seconds
we started it on november 13th the agent
we used was an apple agent my first
agent
so if you actually had multiple machines
with multiple agents you could run these
across like apple windows linux
if you had docker set up you could point
it to different dock
and on your doctor
if you install the agents on each of
your docker instances you can point to
those instances
it shows you the steps that ran
and the steps that passed so if anything
failed you would see a failure
and then you can look at the historical
runs of this so i ran this two days ago
seven days ago
and you can kind of look at the
different history of each
for instance i tried to run doctor who
earlier this morning and it failed
so if you look it says hey we had 100
passing on chrome but safari
it did not run the agent failed because
of the security settings
see test no longer exists so i can't
actually debug into the test but you
could walk into the tests
you can look at the summary report
which you can export and these are
really cool because you can look at the
summary report it's very clean
has all the information that you need
and then you can provide this summary to
the business or to
the developers or business managers
project managers basically say okay here
is the results of our test run
if you're trying to do some additional
debugging or you need to go into
you know further detail for development
they can look at the full report
which not only gives it the summary but
it also gives you the execution details
as well so here's the full details
here's all the steps that ran
here's the results
and the detail
so here we see safari did not run it
errored out the agent failed to kick it
off
one thing you have to be careful of is
make sure you do not close your test
project tab because then you have to
kind of relog in and start over just
quick overview of the menu here so we
have our test jobs these are all the
tests that we've recorded or we've
scripted
if you're working in an offline state
you can click the three dots here and
you can actually save your test as a
file
and if we were to
just save it without you can export it
as a package but we'll just save it as a
file
what's interesting about this is it will
save it as a yaml file
and if we look at the yaml file we see
that okay here's all that information
that we see at the top of our summary
report the project name who created it
when it was created but then you have
the different steps so
your first step here id my first test
then in here you have your settings
the application
again step
the action you want to take
the parameter mappings so it's kind of
like a
json file source except it's just a yaml
file and but it contains all the
information you can configure from this
file
including data that you can then save
and then run through their command line
interface or export this to jenkins
hudson or whatever and then run this
test offline
so it's kind of cool that we can do that
you
Transcript Segments
1.3

[Music]

27.84

hey guys welcome today we are moving

30.96

away from react and

33.28

we're going to start talking about a

35.2

testing tool i ran across called test

37.36

project

38.64

our presentation today we are going to

41.52

just it's going to be an overview of the

43.6

test project application what it is what

46.64

they do

47.68

and we're going to really look at a lot

49.52

of the things that they've added since

51.28

virgin 2.0 came out which uh

54.079

brought me back to this project because

56.079

now it's something that is a little more

57.6

polished a little more production ready

60.239

in the corporations

62.239

so this is going to be almost fully

63.52

hands-on so let me jump out

66.64

so the first thing is you need to go to

68.64

test project i o

71.119

and that will bring up their main

72.64

website here

74.88

and it is a free open source automation

78.56

tool that you can use

80.799

for a lot of different things you can

82.4

use it for uh web testing you can use it

84.56

for mobile testing

87.04

and what makes test projects so unique

90.079

is it's the first of its kind

92.32

where it is 100 open source it's a

95.439

community powered test automation

97.6

framework

99.439

a hundred percent free

101.92

they do not charge for anything and it

104.56

is a full test automation development

106.479

framework designed for agile teams

109.92

it also comes with advanced built-in

111.6

recording capabilities which we'll look

113.28

at today

114.64

it also comes with an ai powered self

116.799

healing technology built in so like if

118.719

your tests break or if you have some

120.719

loading issues it kind of can tweak and

123.28

self heal itself

125.04

it also seamlessly supports iframes

127.28

pop-ups dynamic elements modals all

130.08

those nasty things that bite us with

131.84

selenium or that you have to kind of

134

write your own solutions around

136.48

it also comes in with a built-in

139.36

adaptive weight technology so if you

141.84

remember some of my discussions about

143.28

the test framework i had to create some

145.92

custom

146.959

weight features in order for us to

149.36

handle the different dynamic weights

152.239

explicit implicit weights within

153.68

selenium so they have this built in

155.92

we'll take a look at that it's kind of

157.28

cool

158.56

it also supports hybrid cloud and it

161.92

also now supports completely offline

164

modes which is brand new with version

166.08

2.0

167.519

prior to version 2.0 it was completely

169.84

cloud-based which was great

172.48

unless you're dealing with a proprietary

174.56

company or with a company where

176.8

everything is stored offline or in

179.44

an offline capacity where it's behind a

181.84

firewall

183.28

it also supports a command line agent

186.319

which is really cool we won't get into

188.159

that too much today but we'll talk about

190.48

that in a future class where you can

191.92

actually export your tests and run them

193.92

from the command line you can also run

196.159

them through jenkins hudson or bamboo

198.56

any of your offline continuous

200.239

integration frameworks

202.48

and their goal is to keep this free

204

forever to anyone

205.92

all you have to do to get started you

208.159

can either enter in an email

210.239

and create an account through them or

212.48

you can use your existing google or

214.72

microsoft accounts before i log in

217.28

though let's just quickly go through

218.64

their website to highlight some of the

220.239

key places you might want to check out

222.56

so first and foremost test automation

224.56

without limits

225.84

again it's originally started out as a

229.36

cloud-based testing tool

231.44

but now they've also given you an

233.28

offline feature which is very cool with

235.439

version 2.0

237.439

you can basically record your test real

239.84

time and then you can export them to

242.48

rerun them locally

244.64

they also

246.08

integrate with things like browser

248.4

stacks sauce labs

250.64

they have some other executions where

252.72

you can deploy them through

254.4

hudson bamboo

256.079

they have really nice debugging and

258

reporting so you can really see what's

259.84

failing and how things are working again

262.16

it works seamlessly online and offline

266.24

and the other thing i wanted to point

267.52

out is well they have some navigation

269.44

here at the top the bulk of the

271.12

navigation of their website is at the

272.88

bottom of the site

274.72

this is where you can quickly find

276.56

access to anything that you need

279.199

one of the cool things here is here's a

281.44

quick list of everything that their test

283.36

solution covers it will handle web

285.6

testing android ios testing selenium

289.199

testing and appium testing

291.759

now the cool thing here though is ios

294.16

testing if you go to the little border

296.4

pier

297.36

it works even on windows so if you are

301.199

testing a native ios application you can

304

debug it from a windows application so

306.32

you're no longer tied to a macintosh in

308.72

order to do testing of ios devices so

311.6

that was really cool

313.44

some other things under platform you

315.68

have quick links to the mobile test

317.44

recorder the web test recorder

320.32

team collaboration this is really cool

322.56

so not only can you build your test

324.8

cases for your test groups you can also

328.24

share these tests across the

329.84

organization so you can send them to the

331.52

business you can send them to developers

333.52

and they can run these tests at will and

336.4

also have access to all the tools that

338.08

you have access to

339.84

again is a fully open source framework

341.919

which is really cool so if we wanted to

343.6

contribute we could fix a bug contribute

345.919

or add a new feature

347.759

it is bdd testing ready so you can do

351.68

behavior driven development

353.919

i'm not a huge fan of that but it is it

355.84

does support it so for readability for

358.16

business this is one approach you can

359.84

take

360.639

it's also cross-platform testing so you

363.039

can test across multiple browsers you

365.28

can test headless you can also push this

367.68

out to docker and run across a grid like

371.68

framework

372.96

it also has command line

374.96

and continuous integration pipelines

377.759

remote execution and a bunch of add-ons

380.319

which i'll briefly cover but i'm not

382

going to get into specifics to that

384.72

and proven testing solutions so it works

387.759

with web testing android testing ios

389.759

selenium and appy

391.759

the documentation

393.68

the key thing here i would recommend

396.08

if you're going to check this out

398

definitely start with creating an

399.919

account

400.88

go through installation and setup this

403.12

walks you through how to install the

404.88

agent

405.919

what you might need to do to set

407.6

security settings so that the agent will

410.24

actually run on your device

413.36

and some other things like you know

415.919

quick getting started and getting

417.84

started with ios testing

420

so we're actually going to jump in and

421.44

get our hands dirty right off the get-go

423.28

so we're not going to worry too much

425.12

about that but if you want to come back

427.28

later and check this out this is how you

429.84

can do it just go under documents

432.56

they also have some blogs these are

434.479

really cool they talk about selenium 4

437.12

some other things in the community

439.68

behavior driven development they've got

441.199

a lot of

442.16

interesting articles out here check some

444.08

of those out if you have time

446.479

they also have an online forum so you

448.479

can ask questions look and see what

450.319

issues people are having see if anything

452.4

relates to what you're doing

454.08

full online support really good

455.919

community

457.039

you can also search their site it's

459.199

really cool

460.72

and then you can also kind of look for

462.72

different things within the site

464.56

key shortcuts frequently asked questions

466.56

and so on

468.24

okay so from the test i o page we go up

470.56

to log in here

472.639

so it's going to log me in

474.56

now i've already installed the agent but

476.879

in order for the test to work or the

479.039

test recorder piece to work you have to

480.72

actually run the agent so right now it's

482.879

not running so let me kick that off

486.56

while i talk about the dashboard

490.08

so when you log into test project for

492

the very first time you're going to see

494.479

this little interface here

497.599

and we have things like project monitor

500.639

add-ons reports agents and integration

503.52

you also have this new test featured for

506.08

recording new tests and you also have

508.72

open file if you want to import tests

511.28

from your local file system

514.159

this little icon here indicates if you

516.64

have an agent running and you can have

519.039

multiple agents running if you wish so

521.039

you could have multiple workers if you

522.88

want to try to run multi-threaded

525.279

you can also invite people to

528.16

your project so you can build your

530.32

project team i have not seen a

532.16

limitation on this and again this is all

534.56

free so this is something maybe as a

536.88

group we might want to play around with

540.24

it also comes once you first log in for

542.48

the first time it comes with a pre-built

545.44

test case so the first thing they

547.519

recommend you do is once you log in just

550

run this guy see how it works so we'll

552.56

click run

553.92

oh okay so to run my test i have to pick

556.56

an agent

557.68

so since i only have the one agent right

560.08

now my first agent i can select that

562.8

i can do web testing or mobile testing

567.12

now we're not going to focus on mobile

568.959

today i'll cover that in the future

571.44

so when you select web it gives you all

573.68

the different browsers that are

575.279

currently installed

577.04

on your machine so what can the agent

579.68

work with

580.72

so i have chrome i have edge i have

583.279

firefox and i have safari

586.32

now just a little note safari

588.72

given the last

590.88

ios major update for mojave

594.48

this depending upon your security

596.24

settings may not work so you may have to

598.48

reduce your security settings of safari

601.12

in order to actually run safari tests

604.64

since most of the world is windows-based

606.72

or linux-based safari is just mac so

610.64

most of the other browsers here are

612.16

where you're going to focus your time

614.64

so we'll do chrome

617.36

and then i will hit next

619.92

so it says override default input

621.6

parameters or use source data i don't

624.24

have a data file yet so we'll override

626.399

the default inputs

628.24

and what this does is it looks at the

630.079

test and it says oh you have these three

632.399

input fields

634.079

what is the data that you want to enter

635.839

from them so we have the password 123

638.48

john doe

639.6

and

640.399

the start url for the test which is

643.36

going to be examples.testproject.io

646.16

web

647.36

then click run

649.76

and while it's running you can hit show

651.92

monitor and it will show you all your

653.68

agents that are running

656

so it's repair and it gives you the

657.76

status that's preparing the test now

660.079

since i ran it in the head mode it

662.8

actually opened up the browser it's

664.48

walking through it's populating the

666.24

values

668.64

and it just walked through and it

670

populated the test page

672.24

test finish we have a hundred percent

674.72

so as soon as it's done tearing down

677.6

this uh agent will shut down

680.079

so now it's gone

681.839

so now if i go back over to projects

684.32

so here's my project i can go here where

687.2

you see this little

688.56

graph icon

690.24

and i can click that and it takes us to

692.56

the reports for this run

694.64

so this test ran it took 27 seconds

698.32

we started it on november 13th the agent

701.36

we used was an apple agent my first

703.68

agent

704.64

so if you actually had multiple machines

706.72

with multiple agents you could run these

708.64

across like apple windows linux

711.68

if you had docker set up you could point

713.44

it to different dock

714.88

and on your doctor

716.56

if you install the agents on each of

719.2

your docker instances you can point to

721.2

those instances

723.04

it shows you the steps that ran

725.2

and the steps that passed so if anything

727.36

failed you would see a failure

730.32

and then you can look at the historical

732.16

runs of this so i ran this two days ago

734.959

seven days ago

736.639

and you can kind of look at the

737.839

different history of each

740.56

for instance i tried to run doctor who

742.399

earlier this morning and it failed

746.48

so if you look it says hey we had 100

749.2

passing on chrome but safari

753.279

it did not run the agent failed because

755.68

of the security settings

759.12

see test no longer exists so i can't

760.88

actually debug into the test but you

762.56

could walk into the tests

764.959

you can look at the summary report

767.92

which you can export and these are

769.44

really cool because you can look at the

771.519

summary report it's very clean

775.44

has all the information that you need

777.76

and then you can provide this summary to

779.839

the business or to

781.6

the developers or business managers

783.76

project managers basically say okay here

786.16

is the results of our test run

789.519

if you're trying to do some additional

791.2

debugging or you need to go into

794.16

you know further detail for development

795.92

they can look at the full report

798.72

which not only gives it the summary but

800.88

it also gives you the execution details

803.68

as well so here's the full details

805.36

here's all the steps that ran

809.04

here's the results

811.76

and the detail

813.36

so here we see safari did not run it

816.079

errored out the agent failed to kick it

818

off

819.279

one thing you have to be careful of is

821.36

make sure you do not close your test

823.44

project tab because then you have to

825.199

kind of relog in and start over just

828.72

quick overview of the menu here so we

831.04

have our test jobs these are all the

832.88

tests that we've recorded or we've

834.639

scripted

836

if you're working in an offline state

838.16

you can click the three dots here and

840.399

you can actually save your test as a

843.44

file

844.639

and if we were to

846.16

just save it without you can export it

848.16

as a package but we'll just save it as a

850.88

file

853.36

what's interesting about this is it will

855.76

save it as a yaml file

858.72

and if we look at the yaml file we see

861.04

that okay here's all that information

863.199

that we see at the top of our summary

865.44

report the project name who created it

867.92

when it was created but then you have

870

the different steps so

872.32

your first step here id my first test

876.399

then in here you have your settings

879.279

the application

881.04

again step

882.56

the action you want to take

885.04

the parameter mappings so it's kind of

887.519

like a

888.88

json file source except it's just a yaml

891.44

file and but it contains all the

893.6

information you can configure from this

896.16

file

897.76

including data that you can then save

901.199

and then run through their command line

904.079

interface or export this to jenkins

907.279

hudson or whatever and then run this

909.6

test offline

911.68

so it's kind of cool that we can do that

929.44

you