در این مطلب، ویدئو تست رابط کاربری وب با پایتون | خودکارسازی وب اپلیکیشن مانند یک حرفه ای | وبینار LambdaTest با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 1:00:51
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,030 –> 00:00:02,520
سلام به همه و با تشکر فراوان برای
2
00:00:02,520 –> 00:00:05,069
پیوستن به وبینار ما برای تست رابط کاربری وب
3
00:00:05,069 –> 00:00:08,790
و peyten با Buyten و با
4
00:00:08,790 –> 00:00:10,769
پلتفرم تست لامبدا از همه شما بسیار
5
00:00:10,769 –> 00:00:12,360
سپاسگزارم و همچنین از شکیبایی شما متشکرم
6
00:00:12,360 –> 00:00:16,199
و من J هستم یکی از
7
00:00:16,199 –> 00:00:20,189
بنیانگذاران lambda هستم تست ها و من
8
00:00:20,189 –> 00:00:22,260
میزبان شما برای این وبینار همراه با
9
00:00:22,260 –> 00:00:24,420
اندرو نایت خواهم بود و سپس فقط برای
10
00:00:24,420 –> 00:00:27,330
معرفی اندرو اندرو
11
00:00:27,330 –> 00:00:30,269
اتوماسیون خود پاندا و او یک
12
00:00:30,269 –> 00:00:31,949
سخنران بین المللی است که
13
00:00:31,949 –> 00:00:34,140
در چندین کنفرانس سلنیوم و پایتون در واقع یادداشت هایی ارائه کرده
14
00:00:34,140 –> 00:00:36,390
است و
15
00:00:36,390 –> 00:00:38,460
نشانگر تجربه را ارائه می کند. در
16
00:00:38,460 –> 00:00:41,670
فضای توسعه و تست اتوماسیون و همچنین
17
00:00:41,670 –> 00:00:44,040
اندرو در ساخت
18
00:00:44,040 –> 00:00:45,829
لباس های اتوماسیون تست از پایه تخصص دارد
19
00:00:45,829 –> 00:00:49,230
و همچنین یکی از حقایق جالب در
20
00:00:49,230 –> 00:00:51,899
مورد اندرو این است که او دوست دارد
21
00:00:51,899 –> 00:00:54,300
دانش خود را بنویسد و به اشتراک بگذارد و یک
22
00:00:54,300 –> 00:00:56,910
وبلاگ آموزنده به نام اتوماسیون هنری
23
00:00:56,910 –> 00:01:00,030
و accomm و من دارد.
24
00:01:00,030 –> 00:01:02,160
اگر می
25
00:01:02,160 –> 00:01:03,629
خواهید در مورد تست اتوماسیون
26
00:01:03,629 –> 00:01:06,830
پایتون و توسعه در ژورنال و توسعه بیشتر بدانید، به شدت توصیه می کنم آن را بررسی کنید.
27
00:01:06,830 –> 00:01:11,850
کاملاً خوب است و اکنون فقط می خواهید
28
00:01:11,850 –> 00:01:14,159
یک مرور کلی درباره آزمایش لامدا به اشتراک بگذارید
29
00:01:14,159 –> 00:01:17,549
که ما در آن دستور کار هستیم که به آن خواهیم پرداخت،
30
00:01:17,549 –> 00:01:20,159
بنابراین آزمایش لامبدا
31
00:01:20,159 –> 00:01:24,860
باعث ارتقای ابر آزمایش بین مرورگرها می شود و
32
00:01:24,860 –> 00:01:28,290
ما اساساً در حال ایجاد یک
33
00:01:28,290 –> 00:01:30,060
زیرساخت اجرای آزمایش بر روی ابر
34
00:01:30,060 –> 00:01:32,939
و امروز هستیم. از امروز ما حدود
35
00:01:32,939 –> 00:01:35,759
2000 ترکیب مرورگر و
36
00:01:35,759 –> 00:01:38,790
سیستم عامل را در فضای ابری داریم و با
37
00:01:38,790 –> 00:01:41,610
این گفته که میتوانید
38
00:01:41,610 –> 00:01:44,490
تست اتوماسیون سلنیوم را انجام دهید
39
00:01:44,490 –> 00:01:46,860
و
40
00:01:46,860 –> 00:01:48,509
اسکریپتهای تست اتوماسیون سلنیوم خود را به ابر خود وصل کنید و
41
00:01:48,509 –> 00:01:51,270
ما از 32 نیز پشتیبانی میکنیم. فریمورکهایی که
42
00:01:51,270 –> 00:01:54,720
از اسکریپتهای سلنیومی مانند Nightwatch پشتیبانی میکنند
43
00:01:54,720 –> 00:01:57,390
و میتوانید برای تراکتور و بسیاری دیگر بگویید.
44
00:01:57,390 –> 00:01:59,820
45
00:01:59,820 –> 00:02:03,329
46
00:02:03,329 –> 00:02:05,219
47
00:02:05,219 –> 00:02:07,500
48
00:02:07,500 –> 00:02:08,848
در همین راستا و من خوشحال خواهم شد که
49
00:02:08,848 –> 00:02:10,500
به هر سوالی که پیش میرویم پاسخ
50
00:02:10,500 –> 00:02:13,800
دهم و با آن میتوانید آزمایش زندگی را نیز
51
00:02:13,800 –> 00:02:15,930
یک آزمایش پاسخگو در
52
00:02:15,930 –> 00:02:17,700
تست اسکرین شات امروز انجام دهید و
53
00:02:17,700 –> 00:02:20,400
100000 آزمایش کننده و توسعه دهنده در
54
00:02:20,400 –> 00:02:22,320
سراسر جهان که به پلتفرم ما برای
55
00:02:22,320 –> 00:02:25,320
انجام آزمایش مرورگرهای متقابل اعتماد دارند و همانطور
56
00:02:25,320 –> 00:02:27,000
که قبلاً گفتم ما
57
00:02:27,000 –> 00:02:28,950
با ابزارهای مدیریت پروژه و همچنین
58
00:02:28,950 –> 00:02:32,850
برای ثبت اشکال با یک کلیک ادغام شدید داریم و
59
00:02:32,850 –> 00:02:34,290
همچنین می توانید برنامه خود را اجرا کنید و تست های خود را اجرا کنید.
60
00:02:34,290 –> 00:02:36,810
از ابزارهای CI CD و جدای از
61
00:02:36,810 –> 00:02:39,750
آن یکی از فاکتورهای متمایز
62
00:02:39,750 –> 00:02:42,630
کننده اصلی در مورد ما پشتیبانی 24 ساعته و 7 روز هفته است و
63
00:02:42,630 –> 00:02:45,540
اگر با هر چالشی روبرو هستید همانطور که می
64
00:02:45,540 –> 00:02:47,370
دانید پیش بروید و اگر می خواهید
65
00:02:47,370 –> 00:02:49,170
چرخش تستر لامبدا را انجام دهید می توانید به نوعی
66
00:02:49,170 –> 00:02:53,030
با ما از طریق پشتیبانی چت خود و
67
00:02:53,030 –> 00:02:55,470
همچنین ما یک برنامه پرمیوم دسترسی به محصول مادام العمر
68
00:02:55,470 –> 00:02:57,840
نیز در مورد محصول خود داریم،
69
00:02:57,840 –> 00:03:00,780
بنابراین این یک مرور کلی است و در مورد
70
00:03:00,780 –> 00:03:02,700
تست لامبدا من نمی خواهم
71
00:03:02,700 –> 00:03:04,410
زمان زیادی را در اینجا صرف کنم، فکر می کنم بیشتر
72
00:03:04,410 –> 00:03:06,030
چیزهایی که و
73
00:03:06,030 –> 00:03:07,440
ما نحوه پین کردن تست نرخ لامبدا را نی
74
00:03:07,440 –> 00:03:10,830
در تستهای در حال اجرا پوشش میدهیم، بنابراین دستور کار امروز ما
75
00:03:10,830 –> 00:03:13,740
حوه ان
76
00:03:13,740 –> 00:03:17,430
ام تست رابط کاربری وب و مروری بر هم
77
00:03:17,430 –> 00:03:20,760
ن موضوع با پایتون و هم
78
00:03:20,760 –> 00:03:22,170
نین بررسی خواهیم کرد. به شما کمک کنیم که چگونه می توانیم اولین تست شما را بنویسیم
79
00:03:22,170 –> 00:03:26,010
و همچنین چگونه می توانید
80
00:03:26,010 –> 00:03:30,150
تعامل با مرورگر ایجاد کنید و تست های نبرد را
81
00:03:30,150 –> 00:03:32,970
در چندین مرورگر اجرا کنید و پست کنید که
82
00:03:32,970 –> 00:03:34,920
ما همچنین خوشحال خواهیم شد به هر
83
00:03:34,920 –> 00:03:37,620
سوالی که ممکن است داشته باشید پاسخ دهیم و بله
84
00:03:37,620 –> 00:03:40,440
شما چه می گویید اندرو با تشکر جی متشکرم برای
85
00:03:40,440 –> 00:03:42,390
یک مقدمه عالی و سلام به همه
86
00:03:42,390 –> 00:03:47,459
اجازه دهید من صفحه نمایشم را اینجا به اشتراک بگذارم جی آیا شما
87
00:03:47,459 –> 00:03:49,800
نیاز به کنترل دارید یا هر چیز دیگری نه من
88
00:03:49,800 –> 00:03:58,470
فکر می کنم می توانید اوکی خوب را به اشتراک بگذارید.
89
00:03:58,470 –> 00:04:00,420
90
00:04:00,420 –> 00:04:06,959
91
00:04:06,959 –> 00:04:10,019
92
00:04:10,019 –> 00:04:13,680
بیایید آزمایش رابط کاربری وب را برای شروع آسان کنیم.
93
00:04:13,680 –> 00:04:15,150
میخواهم به همه
94
00:04:15,150 –> 00:04:17,310
اطلاع دهم که پروژه نمونهای که
95
00:04:17,310 –> 00:04:19,680
امروز از آن استفاده خواهیم کرد در github میزبانی شده است.
96
00:04:19,680 –> 00:04:22,950
زیر حساب کاربری من handy lpk 247 است
97
00:04:22,950 –> 00:04:25,260
و نام پروژه تست لامبدا
98
00:04:25,260 –> 00:04:28,159
پایتون است. تست رابط کاربری وب
99
00:04:28,159 –> 00:04:31,139
بعد از این وبینار، می
100
00:04:31,139 –> 00:04:33,599
توانید آن پروژه را بررسی کنید و آن را شبیه سازی کنید و سعی کنید
101
00:04:33,599 –> 00:04:35,099
آن را به صورت محلی با مجوز تست لامبدا خود اجرا کنید
102
00:04:35,099 –> 00:04:37,080
و حتی می توانید از آن برای
103
00:04:37,080 –> 00:04:39,569
گسترش آن با آزمایش های جدید استفاده کنید تا بتوانید از
104
00:04:39,569 –> 00:04:43,409
آن استفاده کنید. پس بیایید در مورد
105
00:04:43,409 –> 00:04:46,710
آزمایش رابط کاربری وب در واقع
106
00:04:46,710 –> 00:04:49,189
صحبت کنیم وقتی میگویم تست رابط کاربری وب در مورد
107
00:04:49,189 –> 00:04:52,939
آزمایش جعبه سیاه یک برنامه وب
108
00:04:52,939 –> 00:04:56,310
از طریق یک مرورگر زنده صحبت میکنم، این بسیار
109
00:04:56,310 –> 00:04:58,080
متفاوت از آزمایش واحد است که
110
00:04:58,080 –> 00:05:00,659
تست کد با آزمایش رابط کاربری وب ما است. در
111
00:05:00,659 –> 00:05:03,210
حال آزمایش ویژگیها هستیم،
112
00:05:03,210 –> 00:05:06,000
دقیقاً مانند یک کاربر انسانی که
113
00:05:06,000 –> 00:05:08,039
با برنامه وب شما از طریق
114
00:05:08,039 –> 00:05:11,009
مرورگری مانند Chrome یا هر مرورگر دیگری از
115
00:05:11,009 –> 00:05:13,620
این قبیل تعامل میکند، چیزی که این نوع
116
00:05:13,620 –> 00:05:15,810
آزمایش را قدرتمند میکند این است که واقعاً یکسره است.
117
00:05:15,810 –> 00:05:18,810
اگرچه تست و
118
00:05:18,810 –> 00:05:21,659
اتوماسیون ما عمدتاً
119
00:05:21,659 –> 00:05:25,500
با مرورگر با رابط کاربری وب در تعامل است،
120
00:05:25,500 –> 00:05:29,699
کل آن برنامه به طور غیرمستقیم آزمایش می شود، زیرا
121
00:05:29,699 –> 00:05:32,669
این پشته باید برای ارائه آن
122
00:05:32,669 –> 00:05:35,240
برنامه وب وجود داشته باشد، بنابراین ما
123
00:05:35,240 –> 00:05:40,169
نه تنها رابط کاربری وب بلکه رابط کاربری وب را آزمایش می کنیم. سرویس
124
00:05:40,169 –> 00:05:42,779
API پشت آن هر لایه پایداری از
125
00:05:42,779 –> 00:05:47,759
پایگاههای اطلاعاتی است، هر باری که هر کارگری را به رشته تحریر در میآورد،
126
00:05:47,759 –> 00:05:49,979
هر چیزی و هر چیزی
127
00:05:49,979 –> 00:05:52,529
که وارد آن برنامه وب میشود،
128
00:05:52,529 –> 00:05:56,120
وقتی با رابط کاربری وب تعامل میکنیم، به
129
00:05:56,120 –> 00:05:58,710
هر حال، رابط کاربری وب، لمس میشود. آنها می توانند کمی
130
00:05:58,710 –> 00:06:03,270
چالش برانگیز باشند زیرا خودکار کردن
131
00:06:03,270 –> 00:06:06,210
تست های رابط کاربری وب کمی تخصص و کمی زمان را می طلبد.
132
00:06:06,210 –> 00:06:09,449
آنها همچنین شهرت بدنام
133
00:06:09,449 –> 00:06:12,029
به پوسته پوسته بودن را دارند و بسیاری
134
00:06:12,029 –> 00:06:14,400
اوقات این لزوماً به این دلیل نیست که
135
00:06:14,400 –> 00:06:17,520
برنامه وب خود پوسته پوسته است،
136
00:06:17,520 –> 00:06:19,620
بلکه در داخل اتوماسیون است. کدی که
137
00:06:19,620 –> 00:06:21,990
ما همیشه
138
00:06:21,990 –> 00:06:24,419
شرایط مسابقه یا تغییرات پویا در یک
139
00:06:24,419 –> 00:06:27,270
صفحه وب را به درستی مدیریت نمیکنیم، بنابراین با این چالشها، ما
140
00:06:27,270 –> 00:06:29,430
همیشه میخواهیم تلاشهای تست رابط کاربری وب
141
00:06:29,430 –> 00:06:32,069
خود را بر کسب بالاترین بازده
142
00:06:32,069 –> 00:06:33,930
سرمایه برای زمانی که صرف
143
00:06:33,930 –> 00:06:36,719
انجام آن میکنیم متمرکز کنیم.
144
00:06:36,719 –> 00:06:39,120
میخواهیم لزوماً همه چیزهایی را که میخواهیم آزمایش کنیم،
145
00:06:39,120 –> 00:06:40,470
چیزهای مهمی هستند،
146
00:06:40,470 –> 00:06:43,530
بنابراین هر نوع کد سطح پایینتری را
147
00:06:43,530 –> 00:06:44,820
باید در سطوح واحد و
148
00:06:44,820 –> 00:06:47,520
ادغام آزمایش کنیم و وقتی
149
00:06:47,520 –> 00:06:49,830
تستهای خودکار رابط کاربری وب را انجام میدهیم،
150
00:06:49,830 –> 00:06:52,130
باید در آنها فعال باشند. به رفتارهای فردی اهمیت دهید،
151
00:06:52,130 –> 00:06:56,150
بنابراین بازگشت سرمایه را به حداکثر برسانید،
152
00:06:56,150 –> 00:06:58,620
آزمایش خود را مانند یک کاربر به
153
00:06:58,620 –> 00:07:03,390
حداکثر برسانید، بیایید در مورد
154
00:07:03,390 –> 00:07:05,390
راه حلی که امروز پیادهسازی میکنیم صحبت کنیم.
155
00:07:05,390 –> 00:07:08,670
156
00:07:08,670 –> 00:07:10,770
من می خواهم بسیار واضح بگویم که این
157
00:07:10,770 –> 00:07:12,360
فقط یک حوزه متفاوت از توسعه نرم افزار
158
00:07:12,360 –> 00:07:14,070
است، یک سیستم جلویی نیست، یک
159
00:07:14,070 –> 00:07:15,930
سیستم پشتیبان نیست، اما
160
00:07:15,930 –> 00:07:18,570
همچنان یک سیستم است و بنابراین ما باید
161
00:07:18,570 –> 00:07:20,370
با توسعه اتوماسیون به همان
162
00:07:20,370 –> 00:07:21,780
روشی رفتار کنیم که می کنیم. هر گونه توسعه نرمافزار دیگری را
163
00:07:21,780 –> 00:07:24,690
که ما به شیوههای خوب نیاز داریم درمان کنیم،
164
00:07:24,690 –> 00:07:26,730
باید از الگوهای طراحی خوب پیروی کنیم،
165
00:07:26,730 –> 00:07:28,470
باید مرور کدها را در
166
00:07:28,470 –> 00:07:30,600
کل shebang-a-bang مرور کنیم، بنابراین در اینجا
167
00:07:30,600 –> 00:07:32,670
پشته ما برای راهحلی
168
00:07:32,670 –> 00:07:35,190
که امروز میخواهیم بسازیم چگونه به نظر میرسد.
169
00:07:35,190 –> 00:07:37,860
اگر من را می شناسید، حالا
170
00:07:37,860 –> 00:07:41,160
پایتون را انتخاب کنید، اما دلیل
171
00:07:41,160 –> 00:07:42,360
اینکه ما امروز از پایتون برای این وبینار استفاده می کنیم این
172
00:07:42,360 –> 00:07:44,760
است که پایتون یک
173
00:07:44,760 –> 00:07:47,280
زبان شگفت انگیز برای اتوماسیون تست
174
00:07:47,280 –> 00:07:50,940
است، مختصر و در عین حال قدرتمند است و
175
00:07:50,940 –> 00:07:53,430
ابزار عالی دارد، از چارچوب های عالی پشتیبانی می کند
176
00:07:53,430 –> 00:07:56,730
و برای تازه واردان به
177
00:07:56,730 –> 00:07:58,200
آزمایش و اتوماسیون آسان است که آن را
178
00:07:58,200 –> 00:08:01,620
سریع انتخاب کنند و همچنین برای متخصصان باتجربه قدرتمند
179
00:08:01,620 –> 00:08:03,150
است که آسیب واقعی وارد کنند،
180
00:08:03,150 –> 00:08:05,910
بنابراین به عنوان یک زبان همه منظوره Python
181
00:08:05,910 –> 00:08:08,460
فوق العاده است. و شخصاً من دوست
182
00:08:08,460 –> 00:08:10,200
دارم از آن برای اتوماسیون تست استفاده کنم، بنابراین این همان
183
00:08:10,200 –> 00:08:12,840
چیزی است که امروز می خواهیم از آن استفاده کنیم چارچوب اصلی ما
184
00:08:12,840 –> 00:08:14,910
چارچوب تست PI خواهد بود
185
00:08:14,910 –> 00:08:17,520
که یکی از
186
00:08:17,520 –> 00:08:21,270
محبوب ترین فریم ورک های آزمایشی پایتون برای تعاملات رابط کاربری وب
187
00:08:21,270 –> 00:08:23,820
ما است و ما آنها را مدل خواهیم کرد. اکنون با استفاده از
188
00:08:23,820 –> 00:08:25,350
چیزی به نام الگوی شی صفحه،
189
00:08:25,350 –> 00:08:27,450
اگر قبل از اینکه احتمالاً در مورد اشیاء صفحه بدانید، اتوماسیون تست رابط کاربری وب را انجام داده اید،
190
00:08:27,450 –> 00:08:28,919
191
00:08:28,919 –> 00:08:31,050
اما ما آنها را
192
00:08:31,050 –> 00:08:34,469
به طور مفصل برای مکانیک اتوماسیون مرورگر پوشش
193
00:08:34,469 –> 00:08:37,049
خواهیم داد، از webdriver سلنیوم استفاده خواهیم کرد
194
00:08:37,049 –> 00:08:40,979
که عملاً عمل می کند. ابزار استاندارد برای
195
00:08:40,979 –> 00:08:43,049
این نوع از تعاملات مرورگر جعبه سیاه
196
00:08:43,049 –> 00:08:46,520
با اتوماسیون تست و
197
00:08:46,520 –> 00:08:49,080
در نهایت در پایان به شما نشان خواهم داد که چگونه
198
00:08:49,080 –> 00:08:51,270
راه حل خود را برای انجام
199
00:08:51,270 –> 00:08:53,160
آزمایش چند مرورگر با اجرای موازی
200
00:08:53,160 –> 00:08:53,889
در
201
00:08:53,889 –> 00:09:01,779
ابر با استفاده از dr. برای آزمایش اگر
202
00:09:01,779 –> 00:09:04,029
راه حل خود را تجسم می کنیم،
203
00:09:04,029 –> 00:09:04,959
چیزی شبیه به این خواهد بود
204
00:09:04,959 –> 00:09:06,850
که در سمت چپ با تست های پایتون خود شروع می کنیم
205
00:09:06,850 –> 00:09:09,699
و آزمایش های پایتون خود را
206
00:09:09,699 –> 00:09:11,529
که در تست PI نوشته شده است،
207
00:09:11,529 –> 00:09:14,439
با اشیاء صفحه تماس می گیریم که در داخل آن
208
00:09:14,439 –> 00:09:15,850
کلاس های شی صفحه هستند. با
209
00:09:15,850 –> 00:09:18,399
اتصالات درایور وب سلنیوم تماس میگیرد، مواردی مانند
210
00:09:18,399 –> 00:09:22,600
کلیک کردن روی دکمهها و نوشتن متن در
211
00:09:22,600 –> 00:09:24,609
سمت راست، ما مرورگرهای زنده واقعی خود را خواهیم داشت
212
00:09:24,609 –> 00:09:29,079
کروم فایرفاکس سافاری.
213
00:09:29,079 –> 00:09:32,829
214
00:09:32,829 –> 00:09:35,230
215
00:09:35,230 –> 00:09:38,319
بین
216
00:09:38,319 –> 00:09:40,410
اتوماسیون تست شما و مرورگر،
217
00:09:40,410 –> 00:09:43,540
ما با انجام آزمایشها به صورت محلی
218
00:09:43,540 –> 00:09:45,579
روی یک دستگاه شروع میکنیم، در واقع اگر
219
00:09:45,579 –> 00:09:48,699
220
00:09:48,699 –> 00:09:50,049
آزمایش محلی انجام دهید، به یک وبدرایور قابل اجرا نیاز دارید
221
00:09:50,049 –> 00:09:51,759
که با مرورگر شما سازگار
222
00:09:51,759 –> 00:09:53,410
باشد. اگر از
223
00:09:53,410 –> 00:09:55,629
کروم استفاده می کنید، اکنون باید درایور کروم را
224
00:09:55,629 –> 00:09:58,809
در مسیر سیستم خود نصب کنید، اگر
225
00:09:58,809 –> 00:10:01,509
آزمایش از راه دور انجام می دهید، مانند ما
226
00:10:01,509 –> 00:10:04,480
این تست لامبدا را انجام می دهیم، می توانید از سرویسی
227
00:10:04,480 –> 00:10:06,160
مانند lambda tes استفاده کنید. برای شما به جای
228
00:10:06,160 –> 00:10:08,199
انجام درایورهای محلی، درخواستی
229
00:10:08,199 –> 00:10:10,929
از یک درایور وب راه دور میکنید و یک جلسه از آزمایشهای لامبدا دریافت میکنید، در غیر این صورت میتوانید
230
00:10:10,929 –> 00:10:14,049
231
00:10:14,049 –> 00:10:16,389
232
00:10:16,389 –> 00:10:18,489
شبکه سلنیوم خود را راهاندازی کنید که کار زیادی است
233
00:10:18,489 –> 00:10:20,049
که ما انجام نمیدهیم. برای صحبت در مورد آن
234
00:10:20,049 –> 00:10:22,889
امروز، اما به طور کلی این اساساً نحوه
235
00:10:22,889 –> 00:10:29,559
عملکرد اتوماسیون درایور وب است، اجازه دهید یک
236
00:10:29,559 –> 00:10:35,190
آزمایش اول را به عنوان
237
00:10:35,190 –> 00:10:36,930
راه حل بخشی بنویسیم و قصد داریم
238
00:10:36,930 –> 00:10:40,530
برنامه وب DuckDuckGo را که من دکتر را انتخاب کردم، آزمایش کنیم.
239
00:10:40,530 –> 00:10:44,220
Koh به دلیل رایگان بودن رابط کاربری آن
240
00:10:44,220 –> 00:10:46,800
بسیار ساده است و همه می دانند که چگونه
241
00:10:46,800 –> 00:10:51,090
از موتورهای جستجو استفاده کنند، من همیشه
242
00:10:51,090 –> 00:10:54,240
همیشه توصیه می
243
00:10:54,240 –> 00:10:57,140
کنم قبل از شروع به نوشتن کد تست، مراحل تست خود را بنویسید
244
00:10:57,140 –> 00:10:59,700
، مطمئن شوید که چیزهای درستی را آزمایش می
245
00:10:59,700 –> 00:11:01,980
کنید و مطمئن شوید که رفتارهای خود را درک می کنید.
246
00:11:01,980 –> 00:11:04,290
به خوبی در حال تست هستید و می توانید
247
00:11:04,290 –> 00:11:06,570
قبل از اینکه وارد کد اتوماسیون شوید آنها را به زبان ساده توضیح دهید،
248
00:11:06,570 –> 00:11:09,600
بنابراین
249
00:11:09,600 –> 00:11:11,910
با در نظر گرفتن این موضوع، بیایید با هم یک
250
00:11:11,910 –> 00:11:16,830
تست جستجوی اولیه برای دلکو بنویسیم. مراحل
251
00:11:16,830 –> 00:11:19,350
بسیار ساده خواهند بود، اولین
252
00:11:19,350 –> 00:11:21,510
قدم رفتن به کام
253
00:11:21,510 –> 00:11:26,730
DuckDuckGo هنگامی که آن صفحه بارگیری شد،
254
00:11:26,730 –> 00:11:28,860
مرحله دوم ما وارد کردن عبارت جستجوی مورد
255
00:11:28,860 –> 00:11:31,320
نظرمان خواهد بود، آن را تایپ می کنیم و اینتر را می
256
00:11:31,320 –> 00:11:34,080
زنیم یا روی نماد ساعت شنی کوچک کلیک می کنیم،
257
00:11:34,080 –> 00:11:39,810
اکنون که
258
00:11:39,810 –> 00:11:41,910
هسته رفتار است و سه مرحله بعدی در
259
00:11:41,910 –> 00:11:43,770
حال انجام است. برای تأیید مواردی که
260
00:11:43,770 –> 00:11:46,200
در نتیجه اتفاق میافتند، بنابراین اولین چیزی که
261
00:11:46,200 –> 00:11:48,600
در مرحله سه تأیید میکنیم این است که بررسی
262
00:11:48,600 –> 00:11:51,300
میکنیم که درخواست ما در بالای
263
00:11:51,300 –> 00:11:56,280
صفحه نتایج ظاهر میشود. مرحله چهارم تأیید میکند
264
00:11:56,280 –> 00:11:58,410
که سؤال ry در عنوان
265
00:11:58,410 –> 00:12:01,680
صفحه ظاهر شد و در نهایت جامع ترین
266
00:12:01,680 –> 00:12:04,860
بررسی مطمئن می شود که پرس و جو
267
00:12:04,860 –> 00:12:08,610
به نحوی در همه
268
00:12:08,610 –> 00:12:11,310
عناوین پیوندی برای نتایج برگشتی در
269
00:12:11,310 –> 00:12:13,880
صفحه نتایج
270
00:12:16,850 –> 00:12:19,970
ظاهر
271
00:12:19,970 –> 00:12:22,519
می شود. زبانی
272
00:12:22,519 –> 00:12:26,629
به نام Gherkin Gherkin به سادگی داده میشود
273
00:12:26,629 –> 00:12:29,720
که سپس برای تستها و برای رفتارها قالببندی میشود، اگر در مورد
274
00:12:29,720 –> 00:12:32,299
آن شنیدهاید، بسیار شبیه به
275
00:12:32,299 –> 00:12:34,069
الگوی order act assert است،
276
00:12:34,069 –> 00:12:34,699
277
00:12:34,699 –> 00:12:38,269
بنابراین مراحل من اساساً همان چیزی است که گفتیم
278
00:12:38,269 –> 00:12:38,720
279
00:12:38,720 –> 00:12:40,369
با توجه به اینکه صفحه اصلی DuckDuckGo
280
00:12:40,369 –> 00:12:42,379
نمایش داده میشود. کاربر
281
00:12:42,379 –> 00:12:44,929
پاندا را جستجو می کند و سپس جستجوی نتیجه جستجو عبارت است از
282
00:12:44,929 –> 00:12:47,029
عنوان نتیجه جستجوی پاندا شامل پاندا است
283
00:12:47,029 –> 00:12:49,629
و پیوندهای نتیجه جستجو به پاندا مربوط می شود
284
00:12:49,629 –> 00:12:52,160
همانطور که قبلاً گفتم
285
00:12:52,160 –> 00:12:54,559
نوشتن این مراحل بسیار مفید است تا
286
00:12:54,559 –> 00:12:56,419
بدانید دقیقاً چه چیزی را آزمایش می کنید و
287
00:12:56,419 –> 00:12:58,759
این نیز باعث می شود به اشتراک گذاشتن
288
00:12:58,759 –> 00:13:00,799
موارد آزمایشی و مرور آنها حتی با
289
00:13:00,799 –> 00:13:02,720
افرادی که برنامهنویسی را نمیدانند یا
290
00:13:02,720 –> 00:13:09,410
اتوماسیون تست را نمیدانند، آسانتر است، حالا اجازه دهید
291
00:13:09,410 –> 00:13:14,169
این مراحل را در تست PI قرار دهیم. تست PI یک
292
00:13:14,169 –> 00:13:17,479
چارچوب تست فوق العاده است، یکی از
293
00:13:17,479 –> 00:13:19,100
محبوب ترین فریم ورک های تست در پایتون است
294
00:13:19,100 –> 00:13:22,069
و همچنین در صفحه اصلی آن ها آمده است که تست PI
295
00:13:22,069 –> 00:13:24,350
به شما کمک می کند برنامه های بهتری بنویسید که می
296
00:13:24,350 –> 00:13:26,779
توانید در این کادر خاکستری در اینجا نمونه ای از
297
00:13:26,779 –> 00:13:29,899
یک تست تست PI را ببینید که چگونه است. یک
298
00:13:29,899 –> 00:13:33,499
تابع ساده تست def
299
00:13:33,499 –> 00:13:36,529
پاسخ زیرخط و شما از یک
300
00:13:36,529 –> 00:13:39,619
بیانیه اصلی برای تأیید اعتبار خوب یا
301
00:13:39,619 –> 00:13:44,209
بد استفاده می
302
00:13:44,209 –> 00:13:48,079
303
00:13:48,079 –> 00:13:51,079
304
00:13:51,079 –> 00:13:53,479
کنید. ساده، بسیار سبک
305
00:13:53,479 –> 00:13:55,699
است، بسیار پایتونیک است و به همین دلیل
306
00:13:55,699 –> 00:13:59,720
است که امروز از آن استفاده خواهیم کرد، هدف
307
00:13:59,720 –> 00:14:01,519
از این وبینار لزوماً
308
00:14:01,519 –> 00:14:05,209
آموزش تست PI به همه شما نیست، من از
309
00:14:05,209 –> 00:14:07,159
تست های PI به عنوان چارچوبی برای اتوماسیون استفاده
310
00:14:07,159 –> 00:14:09,350
خواهم کرد، اما اگر می خواهید یاد بگیرید اطلاعات بیشتر در مورد
311
00:14:09,350 –> 00:14:11,269
تست PI و من شدیداً شما را تشویق می کنم که این کار را انجام دهید
312
00:14:11,269 –> 00:14:14,089
بنابراین می توانم این دو کتاب را توصیه کنم که
313
00:14:14,089 –> 00:14:16,129
هر دو تست پایتون عالی
314
00:14:16,129 –> 00:14:18,470
با تست های PI توسط برایان هولکامب و
315
00:14:18,470 –> 00:14:20,749
همچنین تست های PI راهنمای QuickStart توسط برونو
316
00:14:20,749 –> 00:14:23,119
اولیویرا هستند. همچنین می توانید جستجو کنید تست PI dot
317
00:14:23,119 –> 00:14:25,399
PI Doc’s online آنها
318
00:14:25,399 –> 00:14:29,439
بسیار خوب نوشته شده اند، علاوه بر این
319
00:14:30,480 –> 00:14:33,129
تست pi بخشی از
320
00:14:33,129 –> 00:14:36,250
کتابخانه استاندارد پایتون نیست، اما برای دریافت آن فقط
321
00:14:36,250 –> 00:14:38,319
یک پیپ نصب است، اگر پایتون را
322
00:14:38,319 –> 00:14:41,439
می دانید، می دانید که pip یک مدیر بسته پایتون است،
323
00:14:41,439 –> 00:14:43,990
می توانید هر چیزی را نصب کنید. که رایگان و
324
00:14:43,990 –> 00:14:46,209
منبع باز از پیپ است، تنها کاری که در خط فرمان انجام می دهید این
325
00:14:46,209 –> 00:14:49,060
است که تست pip install pi را تایپ کنید
326
00:14:49,060 –> 00:14:52,620
و پس از نصب تست pi، بسته را دریافت خواهید کرد،
327
00:14:53,790 –> 00:14:57,699
بیایید
328
00:14:57,699 –> 00:15:01,779
تست را
329
00:15:01,779 –> 00:15:04,329
از دایرکتوری ریشه خود با تست pi به کد پروژه خود اضافه کنیم. بهترین
330
00:15:04,329 –> 00:15:06,220
کار این است که یک زیرشاخه
331
00:15:06,220 –> 00:15:09,519
به نام tests ایجاد کنید و در آن
332
00:15:09,519 –> 00:15:12,490
دایرکتوری tests یک ماژول پایتون بسازید
333
00:15:12,490 –> 00:15:14,199
که با پیشوند نام تست
334
00:15:14,199 –> 00:15:17,050
زیرخط، اگر به درخت پروژه نگاه کنید،
335
00:15:17,050 –> 00:15:18,819
336
00:15:18,819 –> 00:15:23,560
اگر از این مسیر استفاده کنید، کل مسیر را خواهید دید که املای آن مشخص شده است. این طرح پوشه و
337
00:15:23,560 –> 00:15:26,350
سپس تستهای pi به طور
338
00:15:26,350 –> 00:15:27,819
خودکار تمام تستهای شما را زمانی که برای اجرای تستها میروید کشف میکند،
339
00:15:27,819 –> 00:15:30,100
بنابراین
340
00:15:30,100 –> 00:15:33,220
در داخل ماژول جستجوی تست py ما واقعاً خوب و راحت است،
341
00:15:33,220 –> 00:15:35,529
ما میخواهیم تابعی
342
00:15:35,529 –> 00:15:38,680
به نام test basic Du اضافه کنیم. اکنون در جستجوی ckDuckGo
343
00:15:38,680 –> 00:15:40,449
متوجه خواهید شد که همه چیز در
344
00:15:40,449 –> 00:15:43,120
نظرات است. هر دو کامنتها تمام
345
00:15:43,120 –> 00:15:45,610
مراحل مربوط به
346
00:15:45,610 –> 00:15:48,970
آزمایش ما را به همراه تگهای انجام دادن نشان میدهند.
347
00:15:48,970 –> 00:15:51,490
348
00:15:51,490 –> 00:15:53,500
مورد آزمایشی
349
00:15:53,500 –> 00:15:54,970
برای اطمینان از اینکه همه چیز
350
00:15:54,970 –> 00:15:57,160
قابل درک و مستند است و
351
00:15:57,160 –> 00:16:03,699
همچنین پس از انجام تستهای pi هیچ مرحلهای را فراموش نمیکنم
352
00:16:03,699 –> 00:16:05,259
، زمان آن است
353
00:16:05,259 –> 00:16:07,589
که تعامل با مرورگر را شروع
354
00:16:07,589 –> 00:16:10,559
کنیم و اینجاست که از selenium webdriver
355
00:16:10,559 –> 00:16:12,959
selenium webdriver
356
00:16:12,959 –> 00:16:15,699
رایگان است. و بسته منبع باز که
357
00:16:15,699 –> 00:16:17,860
استاندارد واقعی برای اتوماسیون UI وب جعبه سیاه
358
00:16:17,860 –> 00:16:21,790
است، دارای پیوندهای زبانی است
359
00:16:21,790 –> 00:16:23,920
زیرا در همه زبان های برنامه نویسی اصلی
360
00:16:23,920 –> 00:16:27,939
جاوا c-sharp Ruby curl و
361
00:16:27,939 –> 00:16:31,420
همچنین برای پایتون، نام بسته پایتون
362
00:16:31,420 –> 00:16:34,720
سلنیوم با حروف کوچک سلنیوم با
363
00:16:34,720 –> 00:16:36,850
وب درایور سلنیوم است. دستورات رابط کاربری وب
364
00:16:36,850 –> 00:16:39,040
را از کد اتوماسیون آزمایشی
365
00:16:39,040 –> 00:16:42,610
ما به هر مرورگری که مورد نظر ما قرار
366
00:16:42,610 –> 00:16:45,040
می دهیم ارسال می کند.
367
00:16:45,040 –> 00:16:47,350
368
00:16:47,350 –> 00:16:49,720
اگر میتوانید آن را تایپ کنید، اگر میتوانید آن را
369
00:16:49,720 –> 00:16:53,399
خراش دهید، وبدرایور همه چیز را دارد،
370
00:16:53,399 –> 00:16:56,589
بعلاوه من میخواهم فریاد بزنم اکنون
371
00:16:56,589 –> 00:16:59,139
باید از اشیاء صفحه یا
372
00:16:59,139 –> 00:17:01,360
نوعی الگوی طراحی دیگر استفاده کنیم تا
373
00:17:01,360 –> 00:17:03,850
درایور وب ما را فراخوانی کند، زیرا حتی
374
00:17:03,850 –> 00:17:06,279
اگر وبدرایور برخی از آنها عالی است
375
00:17:06,279 –> 00:17:08,529
دستورات آن می توانند نسبتاً پایین باشند و بنابراین
376
00:17:08,529 –> 00:17:09,789
ما می خواهیم مطمئن شویم که آنها را انتزاعی کرده
377
00:17:09,789 –> 00:17:11,648
و واقعاً معنای بهتری از آن دریافت
378
00:17:11,648 –> 00:17:16,539
می کنیم و خواهیم دید که به زودی هر زمان
379
00:17:16,539 –> 00:17:23,260
که من اتوماسیون آزمایش وب پایتون را انجام می دهم
380
00:17:23,260 –> 00:17:26,230
همیشه نمی توانم همه نام ها را به خاطر بسپارم. و
381
00:17:26,230 –> 00:17:29,590
روشها و ویژگیها، اما اگر
382
00:17:29,590 –> 00:17:31,570
فقط در Google webdriver API Python در گوگل سرچ
383
00:17:31,570 –> 00:17:34,539
کنید، احتمالاً در این
384
00:17:34,539 –> 00:17:36,460
صفحه قرار میگیرید، صفحه اسناد را بخوانید، من فقط میخواهم فریاد
385
00:17:36,460 –> 00:17:38,679
بزنم که این یک وبسایت عالی برای
386
00:17:38,679 –> 00:17:41,230
مستندات سلنیوم است و من
387
00:17:41,230 –> 00:17:43,480
آن را به شدت توصیه میکنم همانطور که دنبال میکنید.
388
00:17:43,480 –> 00:17:50,019
سفر آزمایشی پایتون خود برای نصب
389
00:17:50,019 –> 00:17:51,970
بسته سلنیوم را نصب میکنید به همان
390
00:17:51,970 –> 00:17:54,510
روشی که با آزمایشهای PI انجام دادید، پیپ
391
00:17:54,510 –> 00:18:02,470
نصب سلنیوم را انجام
392
00:18:02,470 –> 00:18:07,059
دادید.
393
00:18:07,059 –> 00:18:09,789
est باید
394
00:18:09,789 –> 00:18:13,779
نمونه وب درایور خود را داشته باشد، یک آزمایش، یک
395
00:18:13,779 –> 00:18:15,970
درایور وب، یک
396
00:18:15,970 –> 00:18:18,669
مرورگر، دلیل آن این است که همه چیز را ساده و ساده نگه دارید،
397
00:18:18,669 –> 00:18:21,570
بنویسید یک مورد آزمایشی
398
00:18:21,570 –> 00:18:25,510
باید برنامه خود را باز کنید و در
399
00:18:25,510 –> 00:18:27,970
صورت لزوم با آن مطابق
400
00:18:27,970 –> 00:18:30,279
با رفتار مورد آزمایش تعامل کنید و سپس با خیال راحت
401
00:18:30,279 –> 00:18:34,529
و ایمن از آن خارج شوید. خروج و خاموش کردن
402
00:18:34,529 –> 00:18:37,480
انجام این کار که از تستهای دیگر محافظت میکند و
403
00:18:37,480 –> 00:18:39,909
استقلال تست را حفظ میکند، بنابراین اگر
404
00:18:39,909 –> 00:18:41,500
در یک تست مشکلی پیش بیاید،
405
00:18:41,500 –> 00:18:44,409
دیگر آزمایشها تحت تأثیر قرار نخواهند گرفت
406
00:18:44,409 –> 00:18:46,809
و علاوه بر این، سایر درایورهای وب
407
00:18:46,809 –> 00:18:50,620
تحت تأثیر قرار نخواهند گرفت، بنابراین همیشه
408
00:18:50,620 –> 00:18:54,419
یک مرورگر یکی را تست کنید. webdriver
409
00:18:55,480 –> 00:18:59,539
برای تنظیم این مورد با استفاده از تستهای PI، ما از
410
00:18:59,539 –> 00:19:01,789
چیزی به نام فیکسچر استفاده میکنیم، اگر
411
00:19:01,789 –> 00:19:03,710
با چارچوبهای آزمایشی آشنا هستید،
412
00:19:03,710 –> 00:19:07,279
احتمالاً با راهاندازی و
413
00:19:07,279 –> 00:19:11,600
روش
414
00:19:11,600 –> 00:19:13,549
پاکسازی آشنا هستید.
415
00:19:13,549 –> 00:19:16,580
do
416
00:19:16,580 –> 00:19:19,129
در درخت پروژه ما یک ماژول
417
00:19:19,129 –> 00:19:22,360
به نام contest py در زیر پوشه tests ما ایجاد می کند
418
00:19:22,360 –> 00:19:25,129
که نام آن توسط تست های PI برای
419
00:19:25,129 –> 00:19:28,070
فیکسچرها و داخل i مورد انتظار است. ما یک
420
00:19:28,070 –> 00:19:32,059
مت یا تابعی به نام مرورگر قرار می دهیم و می توانیم
421
00:19:32,059 –> 00:19:34,490
نام آن را هر چه که می خواهیم بگذاریم و
422
00:19:34,490 –> 00:19:35,720
از یک تزئین کننده استفاده می
423
00:19:35,720 –> 00:19:39,169
کنیم که در علامت تست PI ثابت است تا
424
00:19:39,169 –> 00:19:40,970
تست PI بداند که این
425
00:19:40,970 –> 00:19:45,379
تابع خاص در این فیکسچر در اینجا ثابت است
426
00:19:45,379 –> 00:19:47,929
. ما میخواهیم هم راهاندازی
427
00:19:47,929 –> 00:19:49,659
و هم پاکسازی را برای وبدرایور خود انجام دهیم،
428
00:19:49,659 –> 00:19:52,669
اکنون این یک
429
00:19:52,669 –> 00:19:54,980
وبدرایور محلی خواهد بود، نه یک درایور که از
430
00:19:54,980 –> 00:19:56,960
تستهای لامبدا استفاده میکند، میخواهم این را به شما نشان دهم، زیرا
431
00:19:56,960 –> 00:19:59,059
این ابتدا یک مورد اولیه ساده است و
432
00:19:59,059 –> 00:20:01,820
به زودی ارائه میشود. من به شما نشان خواهم داد که
433
00:20:01,820 –> 00:20:03,649
چگونه این کار را برای انجام درایورهای وب از راه دور
434
00:20:03,649 –> 00:20:05,509
با آزمایش لامبدا گسترش دهید، بنابراین بیایید
435
00:20:05,509 –> 00:20:08,480
فعلاً آن را ساده نگه
436
00:20:08,480 –> 00:20:11,690
437
00:20:11,690 –> 00:20:15,379
438
00:20:15,379 –> 00:20:18,350
439
00:20:18,350 –> 00:20:20,029
داریم. این به دستگاه محلی شما میرود
440
00:20:20,029 –> 00:20:22,159
و سعی میکند
441
00:20:22,159 –> 00:20:24,799
در مسیر سیستمی که
442
00:20:24,799 –> 00:20:27,529
همان پروکسی در بین است به دنبال درایور کروم بگردد و آن را راهاندازی میکند
443
00:20:27,529 –> 00:20:30,320
و زمانی که
444
00:20:30,320 –> 00:20:31,730
فرآیند درایور کروم روی دستگاه آزمایشی شما شروع شود،
445
00:20:31,730 –> 00:20:34,639
آن را بیدار میکند. را n متعاقباً
446
00:20:34,639 –> 00:20:38,450
مرورگر کروم را باز کنید، بنابراین اگر
447
00:20:38,450 –> 00:20:40,009
در این مرحله آزمایشی را اجرا کنید و آن را
448
00:20:40,009 –> 00:20:41,379
در اینجا ثابت کنید، چه اتفاقی میافتد این است که میبینید
449
00:20:41,379 –> 00:20:44,539
کروم روی صفحه شما ظاهر میشود
450
00:20:44,539 –> 00:20:47,779
451
00:20:47,779 –> 00:20:48,919
. در این راهنما این
452
00:20:48,919 –> 00:20:50,809
است که ما یک
453
00:20:50,809 –> 00:20:53,360
زمان انتظار ضمنی 10 ثانیه تنظیم می کنیم، ممکن است
454
00:20:53,360 –> 00:20:55,789
تعجب کنید که این به چه معناست همانطور که
455
00:20:55,789 –> 00:20:57,259
قبلاً ذکر کردم یکی از پیچیده ترین
456
00:20:57,259 –> 00:20:59,840
بخش های اتوماسیون تست رابط کاربری وب،
457
00:20:59,840 –> 00:21:03,440
پوسته پوسته شدن است و بیشتر پوسته پوسته شدن از آن ناشی می شود.
458
00:21:03,440 –> 00:21:06,809
شرایط مسابقه به عنوان
459
00:21:06,809 –> 00:21:09,960
مثال صفحه وب آماده برای دستورات خودکار است
460
00:21:09,960 –> 00:21:13,019
یا بارها به آن ارسال می شود
461
00:21:13,019 –> 00:21:14,639
که باید چند ثانیه صبر کنید
462
00:21:14,639 –> 00:21:16,470
تا صفحه بارگیری شود قبل از اینکه بتوانید با عنصر تعامل داشته باشید
463
00:21:16,470 –> 00:21:18,179
زیرا
464
00:21:18,179 –> 00:21:21,269
عنصر هنوز با این وزن ضمنی وجود ندارد.
465
00:21:21,269 –> 00:21:23,789
روشی که در اینجا انجام می شود این است که به راننده وب شما می گوید
466
00:21:23,789 –> 00:21:27,779
سلام قبل از یا هر بار که
467
00:21:27,779 –> 00:21:31,110
سعی می کنید عناصر را بیابید تا ده ثانیه صبر کنید
468
00:21:31,110 –> 00:21:34,740
قبل از اینکه تسلیم شوید و یک
469
00:21:34,740 –> 00:21:37,230
استثنای زمانی ایجاد کنید تا به
470
00:21:37,230 –> 00:21:39,899
طور ضمنی آن زمان انتظار را مدیریت کنید و
471
00:21:39,899 –> 00:21:42,480
این یک روش هوشمندانه است. ti بنابراین، اگر
472
00:21:42,480 –> 00:21:44,159
عنصر بعد از دو ثانیه ظاهر شود،
473
00:21:44,159 –> 00:21:45,899
شما مانند یک خواب سخت منتظر ده ثانیه کامل نیستید،
474
00:21:45,899 –> 00:21:49,649
اکنون انتظارهای ضمنی
475
00:21:49,649 –> 00:21:51,240
لزوماً همیشه
476
00:21:51,240 –> 00:21:54,289
بهترین الگو نیستند، من قویاً شما را
477
00:21:54,289 –> 00:21:56,759
تشویق می کنم که در مورد انتظارهای ضمنی در مقابل صریح تحقیقات آنلاین انجام دهید.
478
00:21:56,759 –> 00:21:58,139
479
00:21:58,139 –> 00:22:00,509
این واقعیت که پایتون سایت docs
480
00:22:00,509 –> 00:22:03,179
selenium-webdriver را که قبلاً نشان دادم خوانده
481
00:22:03,179 –> 00:22:04,559
است، مقاله خوبی در آنجا دارد که
482
00:22:04,559 –> 00:22:06,809
توصیه می کنم آن را مطالعه کنید، اما برای اهداف ساده
483
00:22:06,809 –> 00:22:08,850
ما در پروژه هایمان، این
484
00:22:08,850 –> 00:22:13,259
کافی است، در نهایت زمانی که
485
00:22:13,259 –> 00:22:15,720
درایور وب خود را به صورت محلی تنظیم و پیکربندی کردم.
486
00:22:15,720 –> 00:22:17,789
باید انجام دهم این است که باید آن را برگردانم تا
487
00:22:17,789 –> 00:22:20,730
آزمایش من بتواند از آن استفاده کند و این همان عبارت بازدهی
488
00:22:20,730 –> 00:22:23,639
است، بنابراین کاری که انجام می دهد این
489
00:22:23,639 –> 00:22:26,820
است که یک مرجع به
490
00:22:26,820 –> 00:22:29,429
درایور وب فعال من برمی گرداند تا آزمایش بتواند به آن دسترسی پیدا
491
00:22:29,429 –> 00:22:32,070
کند که تنظیمات را به پایان می رساند. بخش از دستگاه
492
00:22:32,070 –> 00:22:34,830
من اکنون این است وسایل ما
493
00:22:34,830 –> 00:22:35,940
واقعا جالب هستند زیرا این یک
494
00:22:35,940 –> 00:22:37,669
بیانیه بازده است و نه یک بازگشت
495
00:22:37,669 –> 00:22:39,690
همه چیز بالاتر از بیانیه بازدهی
496
00:22:39,690 –> 00:22:41,299
شما و دستگاه شما تنظیم شماست
497
00:22:41,299 –> 00:22:44,340
همه چیز بعد از yi عبارت eld عبارت است
498
00:22:44,340 –> 00:22:47,249
از پاکسازی هنگامی که یک تست PI
499
00:22:47,249 –> 00:22:49,679
به پایان برسد، پس از بازده به این ثابت باز می گردد
500
00:22:49,679 –> 00:22:51,690
و با هر
501
00:22:51,690 –> 00:22:55,320
مرحله بعدی به پایان می رسد، به همین دلیل است که پس از
502
00:22:55,320 –> 00:22:57,509
بازده من یک خط دیگر وجود دارد و آن
503
00:22:57,509 –> 00:22:58,619
نقطه B است
504
00:22:58,619 –> 00:23:01,830
که ما همیشه همیشه آن را می خواهیم. با خیال
505
00:23:01,830 –> 00:23:04,799
راحت و تمیز از webdriver
506
00:23:04,799 –> 00:23:08,490
و مرورگر خود خارج شوید زیرا اگر این کار را نکنیم
507
00:23:08,490 –> 00:23:11,730
، این احتمال وجود دارد که آن فرآیندهای مرورگر و
508
00:23:11,730 –> 00:23:13,499
وبدرایور
509
00:23:13,499 –> 00:23:15,600
در دستگاه آزمایشی شما همچنان اجرا شوند و سپس
510
00:23:15,600 –> 00:23:18,000
زامبیها دریافت میکنید و زامبیها میتوانند
511
00:23:18,000 –> 00:23:20,220
منابع سیستم را قفل کنند و
512
00:23:20,220 –> 00:23:23,250
CPU شما و Cho را انتخاب کنند. تمام حافظه را در نظر بگیرید و من
513
00:23:23,250 –> 00:23:24,900
می دانم که هالووین در آمریکا در حال آمدن است،
514
00:23:24,900 –> 00:23:27,540
اما به نظر من زامبی ها بد هستند، بنابراین
515
00:23:27,540 –> 00:23:30,450
همیشه هر فرآیند بالقوه زامبی
516
00:23:30,450 –> 00:23:33,270
را از بین ببرید، درایورهای وب خود را پاک کنید و با خیال راحت از درایورهای وب خود خارج شوید،
517
00:23:33,270 –> 00:23:40,680
بنابراین وقتی درایور وب خود را
518
00:23:40,680 –> 00:23:43,680
راه اندازی کردیم، می توانیم شروع به استفاده کنیم.
519
00:23:43,680 –> 00:23:45,780
برای ایجاد آن تعاملات مرورگر
520
00:23:45,780 –> 00:23:49,380
و روشی که ما می خواهیم
521
00:23:49,380 –> 00:23:51,150
تعاملات مرورگر خود را بنویسیم و توسعه دهیم با
522
00:23:51,150 –> 00:23:53,940
الگوی شی صفحه است، اکنون یک شی صفحه به
523
00:23:53,940 –> 00:23:56,340
سادگی یک شی است که در آن نمایش داده می شود. یک صفحه وب
524
00:23:56,340 –> 00:23:59,370
یا اجزای یک صفحه وب و
525
00:23:59,370 –> 00:24:02,100
دو بخش اصلی برای اشیاء صفحه وجود دارد، یک
526
00:24:02,100 –> 00:24:04,560
شی صفحه دارای مکان یاب برای یافتن
527
00:24:04,560 –> 00:24:08,040
عناصر در یک صفحه مانند شناسه یا
528
00:24:08,040 –> 00:24:12,120
نام کلاس یا انتخابگر CSS است و اشیاء صفحه
529
00:24:12,120 –> 00:24:14,730
نیز متدهای تعاملی
530
00:24:14,730 –> 00:24:16,740
خواهند داشت که این کار را انجام می دهند. کلیکهایی که متنی را ارسال میکند
531
00:24:16,740 –> 00:24:18,810
که اطلاعاتی را میفرستد
532
00:24:18,810 –> 00:24:21,330
که در فهرستهای کشویی شما انتخاب میکند
533
00:24:21,330 –> 00:24:24,630
و بنابراین یک مورد آزمایشی اساساً شامل
534
00:24:24,630 –> 00:24:26,580
ساخت اشیاء صفحه و سپس
535
00:24:26,580 –> 00:24:28,260
برقراری تماس با آن روشهایی است که در
536
00:24:28,260 –> 00:24:32,280
داخل از آن مکان یابها
537
00:24:32,280 –> 00:24:34,410
برای آزمایشهای اساسی که ما توضیح دادیم استفاده میکنند. ما به
538
00:24:34,410 –> 00:24:36,990
دو صفحه نیاز داریم که به یک صفحه جستجوی DuckDuckGo
539
00:24:36,990 –> 00:24:39,060
نیاز داریم زیرا باید صفحه جستجو را بارگیری
540
00:24:39,060 –> 00:24:41,040
کنیم و باید یک عبارت را جستجو
541
00:24:41,040 –> 00:24:45,060
کنیم و همچنین به یک صفحه نتایج
542
00:24:45,060 –> 00:24:47,820
نیاز داریم زیرا باید به جستجوی عنوان و
543
00:24:47,820 –> 00:24:51,620
عناوین پیوند از آن صفحه نتایج
544
00:24:54,400 –> 00:24:57,200
در اینجا برسیم. کد صفحه جستجو را به اشتراک میگذارم،
545
00:24:57,200 –> 00:25:01,130
این اساساً کل
546
00:25:01,130 –> 00:25:03,080
آن ماژول است، نسبتاً ساده است،
547
00:25:03,080 –> 00:25:04,070
548
00:25:04,070 –> 00:25:06,830
به لطف مختصر بودن پایتونها، هر زمان
549
00:25:06,830 –> 00:25:08,570
که شیء صفحه را میسازیم، نسبتاً کوتاه است. اکیداً
550
00:25:08,570 –> 00:25:11,090
توصیه می کنم یک بسته صفحات
551
00:25:11,090 –> 00:25:14,660
جدا از دایرکتوری تست های خود را
552
00:25:14,660 –> 00:25:16,250
در اینجا در درخت پروژه من ایجاد کنید زیرا می بینید که من
553
00:25:16,250 –> 00:25:17,480
یک بسته صفحات ساخته ام
554
00:25:17,480 –> 00:25:19,250
این یک بسته است زیرا در آن نقطه
555
00:25:19,250 –> 00:25:21,890
py است و من دو ماژول جدید را در جستجوی آنها قرار داده ام
556
00:25:21,890 –> 00:25:26,810
و نتایج را به شما نشان
557
00:25:26,810 –> 00:25:31,310
می دهم py شی صفحه من یک کلاس است
558
00:25:31,310 –> 00:25:35,170
و به نام صفحه جستجوی DuckDuckGo است
559
00:25:35,170 –> 00:25:38,480
اگر نگاه کنید دارای برخی ویژگی ها است که
560
00:25:38,480 –> 00:25:41,450
دارای یک متد init و همچنین روش تعامل من است.
561
00:25:41,450 –> 00:25:44,690
متد anit
562
00:25:44,690 –> 00:25:47,030
اساساً مانند یک سازنده است.
563
00:25:47,030 –> 00:25:48,980
پایتون دقیقاً سازنده نیست، اما
564
00:25:48,980 –> 00:25:51,530
مشابه جاوا یا C شارپ است که به
565
00:25:51,530 –> 00:25:53,690
نوعی هست و کاری که انجام میدهد این است که
566
00:25:53,690 –> 00:25:55,880
این شی را که میخواهیم
567
00:25:55,880 –> 00:25:58,060
در مرجعی به مرورگر
568
00:25:58,060 –> 00:26:00,740
از طریق تزریق وابستگی ارسال کنیم، مقداردهی اولیه میکند تا
569
00:26:00,740 –> 00:26:03,670
بتوانیم از مرورگر استفاده کنیم. برای تعاملات ما
570
00:26:03,670 –> 00:26:06,320
اولین روش تعامل بارگیری
571
00:26:06,320 –> 00:26:09,380
صفحه جستجو است و در اینجا من از
572
00:26:09,380 –> 00:26:12,670
مرورگر خود نقطه API webdriver استفاده می
573
00:26:12,670 –> 00:26:17,960
کنم که URL من را در جایی که URL من است دریافت می کند. برو آرام زودتر
574
00:26:17,960 –> 00:26:20,900
ساده این روش جستجو کمی
575
00:26:20,900 –> 00:26:22,610
جالب تر است. زیرا این نشان می دهد که چگونه
576
00:26:22,610 –> 00:26:25,490
از مکان یاب استفاده کنم که در آن روش جستجوی من
577
00:26:25,490 –> 00:26:27,740
می خواهم بتوانم هر عبارتی را جستجو کنم،
578
00:26:27,740 –> 00:26:30,020
چه پاندا باشد، چه پایتون یا
579
00:26:30,020 –> 00:26:30,800
پلاتیپوس.
580
00:26:30,800 –> 00:26:34,160
581
00:26:34,160 –> 00:26:36,560
582
00:26:36,560 –> 00:26:38,570
عنصری که در نوار جستجو
583
00:26:38,570 –> 00:26:41,300
در آن کاربر موارد را تایپ می کند تا این کار را انجام دهد،
584
00:26:41,300 –> 00:26:43,490
من از
585
00:26:43,490 –> 00:26:47,270
روش عنصر تعریف شده توسط مرورگر خود استفاده می کنم و روش عنصر یافتن
586
00:26:47,270 –> 00:26:49,940
دو آرگومان می
587
00:26:49,940 –> 00:26:53,050
گیرد و یک نوع مکان یاب و یک جستجوی مکان یاب را
588
00:26:53,050 –> 00:26:57,470
می گیرد که من ایجاد کردم. ویژگی به نام
589
00:26:57,470 –> 00:27:00,590
ورودی جستجو در کلاس من که یک
590
00:27:00,590 –> 00:27:04,640
تاپل است که دارای آن دو قطعه است، بنابراین من
591
00:27:04,640 –> 00:27:06,950
میتوانم عناصرم را با استفاده از یک شناسه یاب شناسایی کنم
592
00:27:06,950 –> 00:27:07,670
593
00:27:07,670 –> 00:27:10,400
که شناسه آن صفحه اصلی ورودی فرم جستجوی نام است
594
00:27:10,400 –> 00:27:12,920
و من آن را
595
00:27:12,920 –> 00:27:15,920
در اینجا فراخوانی میکنم. از این ستاره صرفاً برای
596
00:27:15,920 –> 00:27:19,750
گسترش عناصر تاپلی خود به آرگومانهای
597
00:27:19,750 –> 00:27:23,300
موقعیتی استفاده کنید، این تنها چیزی است که من
598
00:27:23,300 –> 00:27:26,690
این الگو را برای این کار دوست دارم زیرا اگر زمانی
599
00:27:26,690 –> 00:27:29,360
نیاز به تغییر نوع مکان یاب خود داشته باشم،
600
00:27:29,360 –> 00:27:31,370
میتوانم آن را در یک مکان تغییر دهم به جای اینکه
601
00:27:31,370 –> 00:27:33,050
نیاز به تغییر به روش دیگری
602
00:27:33,050 –> 00:27:37,520
داشته باشم. w ebdriver API در اینجا همه اینها را
603
00:27:37,520 –> 00:27:40,520
بیان می کند که اگر این مکان یاب موفق باشد
604
00:27:40,520 –> 00:27:42,050
، یک شی را برمی گرداند که نشان دهنده
605
00:27:42,050 –> 00:27:45,340
آن عناصر فعال در صفحه است،
606
00:27:45,340 –> 00:27:47,960
بنابراین من آن را در متغیر ورودی جستجو ذخیره می کنم
607
00:27:47,960 –> 00:27:50,750
و بعد از اینکه آن
608
00:27:50,750 –> 00:27:53,270
عنصر را داشتم می توانم بگویم جستجو کلیدهای ارسال ورودی
609
00:27:53,270 –> 00:27:56,870
برای عبارت من به علاوه کلید بازگشت به خوبی
610
00:27:56,870 –> 00:27:58,550
این کار را انجام می دهد این است که
611
00:27:58,550 –> 00:28:00,710
کاربر متن آن عبارت را تایپ می کند
612
00:28:00,710 –> 00:28:02,870
و سپس کلید بازگشت را برای
613
00:28:02,870 –> 00:28:07,250
انجام جستجو فشار می دهد، بنابراین این فقط یک
614
00:28:07,250 –> 00:28:11,570
کلاس شی صفحه اصلی پایتون است که تعداد زیادی وجود دارد.
615
00:28:11,570 –> 00:28:14,330
روش های زیادی برای انجام اشیاء صفحه برخی از
616
00:28:14,330 –> 00:28:16,250
افراد دوست دارند صفحه پایه ای بسازند که
617
00:28:16,250 –> 00:28:18,530
یک سوپرکلاس است، افراد دیگر دوست دارند
618
00:28:18,530 –> 00:28:21,920
متدهای به اشتراک گذاشته شده داشته باشند و همه چیزهای
619
00:28:21,920 –> 00:28:23,540
خوب و بد با همه این نوع
620
00:28:23,540 –> 00:28:26,210
سبک ها وجود دارد، من فقط می خواستم آن را به این صورت نشان دهم
621
00:28:26,210 –> 00:28:28,760
زیرا این ساده است و هرکسی می تواند
622
00:28:28,760 –> 00:28:34,520
از آن استفاده کند و آن را درک کند، بیایید
623
00:28:34,520 –> 00:28:36,080
کمی بیشتر در مورد مکان یاب ها صحبت کنیم،
624
00:28:36,080 –> 00:28:38,690
زیرا من به نوعی در مورد نحوه
625
00:28:38,690 –> 00:28:42,890
دریافت شناسه و پرس و جوی که وجود دارد یاب ها
626
00:28:42,890 –> 00:28:44,690
به سادگی جستارهایی برای یافتن عناصر در یک
627
00:28:44,690 –> 00:28:47,870
صفحه در آنجا می گویند. با روشهای بسیار زیادی که
628
00:28:47,870 –> 00:28:50,720
میتوانید عناصر را پیدا کنید، میتوانید آنها را
629
00:28:50,720 –> 00:28:54,050
با یک شناسه با ویژگیهای نامشان با
630
00:28:54,050 –> 00:28:57,350
ویژگیهای نام کلاسشان پیدا کنید، اگر به
631
00:28:57,350 –> 00:28:58,760
قدرت شلیک بیشتری نیاز دارید و با
632
00:28:58,760 –> 00:29:01,700
انتخاب شما میتوانید از انتخابگرهای CSS استفاده کنید،
633
00:29:01,700 –> 00:29:04,430
همچنین میتوانید از XPath استفاده کنید. من همیشه
634
00:29:04,430 –> 00:29:07,520
استفاده از آن را توصیه میکنم. ساده ترین مکان یاب ممکن که
635
00:29:07,520 –> 00:29:09,920
به طور منحصر به فرد عناصر هدف شما را شناسایی
636
00:29:09,920 –> 00:29:12,710
می کند که نمی خواهید عناصر یاب مثبت کاذب داشته باشند،
637
00:29:12,710 –> 00:29:16,340
می تواند چندین عنصر را برگرداند
638
00:29:16,340 –> 00:29:18,230
، بنابراین اگر در
639
00:29:18,230 –> 00:29:21,080
جستجوی مکان یاب خود دقت
640
00:29:21,080 –> 00:29:23,509
نکنید ممکن است نتایج مثبت کاذب دریافت کنید، پس
641
00:29:23,509 –> 00:29:27,980
مراقب آن باشید. در تلاش برای یافتن
642
00:29:27,980 –> 00:29:30,799
عناصری برای نوشتن مکان یاب هستید، شما شخصاً به
643
00:29:30,799 –> 00:29:33,549
کد منبع صفحه مورد آزمایش نیاز
644
00:29:33,549 –> 00:29:35,720
دارید. من دوست دارم از
645
00:29:35,720 –> 00:29:38,179
ابزارهای توسعه دهنده کروم برای دیدن کد منبع استفاده کنم
646
00:29:38,179 –> 00:29:40,190
و بفهمم مکان یاب من باید چه
647
00:29:40,190 –> 00:29:42,649
باشد، بنابراین در اینجا یک اسکرین شات از
648
00:29:42,649 –> 00:29:44,869
صفحه اصلی DuckDuckGo با توسعه دهنده ارائه شده است.
649
00:29:44,869 –> 00:29:47,840
اگر میخواهید ابزارهای توسعهدهنده را در هر نقطهای
650
00:29:47,840 –> 00:29:49,759
از صفحه باز کنید، با ماوس خود راست کلیک کنید
651
00:29:49,759 –> 00:29:52,460
و گزینه inspect را انتخاب کنید و
652
00:29:52,460 –> 00:29:56,0