1
00:00:00,330 --> 00:00:08,220
In this lecture, we are going to talk about sitars in our intent to start a the course selectors sardars

2
00:00:08,220 --> 00:00:11,790
is the heart and soul of an AI automation testing tool.

3
00:00:12,210 --> 00:00:18,600
The easier it is to identify a control, the better it will be for test automation, engineers or the

4
00:00:18,600 --> 00:00:20,320
softwares to work with.

5
00:00:20,460 --> 00:00:27,420
I'm saying software here is nothing but the tools which are extending these automation testing tools.

6
00:00:27,630 --> 00:00:33,300
So playwrite, if it is extended by any other third party testing tool, then it will be very easy for

7
00:00:33,300 --> 00:00:39,960
that particular tool to use playwright's identification mechanism for identifying a control and work

8
00:00:39,960 --> 00:00:40,230
with it.

9
00:00:40,320 --> 00:00:41,840
So that is very, very important.

10
00:00:41,850 --> 00:00:49,080
And these are some of the most important thing right now with the ever changing technology landscape.

11
00:00:49,080 --> 00:00:54,750
And because everything is changing at the moment in the automation testing world, the way the structures

12
00:00:54,840 --> 00:01:01,950
needs to be identified is also needs to be more, more easier and effective while identifying a controller

13
00:01:01,950 --> 00:01:02,310
itself.

14
00:01:02,430 --> 00:01:05,100
And there are various ladders exist in the market.

15
00:01:05,190 --> 00:01:10,500
Some of the most common structures that we always use while automating an application is the see as

16
00:01:10,500 --> 00:01:11,110
a selector.

17
00:01:11,280 --> 00:01:16,920
So I'm saying default here because playwrite uses the SEALs as little engine as the default engine to

18
00:01:16,920 --> 00:01:18,330
select and control.

19
00:01:19,020 --> 00:01:25,350
And then we have XPath selectors and then text Slatyer ID and name.

20
00:01:25,360 --> 00:01:32,040
So these are the most important control that is available on the market and this is how we try to select

21
00:01:32,040 --> 00:01:35,230
the control from the UI and then we work with it.

22
00:01:35,430 --> 00:01:37,800
So this is something very, very important.

23
00:01:37,800 --> 00:01:43,830
And if we know how to work with this Lakhtar, if we know how to identify a control using the parte

24
00:01:43,830 --> 00:01:46,740
or text or ID, then it is going to be very, very easier.

25
00:01:46,920 --> 00:01:51,680
And there are many different tools available on the market which are very, very useful to work with

26
00:01:51,690 --> 00:01:53,520
radars and identifier controls.

27
00:01:53,520 --> 00:01:57,000
You can use the chromed tool itself to identify the controls.

28
00:01:57,000 --> 00:02:01,230
Nowadays they are getting very, very easy and highly sophisticated to identify a control.

29
00:02:01,500 --> 00:02:05,580
I would probably walk through a few of them and we'll talk about them in this particular course as well.

30
00:02:06,180 --> 00:02:11,670
And the playwright's engine by default user a engine, as I told you.

31
00:02:11,820 --> 00:02:18,960
But if any selector starts with a double slash or a double dot, then the engine consider them as an

32
00:02:18,960 --> 00:02:19,730
expat.

33
00:02:19,740 --> 00:02:21,620
So that is very, very important.

34
00:02:21,960 --> 00:02:24,930
If you if you have ever worked with a puppeteer.

35
00:02:25,080 --> 00:02:26,460
And that is a different course.

36
00:02:26,460 --> 00:02:31,860
When I talked about puppeteer, where I need to write some sort of customization to identify and work

37
00:02:31,860 --> 00:02:37,410
with the next part, but here in playwrite, the next part is something in and it is available for you

38
00:02:37,410 --> 00:02:39,500
directly and then you can start working with it.

39
00:02:39,800 --> 00:02:42,270
That's a very, very straightforward way with playwrite.

40
00:02:42,270 --> 00:02:48,690
So it automatically identifies if it is double's or double dot, then it knows that it is basically

41
00:02:48,690 --> 00:02:49,410
an XPath.

42
00:02:49,650 --> 00:02:55,590
Similarly, shallow arms are also supported by default and playwrite using the CCCC light engine.

43
00:02:55,860 --> 00:03:01,350
So this is also one of the most coolest thing because most of the time few tools don't even support

44
00:03:01,500 --> 00:03:02,300
the shattered arms.

45
00:03:02,340 --> 00:03:07,350
I mean, nowadays most of the tool does support shattered arms, so it's not a big deal at all.

46
00:03:07,560 --> 00:03:10,320
Playwrite also supports shattered arms, which is pretty cool.

47
00:03:10,950 --> 00:03:16,790
And the Sears's engines with extensions is another new thing which is available with the playwright

48
00:03:17,010 --> 00:03:25,170
where the engine and the fire control, apart from the normal way of identifying certain elements.

49
00:03:25,320 --> 00:03:31,870
But it also put a suffix like visible text or light, something like that, to identify a controller.

50
00:03:32,130 --> 00:03:38,880
So, for example, if there is a full operation, as you can see over here, but I'm trying to do username

51
00:03:38,880 --> 00:03:41,730
Callon visible and then admin.

52
00:03:41,730 --> 00:03:49,800
What I'm trying to say here is if I need to fill a value like admin for a text box username, then make

53
00:03:49,800 --> 00:03:51,080
sure that it's also visible.

54
00:03:51,180 --> 00:03:55,980
I mean, those things are going to be taken care by you automatically or automatically by playwrite

55
00:03:56,190 --> 00:03:58,370
using actionability ability.

56
00:03:58,380 --> 00:04:02,310
I mean, I talk about the actionability ability later in this section.

57
00:04:02,550 --> 00:04:07,860
But yes, that is something like an auto with our auto action mechanism, which is available in the

58
00:04:07,860 --> 00:04:11,760
playwright the engine automatically to identify a control if it is visible or not.

59
00:04:11,910 --> 00:04:18,750
But you can explicitly specify in some circumstances where the control is super dynamic and you wonder

60
00:04:18,750 --> 00:04:22,920
that dynamic element to be always visible before you perform an operation, something like that.

61
00:04:23,250 --> 00:04:26,190
You can use this call and visible option as well.

62
00:04:26,920 --> 00:04:33,390
You can specify Callon text on any of the control, let's say, if there is a log in text.

63
00:04:33,390 --> 00:04:39,210
But if there is a space or something like that, like I have just given it big space over here, this

64
00:04:39,870 --> 00:04:44,500
will also work similar to this particular click, as you can see over here.

65
00:04:44,610 --> 00:04:51,630
So because the text, as you can see here, it'll automatically removes all the spaces from from the

66
00:04:51,630 --> 00:04:53,430
text that you are trying to identify.

67
00:04:53,430 --> 00:04:56,010
And then it works automatically, but is also on the colting.

68
00:04:56,310 --> 00:04:59,940
Suddenly the light is something which is used for identifying a shadow dom.

69
00:05:00,020 --> 00:05:00,450
And stuff.

70
00:05:00,500 --> 00:05:05,810
So these are some of the cool things is available within the CSA tower engine, within playwrite and

71
00:05:05,810 --> 00:05:06,640
then XPath engine.

72
00:05:06,650 --> 00:05:07,880
I already talked about it.

73
00:05:08,330 --> 00:05:14,750
If Assadullah starts to double slash our double dot, then it is going to identify a control using the

74
00:05:14,750 --> 00:05:15,320
XPath.

75
00:05:15,470 --> 00:05:19,000
And you can see the below example is one of the example of the expired threat.

76
00:05:19,020 --> 00:05:24,350
One point ninety five controllers in the non-aligned space and performing direct operation assembly

77
00:05:24,710 --> 00:05:30,140
text engine is another good thing, which is older than playwrite, where you can specify a visible

78
00:05:30,140 --> 00:05:34,760
text wherever it is, and then you can perform a click operation or enter operation, something like

79
00:05:34,760 --> 00:05:37,660
that, or type operation using the test engine.

80
00:05:37,970 --> 00:05:43,010
So the text engine is like you're going to specify text is equal to create new, then it's going to

81
00:05:43,010 --> 00:05:45,620
click that particular create new text.

82
00:05:45,620 --> 00:05:52,670
Similarly for the login text and for the employee employer list text, you can perform an operation

83
00:05:52,670 --> 00:05:57,590
using text itself, which is also another thing that you can do with the text engine.

84
00:05:57,740 --> 00:06:03,590
So let's quickly see all these ID operation in much, much detail as a demo in our next video.
