-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdata.js
More file actions
654 lines (651 loc) · 58.4 KB
/
Copy pathdata.js
File metadata and controls
654 lines (651 loc) · 58.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
// Demo Hub — product & video data model
//
// `youtubeId` accepts ANY of these:
// - a bare video id ........ "M7lc1UVf-VE"
// - a full watch URL ....... "https://www.youtube.com/watch?v=GX9x62kFsVU"
// - a youtu.be link ........ "https://youtu.be/GX9x62kFsVU"
// - a playlist watch URL ... "https://www.youtube.com/watch?v=ID&list=PLAYLIST_ID"
//
// UNLISTED PLAYLISTS: add a `playlistId` (the value after list= in the playlist URL).
// - with a `youtubeId` too -> that video opens inside the playlist
// - with only `playlistId` -> the whole playlist plays
// Unlisted playlists embed fine; only "Private" ones are blocked by YouTube.
// Example: youtubeId: "GX9x62kFsVU", playlistId: "PLxxxxxxxxxxxxxxxx",
const PRODUCTS = [
{
id: "live",
name: "Live",
tagline: "Interactive cross-browser testing on real devices",
icon: "",
iconSvg: "icons/icon-14-live.svg",
videos: [
{ id: "live-1", title: "BrowserStack Live - Bookmark URLs", youtubeId: "", duration: "",
description: "Learn how to save and manage URLs for quick access during your live testing sessions.",
docs: [], links: [] },
{ id: "live-2", title: "BrowserStack Live - Bug Reporting", youtubeId: "", duration: "",
description: "Discover how to capture and report bugs directly to your project management tools while testing.",
docs: [], links: [] },
{ id: "live-3", title: "BrowserStack Live - Multi Device Testing", youtubeId: "", duration: "",
description: "Learn how to test your website simultaneously or seamlessly across multiple devices and browsers.",
docs: [], links: [] },
{ id: "live-4", title: "BrowserStack Live - Accessibility Testing on Desktop Browsers", youtubeId: "", duration: "",
description: "Understand how to evaluate your website's accessibility features on various desktop browsers.",
docs: [], links: [] },
{ id: "live-5", title: "BrowserStack Live - Accessibility Testing on Mobile Browsers", youtubeId: "", duration: "",
description: "Learn the steps to perform comprehensive accessibility checks on mobile browsers.",
docs: [], links: [] },
{ id: "live-6", title: "BrowserStack Live - Download Files and Images from Real Devices", youtubeId: "", duration: "",
description: "See how to download and verify files or images directly from remote real devices.",
docs: [], links: [] },
{ id: "live-7", title: "BrowserStack Live - File Download", youtubeId: "", duration: "",
description: "Learn how to test and validate file download functionalities on different browsers and devices.",
docs: [], links: [] },
{ id: "live-8", title: "BrowserStack Live - Image Injection", youtubeId: "", duration: "",
description: "Discover how to inject images into device cameras to test upload workflows or scanning features.",
docs: [], links: [] },
{ id: "live-9", title: "BrowserStack Live - Network Monitoring", youtubeId: "", duration: "",
description: "Understand how to monitor network traffic and analyze requests during your testing sessions.",
docs: [], links: [] },
{ id: "live-10", title: "BrowserStack Live - Network Throttling", youtubeId: "", duration: "",
description: "Learn how to simulate different network speeds, like 3G or offline modes, to test app performance.",
docs: [], links: [] },
{ id: "live-11", title: "BrowserStack Live - QR Code and Barcode Scanning", youtubeId: "", duration: "",
description: "See how to test QR code and barcode scanning features using real device cameras.",
docs: [], links: [] },
{ id: "live-12", title: "BrowserStack Live - Record a Session", youtubeId: "", duration: "",
description: "Learn how to record your interactive testing sessions for easier debugging and team sharing.",
docs: [], links: [] },
{ id: "live-13", title: "BrowserStack Live - SIM for OTP/Message Testing", youtubeId: "", duration: "",
description: "Discover how to use real SIM cards to test SMS and OTP workflows on remote devices.",
docs: [], links: [] },
{ id: "live-14", title: "BrowserStack Live - Testing Apple Pay Workflows on iOS Devices", youtubeId: "", duration: "",
description: "Understand how to validate Apple Pay integrations and payment workflows on real iOS devices.",
docs: [], links: [] },
{ id: "live-15", title: "BrowserStack Live - Testing Audio Input", youtubeId: "", duration: "",
description: "Learn how to test voice search, voice notes, and other audio input functionalities.",
docs: [], links: [] },
{ id: "live-16", title: "BrowserStack Live - Testing Google Pay Workflows on Android-Chrome Devices", youtubeId: "", duration: "",
description: "See how to test Google Pay integrations and payment flows on real Android devices using Chrome.",
docs: [], links: [] },
{ id: "live-17", title: "BrowserStack Live - Test Internal Networks", youtubeId: "", duration: "",
description: "Discover how to securely test local, staging, and internal websites using BrowserStack Local.",
docs: [], links: [] },
{ id: "live-18", title: "BrowserStack Live - Timezone Specific Testing", youtubeId: "", duration: "",
description: "Learn how to simulate different geographical timezones to test localized date and time features.",
docs: [], links: [] },
{ id: "live-19", title: "BrowserStack Live - Upload Files", youtubeId: "", duration: "",
description: "Understand how to test file upload functionalities from a remote device's local storage.",
docs: [], links: [] },
{ id: "live-20", title: "BrowserStack Live - Test Across Resolutions", youtubeId: "", duration: "",
description: "See how to verify your website's responsiveness by testing across various screen resolutions.",
docs: [], links: [] },
],
},
{
id: "app-live",
name: "App Live",
tagline: "Interactive application testing on real devices",
icon: "",
iconSvg: "icons/icon-10.svg",
videos: [
{ id: "applive-1", title: "BrowserStack App Live - App Behaviour under different Network Conditions", youtubeId: "", duration: "",
description: "Learn how to test your mobile app's behavior and responsiveness under various network speeds and conditions.",
docs: [], links: [] },
{ id: "applive-2", title: "BrowserStack App Live - App Performance Testing", youtubeId: "", duration: "",
description: "Discover how to profile and analyze your app's performance metrics like CPU, memory, and battery usage.",
docs: [], links: [] },
{ id: "applive-3", title: "BrowserStack App Live - Audio Injection", youtubeId: "", duration: "",
description: "Learn how to inject audio files into the device microphone to test voice commands and audio features.",
docs: [], links: [] },
{ id: "applive-4", title: "BrowserStack App Live - Biometric Authentication", youtubeId: "", duration: "",
description: "Understand how to simulate Face ID and Touch ID to test biometric authentication workflows in your app.",
docs: [], links: [] },
{ id: "applive-5", title: "BrowserStack App Live - Download Files", youtubeId: "", duration: "",
description: "See how to validate file download functionalities and access downloaded files on remote real devices.",
docs: [], links: [] },
{ id: "applive-6", title: "BrowserStack App Live - GPS Geolocation based Testing", youtubeId: "", duration: "",
description: "Learn how to mock GPS coordinates to test location-based features and services within your mobile app.",
docs: [], links: [] },
{ id: "applive-7", title: "BrowserStack App Live - Gradle Integration", youtubeId: "", duration: "",
description: "Discover how to integrate App Live with Gradle to streamline your Android app testing workflow.",
docs: [], links: [] },
{ id: "applive-8", title: "BrowserStack App Live - Image Injection for Barcode/QR Code", youtubeId: "", duration: "",
description: "Learn how to inject images into the device camera to test QR code and barcode scanning features.",
docs: [], links: [] },
{ id: "applive-9", title: "BrowserStack App Live - Integrate with Android Studio", youtubeId: "", duration: "",
description: "See how to connect App Live directly with Android Studio for seamless development and testing.",
docs: [], links: [] },
{ id: "applive-10", title: "BrowserStack App Live - IP Whitelisting", youtubeId: "", duration: "",
description: "Understand how to use static IPs to test applications securely in environments with strict IP whitelisting.",
docs: [], links: [] },
{ id: "applive-11", title: "BrowserStack App Live - Locale Based Testing", youtubeId: "", duration: "",
description: "Learn how to change device language and region settings to test app localization and internationalization.",
docs: [], links: [] },
{ id: "applive-12", title: "BrowserStack App Live - Local Testing", youtubeId: "", duration: "",
description: "Discover how to securely test mobile apps against your local, development, or staging environments.",
docs: [], links: [] },
{ id: "applive-13", title: "BrowserStack App Live - Multi-Device Testing", youtubeId: "", duration: "",
description: "Learn how to test your application across multiple real mobile devices simultaneously for faster validation.",
docs: [], links: [] },
{ id: "applive-14", title: "BrowserStack App Live - SIM based OTP/Message Testing via Device", youtubeId: "", duration: "",
description: "See how to test SMS, OTPs, and cellular network features using real devices equipped with SIM cards.",
docs: [], links: [] },
{ id: "applive-15", title: "BrowserStack App Live - Payment Workflows", youtubeId: "", duration: "",
description: "Understand how to validate in-app purchases and payment gateway integrations on real mobile devices.",
docs: [], links: [] },
{ id: "applive-16", title: "BrowserStack App Live - IP Region Specific Geolocation Testing", youtubeId: "", duration: "",
description: "Learn how to simulate specific IP locations to test region-restricted content and geotargeted features.",
docs: [], links: [] },
{ id: "applive-17", title: "BrowserStack App Live - Test Apps Behind a Firewall or VPN", youtubeId: "", duration: "",
description: "Discover how to establish secure connections to test internal apps hosted behind corporate firewalls or VPNs.",
docs: [], links: [] },
{ id: "applive-18", title: "BrowserStack App Live - Test Dependent Apps", youtubeId: "", duration: "",
description: "Learn how to install and interact with secondary or third-party apps required for your main app's workflow.",
docs: [], links: [] },
{ id: "applive-19", title: "BrowserStack App Live - Upload Files", youtubeId: "", duration: "",
description: "See how to push files from your machine to a remote device to test media and document upload features.",
docs: [], links: [] },
{ id: "applive-20", title: "BrowserStack App Live - Video Injection", youtubeId: "", duration: "",
description: "Learn how to inject video files into the device camera stream to test live video capture and processing.",
docs: [], links: [] },
],
},
{
id: "automate",
name: "Automate",
tagline: "Browser test automation infrastructure",
icon: "",
iconSvg: "icons/icon-13.svg",
videos: [
{ id: "automate-1", title: "Automate - Audio Injection", youtubeId: "", duration: "06:34",
description: "Learn how to inject audio files into automated test sessions to verify voice-driven workflows and audio features.",
docs: [], links: [] },
{ id: "automate-2", title: "Automate - Camera Injection", youtubeId: "", duration: "04:36",
description: "Discover how to mock camera inputs with custom images to automate testing for features like barcode and QR code scanning.",
docs: [], links: [] },
{ id: "automate-3", title: "Automate - CI/CD Integration", youtubeId: "", duration: "06:55",
description: "Understand how to seamlessly integrate your automated browser tests into your existing CI/CD pipelines for continuous testing.",
docs: [], links: [] },
{ id: "automate-4", title: "Automate - Debugging Options", youtubeId: "", duration: "06:06",
description: "Explore built-in debugging tools like text logs, visual logs, and video recordings to quickly troubleshoot failing automated tests.",
docs: [], links: [] },
{ id: "automate-5", title: "Automate - Download Files", youtubeId: "", duration: "04:45",
description: "Learn how to automate the validation of file download functionalities on remote browsers and retrieve downloaded files.",
docs: [], links: [] },
{ id: "automate-6", title: "Automate - Integrate with SDK", youtubeId: "", duration: "04:35",
description: "See how to easily configure, manage, and run your automated test suites at scale using the BrowserStack SDK.",
docs: [], links: [] },
{ id: "automate-7", title: "Automate - Network Profiling", youtubeId: "", duration: "06:27",
description: "Capture and analyze network traffic during your automated tests to monitor web performance and validate API calls.",
docs: [], links: [] },
{ id: "automate-8", title: "Automate - Organise Tests", youtubeId: "", duration: "06:27",
description: "Learn best practices for naming, structuring, and organizing your automated test runs and builds using capabilities.",
docs: [], links: [] },
{ id: "automate-9", title: "Automate - Simulate Geolocation", youtubeId: "", duration: "05:47",
description: "Discover how to mock GPS coordinates in your automated tests to validate location-based services and localized content.",
docs: [], links: [] },
{ id: "automate-10", title: "BrowserStack Automate - Integrations", youtubeId: "", duration: "02:12",
description: "Explore how to connect BrowserStack Automate with various testing frameworks, reporting dashboards, and third-party tools.",
docs: [], links: [] },
{ id: "automate-11", title: "BrowserStack Automate - Local Testing", youtubeId: "", duration: "02:31",
description: "Learn how to automate tests for internal, development, and staging environments using the BrowserStack Local binary.",
docs: [], links: [] },
{ id: "automate-12", title: "IP Geolocation using BrowserStack Automate", youtubeId: "", duration: "02:55",
description: "Understand how to simulate different geographical locations via IP addresses to test region-restricted web applications.",
docs: [], links: [] }
],
},
{
id: "app-automate",
name: "App Automate",
tagline: "Automated mobile app testing on real devices",
icon: "",
iconSvg: "icons/icon-09.svg",
videos: [
{ id: "app-automate-1", title: "App Automate - Getting Started", youtubeId: "", duration: "04:54",
description: "Learn the basics of configuring and running your first automated mobile app test on BrowserStack's real device cloud.",
docs: [], links: [] },
{ id: "app-automate-2", title: "App Automate - Appium Inspector", youtubeId: "", duration: "03:45",
description: "Learn how to use Appium Inspector with App Automate to inspect app elements and write robust automated test scripts.",
docs: [], links: [] },
{ id: "app-automate-3", title: "App Automate - Apple Pay Workflows", youtubeId: "", duration: "03:32",
description: "Discover how to automate the testing of Apple Pay transactions and payment workflows on real iOS devices.",
docs: [], links: [] },
{ id: "app-automate-4", title: "App Automate - Audio Injection", youtubeId: "", duration: "02:38",
description: "Learn how to inject audio files into automated test sessions to verify voice-driven app features.",
docs: [], links: [] },
{ id: "app-automate-5", title: "App Automate - Debugging Capabilities", youtubeId: "", duration: "09:16",
description: "Explore the comprehensive debugging tools like video recordings, text logs, and network logs available for troubleshooting tests.",
docs: [], links: [] },
{ id: "app-automate-6", title: "App Automate - Device Passwords", youtubeId: "", duration: "02:43",
description: "Learn how to automate test cases that require interacting with device lock screens or entering device passcodes.",
docs: [], links: [] },
{ id: "app-automate-7", title: "App Automate - File Upload", youtubeId: "", duration: "02:50",
description: "Understand how to push and upload files from your local machine to the remote device during automated test runs.",
docs: [], links: [] },
{ id: "app-automate-8", title: "App Automate - Image Injection", youtubeId: "", duration: "04:26",
description: "Discover how to mock camera inputs with custom images to automate testing for features like barcode and QR code scanning.",
docs: [], links: [] },
{ id: "app-automate-9", title: "App Automate - Katalon Studio Integration", youtubeId: "", duration: "03:59",
description: "See how to seamlessly integrate BrowserStack App Automate with Katalon Studio for comprehensive mobile app testing.",
docs: [], links: [] },
{ id: "app-automate-10", title: "App Automate - Local Testing", youtubeId: "", duration: "04:31",
description: "Learn how to securely automate mobile app tests against local, development, or staging environments using BrowserStack Local.",
docs: [], links: [] },
{ id: "app-automate-11", title: "App Automate - SIM Use-Case", youtubeId: "", duration: "02:42",
description: "Understand how to automate workflows relying on cellular networks, such as SMS or OTP verification, using real SIM-enabled devices.",
docs: [], links: [] },
{ id: "app-automate-12", title: "App Automate - Test Flutter Apps", youtubeId: "", duration: "02:33",
description: "Discover how to write and execute automated tests specifically designed for cross-platform Flutter applications on real devices.",
docs: [], links: [] },
{ id: "app-automate-13", title: "App Automate - Testing Web Views", youtubeId: "", duration: "02:49",
description: "Learn how to successfully automate interactions and test elements within WebViews embedded inside your native mobile applications.",
docs: [], links: [] },
{ id: "app-automate-14", title: "App Automate - Test Orchestration", youtubeId: "", duration: "02:51",
description: "See how to optimize your test execution and manage complex automated test suites using test orchestration techniques.",
docs: [], links: [] },
{ id: "app-automate-15", title: "App Automate - Video Injection", youtubeId: "", duration: "02:48",
description: "Learn how to inject video files into the device camera stream to automate testing for live video capture and processing features.",
docs: [], links: [] },
],
},
{
id: "test-management",
name: "Test Management",
tagline: "Next-gen Test Management with AI",
icon: "",
iconSvg: "icons/icon-11.svg",
videos: [
{ id: "test-management-1", title: "BrowserStack Test Plans", youtubeId: "", duration: "02:28",
description: "Learn how to create, organize, and execute comprehensive test plans for your quality assurance projects.",
docs: [], links: [] },
{ id: "test-management-2", title: "Test Management - 2 Way Jira Integration", youtubeId: "", duration: "06:04",
description: "Discover how to seamlessly sync bugs, requirements, and test statuses bidirectionally with Jira.",
docs: [], links: [] },
{ id: "test-management-3", title: "Test Management - API Reference", youtubeId: "", duration: "03:22",
description: "Understand how to leverage our APIs to programmatically manage your test cases and execution runs.",
docs: [], links: [] },
{ id: "test-management-4", title: "Test Management - Automated Test Runs", youtubeId: "", duration: "04:38",
description: "See how to link, execute, and track your automated test executions directly within Test Management.",
docs: [], links: [] },
{ id: "test-management-5", title: "Test Management - Custom Fields", youtubeId: "", duration: "03:38",
description: "Learn how to tailor your test cases and runs with custom fields that match your team's specific workflow.",
docs: [], links: [] },
{ id: "test-management-6", title: "Test Management - Custom Reports", youtubeId: "", duration: "05:00",
description: "Discover how to generate customized, detailed reports to track quality metrics and team performance.",
docs: [], links: [] },
{ id: "test-management-7", title: "Test Management - Dashboards", youtubeId: "", duration: "01:45",
description: "Get an overview of real-time dashboards that provide actionable insights into your testing lifecycle.",
docs: [], links: [] },
{ id: "test-management-8", title: "Test Management - ID Tagging", youtubeId: "", duration: "02:52",
description: "Learn how to use ID tagging to efficiently map and trace automated test results to your manual test cases.",
docs: [], links: [] },
{ id: "test-management-9", title: "Test Management - Integrate with CI/CD", youtubeId: "", duration: "01:13",
description: "See how to integrate Test Management with your continuous integration pipelines for streamlined reporting.",
docs: [], links: [] },
{ id: "test-management-10", title: "Test Management - Integrate Frameworks", youtubeId: "", duration: "02:26",
description: "Understand how to connect popular automation frameworks to automatically report test results.",
docs: [], links: [] },
{ id: "test-management-11", title: "Test Management - Integrations Overview", youtubeId: "", duration: "01:30",
description: "Explore the wide ecosystem of third-party tools and plugins you can connect with Test Management.",
docs: [], links: [] },
{ id: "test-management-12", title: "Test Management - Low Code Automation", youtubeId: "", duration: "02:34",
description: "Discover how to bridge the gap between manual testing and automation using low-code solutions.",
docs: [], links: [] },
{ id: "test-management-13", title: "Test Management - Manage Test Runs", youtubeId: "", duration: "08:39",
description: "Learn best practices for creating, assigning, and managing execution cycles for your test runs.",
docs: [], links: [] },
{ id: "test-management-14", title: "Test Management - Manual Test Execution", youtubeId: "", duration: "05:08",
description: "See how testers can efficiently execute manual test cases and log results step-by-step.",
docs: [], links: [] },
{ id: "test-management-15", title: "Test Management - Quick Import via CSV", youtubeId: "", duration: "01:38",
description: "Learn how to rapidly bulk-import your existing test cases from spreadsheets or CSV files.",
docs: [], links: [] },
{ id: "test-management-16", title: "Test Management - Quick Import via API", youtubeId: "", duration: "01:33",
description: "Discover how to quickly migrate and import your existing test cases from legacy tools using the API.",
docs: [], links: [] },
{ id: "test-management-17", title: "Test Management - Reports and Metrics", youtubeId: "", duration: "03:24",
description: "Understand how to analyze test coverage, pass rates, and other critical metrics through built-in reports.",
docs: [], links: [] },
{ id: "test-management-18", title: "Test Management - Requirements Traceability Reporting", youtubeId: "", duration: "03:42",
description: "Learn how to map test cases to requirements and epics to ensure full testing coverage.",
docs: [], links: [] },
{ id: "test-management-19", title: "Test Management - Test Case Import", youtubeId: "", duration: "03:31",
description: "A detailed guide on mapping fields and importing large repositories of test cases without data loss.",
docs: [], links: [] },
{ id: "test-management-20", title: "Test Management - Test Cases Overview", youtubeId: "", duration: "03:28",
description: "Learn the fundamentals of creating, organizing, and versioning your test cases within folders.",
docs: [], links: [] }
],
},
{
id: "accessibility",
name: "Accessibility Testing",
tagline: "Test WCAG and ADA Compliance",
icon: "",
iconSvg: "icons/icon-06.svg",
videos: [
{ id: "accessibility-1", title: "Accessibility - Local Testing", youtubeId: "", duration: "03:20",
description: "Learn how to test internal or locally hosted websites for WCAG compliance using BrowserStack Local.",
docs: [], links: [] },
{ id: "accessibility-2", title: "Accessibility - Organise Test Runs", youtubeId: "", duration: "03:00",
description: "Discover how to structure, tag, and efficiently manage your accessibility test runs for better organization.",
docs: [], links: [] },
{ id: "accessibility-3", title: "Accessibility - Reports", youtubeId: "", duration: "08:06",
description: "Understand how to interpret comprehensive accessibility reports and identify critical WCAG violations.",
docs: [], links: [] },
{ id: "accessibility-4", title: "Accessibility - Run Accessibility Tests", youtubeId: "", duration: "03:28",
description: "See how to execute automated and manual accessibility scans on your web applications to find issues fast.",
docs: [], links: [] },
{ id: "accessibility-5", title: "Accessibility - Screen Reader", youtubeId: "", duration: "06:04",
description: "Learn how to use built-in screen readers on real devices to test compatibility with assistive technologies.",
docs: [], links: [] },
{ id: "accessibility-6", title: "Accessibility - Share Reports", youtubeId: "", duration: "03:05",
description: "Discover how to easily export and share detailed accessibility violation reports with your development team.",
docs: [], links: [] },
{ id: "accessibility-7", title: "Accessibility - Test Functional Workflows", youtubeId: "", duration: "03:57",
description: "Learn how to perform accessibility testing on complex user journeys, dynamic content, and multi-step workflows.",
docs: [], links: [] },
{ id: "accessibility-8", title: "Accessibility - Test Functional Components", youtubeId: "", duration: "05:08",
description: "Understand how to evaluate specific functional components like modals, forms, and navigation menus for accessibility.",
docs: [], links: [] },
{ id: "accessibility-9", title: "Accessibility - Website Scanner Overview", youtubeId: "", duration: "04:10",
description: "Get an overview of how to use the Website Scanner to crawl multiple pages and find accessibility issues at scale.",
docs: [], links: [] },
{ id: "accessibility-10", title: "Accessibility - Website Scanner Configuration", youtubeId: "", duration: "04:09",
description: "Learn how to configure and customize the Website Scanner to target specific domains, URLs, or authenticated pages.",
docs: [], links: [] },
{ id: "accessibility-11", title: "Compare Builds on Accessibility", youtubeId: "", duration: "02:30",
description: "See how to track your website's accessibility health over time by comparing violation trends across different builds.",
docs: [], links: [] }
],
},
{
id: "app-accessibility",
name: "App Accessibility Testing",
tagline: "Test WCAG and ADA Compliance for Native Apps on Real Devices",
icon: "",
iconSvg: "icons/icon-06.svg",
videos: [
{ id: "appaccessibility-1", title: "App Accessibility - Integrations", youtubeId: "", duration: "03:54",
description: "Learn how to integrate App Accessibility testing seamlessly into your existing CI/CD pipelines and tools.",
docs: [], links: [] },
{ id: "appaccessibility-2", title: "App Accessibility - Introduction", youtubeId: "", duration: "02:17",
description: "Get a comprehensive overview of how to test and ensure WCAG compliance for your native mobile applications.",
docs: [], links: [] },
{ id: "appaccessibility-3", title: "App Accessibility - iOS Accessibility Scanner", youtubeId: "", duration: "02:31",
description: "Discover how to utilize the iOS Accessibility Scanner to identify and resolve compliance issues on Apple devices.",
docs: [], links: [] },
{ id: "appaccessibility-4", title: "App Accessibility - IP Geolocation", youtubeId: "", duration: "03:02",
description: "Learn how to simulate different geographic regions via IP geolocation to test localized accessibility features.",
docs: [], links: [] },
{ id: "appaccessibility-5", title: "App Accessibility - Perform Scans", youtubeId: "", duration: "03:17",
description: "Understand how to execute automated accessibility scans on your native mobile apps to quickly find violations.",
docs: [], links: [] },
{ id: "appaccessibility-6", title: "App Accessibility - Talkback on Android", youtubeId: "", duration: "03:04",
description: "Learn how to evaluate your Android app's compatibility with the native TalkBack screen reader on real devices.",
docs: [], links: [] },
{ id: "appaccessibility-7", title: "App Accessibility - Test Apps from Local Machine", youtubeId: "", duration: "03:00",
description: "See how to directly upload and test native mobile applications from your local development environment.",
docs: [], links: [] },
{ id: "appaccessibility-8", title: "App Accessibility - Test Behind Firewalls", youtubeId: "", duration: "03:31",
description: "Discover how to securely test internal, development, or staging mobile applications hosted behind corporate firewalls.",
docs: [], links: [] },
{ id: "appaccessibility-9", title: "App Accessibility - Test Localization", youtubeId: "", duration: "03:02",
description: "Learn how to configure device language and region settings to ensure accessibility features work correctly worldwide.",
docs: [], links: [] },
{ id: "appaccessibility-10", title: "App Accessibility - VoiceOver on iOS", youtubeId: "", duration: "03:24",
description: "Understand how to test and navigate your iOS application using the native VoiceOver screen reader.",
docs: [], links: [] },
{ id: "appaccessibility-11", title: "Reporting using BrowserStack App Accessibility", youtubeId: "", duration: "02:57",
description: "Learn how to generate, analyze, and share detailed accessibility violation reports with your development team.",
docs: [], links: [] }
],
},
{
id: "Low-Code-Automation",
name: "Low Code Automation",
tagline: "Feature demos for Low Code Automation",
icon: "",
iconSvg: "icons/icon-04-lca.svg",
videos: [
{ id: "lc-1", title: "1.1 Get Started | Record Your First Test on Low Code Automation", youtubeId: "https://www.youtube.com/watch?v=x0bHlVV2psU&list=PLN1KfW8k2lAk", duration: "05:11",
description: "Start your Low Code Automation journey by recording a test directly in your browser. The intuitive test recorder turns every click, input, and navigation into an automated step in real time, with no coding or infrastructure setup, so QA testers, developers, and citizen testers can build their first automated test in minutes.",
docs: [{ label: "Create Your First Test", url: "https://www.browserstack.com/docs/low-code-automation/get-started/create-test" }], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-2", title: "1.2 Get Started | Add Validations: Visual, Text Assert, Element Presence", youtubeId: "https://youtu.be/_3k8DXgi8Cs?si=jWaECArBEYmwKCyq", duration: "03:31",
description: "Add detailed validations to your recorded steps to verify both functionality and visuals. Assert on text, elements, and page state so every critical checkpoint in your end-to-end journey is checked automatically on each run.",
docs: [{ label: "Adding Validations", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/validations" }], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-3", title: "1.3 Get Started | Create Test Suites & Run Cross-Browser Builds", youtubeId: "https://www.youtube.com/watch?v=8ttgxw3dpX4&list=PLN1KfW8k2lAk", duration: "02:08",
description: "Create your test suite and replay recorded tests on real desktop and mobile browsers in the BrowserStack cloud. Run the same flow across multiple browser and OS combinations to confirm consistent behaviour everywhere, while intelligent wait timeouts automatically reduce flakiness with zero infrastructure to manage.",
docs: [{ label: "Perform Cross Browser Testing", url: "https://www.browserstack.com/docs/low-code-automation/type-of-testing/cross-browser-testing" }], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-4", title: "1.4 Get Started | Debug Tests with Video, Screenshots & Logs", youtubeId: "https://www.youtube.com/watch?v=tVD4XdkpjSI&list=PLN1KfW8k2lAk&index=4", duration: "04:30",
description: "Diagnose failures fast using rich debugging data. Step through each action with screenshots, video, and logs from the run to understand exactly what happened, and monitor the ongoing health of your tests.",
docs: [{label:"Test Reporting and Debugging", url:"https://www.browserstack.com/docs/low-code-automation/test-debugging/overview"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-5", title: "1.5 Get Started | Test Internal & Staging Environments with BrowserStack Local", youtubeId: "https://www.youtube.com/watch?v=BDrDstNDnv0&list=PLN1KfW8k2lAk", duration: "03:55",
description: "Test applications that aren't publicly accessible. Use BrowserStack Local to securely run low-code tests against internal, staging, UAT, and pre-production environments hosted behind your firewall or proxy.",
docs: [{label: "Test on Internal Networks", url: "https://www.browserstack.com/docs/low-code-automation/local-testing"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-6", title: "1.6 Get Started | Run Tests in Your CI/CD Pipeline", youtubeId: "https://www.youtube.com/watch?v=8vXaAJlpV40&list=PLN1KfW8k2lAk", duration: "02:43",
description: "Shift your low-code tests left by running them automatically in your pipeline. Trigger tests on every build or deployment and pull results back into your CI/CD workflow for continuous, fast feedback.",
docs: [{label: "Integrate with CI/CD Pipelines", url: "https://www.browserstack.com/docs/low-code-automation/cicd-integrations/rest-api"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-7", title: "2.1 Test faster and broaden Coverage | AI-Powered Testing", youtubeId: "https://www.youtube.com/watch?v=CGXw64t2Nrk&list=PLN1KfW8k2lAk", duration: "05:42",
description: "Use AI to turn plain natural-language instructions into ready-to-run test steps. Generate test cases and steps from a simple prompt to accelerate authoring, then fine-tune them in the recorder, lowering the learning curve even further.",
docs: [{label: "AI Powered Testing", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/browserstack-ai"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-8", title: "2.2 Test faster and broaden Coverage | IP Geolocation Testing", youtubeId: "https://www.youtube.com/watch?v=spToUIJN6lY&list=PLN1KfW8k2lAk", duration: "03:21",
description: "Verify region-specific behaviour by running tests from different geographic locations. Check localised content, pricing, language, and geo-gated features using IP-based geolocation to ensure a consistent experience for global users.",
docs: [{label: "IP Geolocation", url: "https://www.browserstack.com/docs/low-code-automation/test-real-user-conditions/ip-geo-location"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-9", title: "3.1 Reliable & Reusable Tests | Override Element Locators", youtubeId: "https://www.youtube.com/watch?v=HnkE_HGklK4&list=PLN1KfW8k2lAk", duration: "02:04",
description: "Improve reliability by customising how your tests identify elements. Override auto-generated locators with your own selectors to pinpoint hard-to-identify or dynamic elements, working alongside AI self-heal to keep tests passing as your application changes.",
docs: [{label: "Configure Test Steps", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/configure-step-behaviour"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-10", title: "3.2 Reliable & Reusable Tests | Reuse Steps with Modules", youtubeId: "https://www.youtube.com/watch?v=3ncZwuooNZc&list=PLN1KfW8k2lAk", duration: "03:07",
description: "Keep large test suites maintainable by grouping repeated steps, such as login or checkout, into reusable modules. Update a flow once and have the change reflected across every test that uses it, cutting duplication and ongoing maintenance.",
docs: [{label: "Create Modules", url: "https://www.browserstack.com/docs/low-code-automation/best-practices/modules"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-11", title: "3.3 Reliable & Reusable Tests | Data-Driven Testing with Variables, Secrets & Datasets", youtubeId: "https://www.youtube.com/watch?v=-g-5h5r5_PY&list=PLN1KfW8k2lAk", duration: "03:27",
description: "Run the same test across many data combinations using built-in Variables, Secrets, and test datasets. Parameterise inputs, securely store credentials as masked secrets, and validate your application against multiple data sets without rebuilding the test.",
docs: [{label: "Add Variables, Secrets and Datasets", url: "https://www.browserstack.com/docs/low-code-automation/best-practices/data-driven-testing"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-12", title: "3.4 Reliable & Reusable Tests | Add Conditional Flows", youtubeId: "https://www.youtube.com/watch?v=uAJO7DYCkpo&list=PLN1KfW8k2lAk", duration: "02:50",
description: "Make your tests handle real-world unpredictability by adding conditional logic. Branch a test based on what actually appears on screen, such as pop-ups, A/B variations, or dynamic states, so a single test adapts to multiple scenarios instead of breaking.",
docs: [{label: "Conditional If-Else Workflows", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/conditional-flow"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-13", title: "3.5 Reliable & Reusable Tests | Advanced Usecases with Custom Actions & JavaScript", youtubeId: "https://www.youtube.com/watch?v=NYob4w8V6Js&list=PLN1KfW8k2lAk", duration: "03:51",
description: "Go beyond standard steps by adding custom actions and JavaScript snippets. Automate advanced or app-specific use cases such as custom waits, computed values, and DOM interactions, while keeping the rest of your test fully codeless.",
docs: [{label: "Custom Actions with Javascript", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/custom-actions"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-14", title: "4.1 Cover E2E Workflows | File Upload & Download Scenarios", youtubeId: "https://www.youtube.com/watch?v=tMB83Ag1-U8&list=PLN1KfW8k2lAk", duration: "01:47",
description: "Test workflows that depend on files end to end. Validate uploading documents and images into your app, and downloading files such as invoices or reports, all as part of a single low-code test.",
docs: [{label: "File Validation", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/validate-file-download"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-15", title: "4.2 Cover E2E Workflows | API Validations", youtubeId: "https://www.youtube.com/watch?v=nBwgenp1_Oo&list=PLN1KfW8k2lAk", duration: "03:02",
description: "Combine UI and API checks in one test. Add API validation steps to verify backend responses, status codes, and payloads alongside your front-end flow for fuller end-to-end coverage from a single low-code test.",
docs: [{label: "API Validations", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/configure-api"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-16", title: "4.3 Cover E2E Workflows | Email Verification Usecases", youtubeId: "https://www.youtube.com/watch?v=rUfJQTVhIoo&list=PLN1KfW8k2lAk", duration: "03:08",
description: "Validate email-dependent journeys without leaving your test. Cover sign-up confirmations, OTPs, password resets, and notification emails as an integrated part of your end-to-end flow.",
docs: [{label: "Test Email Workflows", url: "https://www.browserstack.com/docs/low-code-automation/test-recording/test-email-workflows"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-17", title: "5.1 Manage & Scale | Test Version History", youtubeId: "https://www.youtube.com/watch?v=lzLjxx6lEwA&list=PLN1KfW8k2lAk", duration: "03:08",
description: "Track how a test evolves over time. Review its full version history, compare changes between revisions, and roll back to an earlier version when needed, giving teams confidence to collaborate and iterate safely..",
docs: [{label: "Test Version History", url: "https://www.browserstack.com/docs/low-code-automation/managing-tests/test-versioning"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
{ id: "lc-18", title: "5.2 Manage & Scale | Export Low Code Tests as Automation Scripts", youtubeId: "https://www.youtube.com/watch?v=db-999ku-BY&list=PLN1KfW8k2lAk", duration: "01:32",
description: "Bridge low-code and full-code automation. Export your recorded tests as automation scripts to give engineering a head start, reuse logic inside existing frameworks, or gradually transition critical flows into code.",
docs: [{label: "Export Test Cases using API", url: "https://www.browserstack.com/docs/low-code-automation/advanced-use-cases/export-tests"}], links: [{label: "Contact BrowserStack Support", url: "https://www.browserstack.com/contact?ref=helpdesk-bottom-contact-us-cta"}] },
],
},
{
id: "test-reporting-and-analytics",
name: "Test Reporting and Analytics",
tagline: "Unified reporting & analytics for your test automation",
icon: "",
iconSvg: "icons/icon-08.svg",
videos: [
{ id: "tra-1", title: "Test Reporting and Analytics - Collaboration", youtubeId: "", duration: "02:20",
description: "Learn how to collaborate effectively with your team by sharing insights and test reports using Test Reporting and Analytics.",
docs: [], links: [] },
{ id: "tra-2", title: "Test Reporting and Analytics - JUNIT Upload", youtubeId: "", duration: "02:12",
description: "Discover how to easily upload JUnit XML reports to centralized dashboards for deeper analysis and reporting.",
docs: [], links: [] },
{ id: "tra-3", title: "Test Reporting and Analytics - Quality Gates", youtubeId: "", duration: "04:56",
description: "Understand how to configure strict quality gates to automatically block releases that don't meet your testing standards.",
docs: [], links: [] },
{ id: "tra-4", title: "Test Reporting and Analytics - CI/CD Integration", youtubeId: "", duration: "01:50",
description: "See how to seamlessly integrate Test Reporting and Analytics into your existing CI/CD pipelines for continuous reporting.",
docs: [], links: [] },
{ id: "tra-5", title: "Test Reporting and Analytics - Custom Dashboards", youtubeId: "", duration: "02:41",
description: "Learn how to build and customize dashboards to monitor the exact metrics and KPIs that matter most to your team.",
docs: [], links: [] },
{ id: "tra-6", title: "Test Reporting and Analytics - Failure Analysis", youtubeId: "", duration: "01:41",
description: "Discover how to utilize AI-driven failure analysis to quickly pinpoint the root cause of broken automated tests.",
docs: [], links: [] },
{ id: "tra-7", title: "Test Reporting and Analytics - Smart Tags", youtubeId: "", duration: "01:22",
description: "Learn how to use smart tags to efficiently categorize, filter, and organize your vast automated test runs.",
docs: [], links: [] },
{ id: "tra-8", title: "Test Reporting and Analytics - Testing Trends", youtubeId: "", duration: "03:13",
description: "Understand how to track historical testing trends over time to evaluate the health and stability of your automation suite.",
docs: [], links: [] },
{ id: "tra-9", title: "Test Reporting and Analytics - Unique Errors", youtubeId: "", duration: "02:23",
description: "See how Test Reporting and Analytics automatically groups identical failures into unique errors to help prioritize bug fixes.",
docs: [], links: [] },
{ id: "tra-10", title: "Test Reporting and Analytics using BrowserStack", youtubeId: "", duration: "03:35",
description: "Get a comprehensive introduction to implementing and utilizing Test Reporting and Analytics within the BrowserStack ecosystem.",
docs: [], links: [] },
{ id: "tra-11", title: "Test Reporting and Analytics - Webhooks", youtubeId: "", duration: "03:22",
description: "Learn how to set up and configure webhooks to receive real-time notifications for critical test execution events.",
docs: [], links: [] },
{ id: "tra-12", title: "Test Reporting & Analytics - Alerts", youtubeId: "", duration: "04:33",
description: "Discover how to configure custom alerts to stay informed about test failures, flaky behavior, and performance drops.",
docs: [], links: [] },
{ id: "tra-13", title: "Test Reporting & Analytics - Dashboards", youtubeId: "", duration: "09:37",
description: "Get an in-depth walkthrough of the rich, unified dashboards available in Test Reporting & Analytics.",
docs: [], links: [] },
{ id: "tra-14", title: "Test Reporting & Analytics - Metrics", youtubeId: "", duration: "02:55",
description: "Learn how to track and analyze key quality metrics to consistently improve your overall testing and QA strategy.",
docs: [], links: [] },
{ id: "tra-15", title: "Test Reporting & Analytics - Trends", youtubeId: "", duration: "04:03",
description: "See how to visualize your test execution trends to identify bottlenecks and optimize the performance of your builds.",
docs: [], links: [] }
],
},
{
id: "percy",
name: "Percy",
tagline: "AI powered Visual Testing for Websites",
icon: "",
iconSvg: "icons/icon-12.svg",
videos: [
{ id: "percy-1", title: "Percy - CI/CD integration", youtubeId: "", duration: "03:22",
description: "Learn how to seamlessly integrate Percy into your CI/CD pipeline for automated visual testing on every commit.",
docs: [], links: [] },
{ id: "percy-2", title: "Percy - API References", youtubeId: "", duration: "03:00",
description: "Understand how to leverage Percy's APIs to programmatically manage builds, snapshots, and visual reviews.",
docs: [], links: [] },
{ id: "percy-3", title: "Percy - Baseline Management", youtubeId: "", duration: "02:44",
description: "Discover how to efficiently manage your baseline snapshots and approve intended visual changes across branches.",
docs: [], links: [] },
{ id: "percy-4", title: "Percy - Branch Filtering", youtubeId: "", duration: "02:50",
description: "Learn how to configure branch filtering to control exactly when and where Percy runs visual tests in your repository.",
docs: [], links: [] },
{ id: "percy-5", title: "Percy - Cross Browser Visual Testing", youtubeId: "", duration: "02:08",
description: "See how to execute visual tests simultaneously across multiple browsers and screen widths to ensure cross-browser compatibility.",
docs: [], links: [] },
{ id: "percy-6", title: "Percy - Diff Highlighter", youtubeId: "", duration: "01:52",
description: "Understand how to use the visual diff highlighter to quickly and easily spot pixel-by-pixel changes in your UI.",
docs: [], links: [] },
{ id: "percy-7", title: "Percy - Diff Sensitivity", youtubeId: "", duration: "02:31",
description: "Learn how to adjust visual diff sensitivity settings to reduce noise from minor rendering variations or anti-aliasing.",
docs: [], links: [] },
{ id: "percy-8", title: "Percy - Full Page Screenshot", youtubeId: "", duration: "02:04",
description: "Discover how Percy captures complete, full-page DOM snapshots to ensure thorough visual coverage from top to bottom.",
docs: [], links: [] },
{ id: "percy-9", title: "Percy - Github Integration", youtubeId: "", duration: "02:56",
description: "See how to seamlessly integrate Percy with GitHub to add visual review statuses directly to your pull requests.",
docs: [], links: [] },
{ id: "percy-10", title: "Percy - Group Snapshots by Tags", youtubeId: "", duration: "03:49",
description: "Learn how to group related snapshots using tags for better organization and a more streamlined visual review process.",
docs: [], links: [] },
{ id: "percy-11", title: "Percy - Ignore Regions using Percy", youtubeId: "", duration: "03:23",
description: "Understand how to dynamically ignore specific DOM elements, like dynamic data or animations, during visual comparisons.",
docs: [], links: [] },
{ id: "percy-12", title: "Percy - Integrate with Figma", youtubeId: "", duration: "05:12",
description: "Discover how to connect Percy with Figma to compare coded UI implementations directly against your design mockups.",
docs: [], links: [] },
{ id: "percy-13", title: "Percy - Introduction and Integration", youtubeId: "", duration: "02:36",
description: "Get a high-level overview of Percy's visual testing workflow and the initial steps to integrate it into your projects.",
docs: [], links: [] },
{ id: "percy-14", title: "Percy - Layout Testing", youtubeId: "", duration: "02:46",
description: "Learn how to test responsive web layouts to ensure consistent visual rendering across different device viewport sizes.",
docs: [], links: [] },
{ id: "percy-15", title: "Percy - Set Regions", youtubeId: "", duration: "05:59",
description: "See how to define specific interaction regions or crop areas within your snapshots for highly targeted visual testing.",
docs: [], links: [] },
{ id: "percy-16", title: "Percy - Stabilize Screenshots", youtubeId: "", duration: "04:04",
description: "Discover techniques to handle flaky visual tests by stabilizing animations, web fonts, and dynamic page elements.",
docs: [], links: [] },
{ id: "percy-17", title: "Percy - Synchronous Comparison", youtubeId: "", duration: "02:50",
description: "Learn how to run synchronous visual comparisons to get immediate, real-time feedback in your local or CI environments.",
docs: [], links: [] },
{ id: "percy-18", title: "Percy - Visual Scanner", youtubeId: "", duration: "02:33",
description: "Understand how to use the visual scanner to automatically crawl and capture visual snapshots across your entire web application.",
docs: [], links: [] },
{ id: "percy-19", title: "Percy - Visual Tests on Hybrid Apps", youtubeId: "", duration: "01:50",
description: "See how to extend Percy's powerful visual testing capabilities to validate the UI of your hybrid mobile applications.",
docs: [], links: [] },
],
},
{
id: "app-percy",
name: "App Percy",
tagline: "AI powered Visual Testing for Native Applications",
icon: "",
iconSvg: "icons/icon-12.svg",
videos: [
{ id: "apppercy-1", title: "App Percy - API Integration", youtubeId: "", duration: "04:29",
description: "Learn how to use APIs to seamlessly integrate and manage App Percy visual testing within your custom workflows.",
docs: [], links: [] },
{ id: "apppercy-2", title: "App Percy - Base Build Selection", youtubeId: "", duration: "12:46",
description: "Understand the logic behind how App Percy selects base builds for visual comparisons and how to configure it for your team.",
docs: [], links: [] },
{ id: "apppercy-3", title: "App Percy - Baseline Management", youtubeId: "", duration: "06:28",
description: "Discover best practices and strategies to efficiently manage, update, and approve visual baselines for your mobile apps.",
docs: [], links: [] },
{ id: "apppercy-4", title: "App Percy - Boost Performance", youtubeId: "", duration: "02:30",
description: "Learn actionable tips and techniques to optimize configuration and speed up the execution of your visual test suites.",
docs: [], links: [] },
{ id: "apppercy-5", title: "App Percy - Bring Your Own Screenshots", youtubeId: "", duration: "01:50",
description: "See how to upload and visually test screenshots captured directly from your own custom device infrastructure.",
docs: [], links: [] },
{ id: "apppercy-6", title: "App Percy - CI/CD Integration", youtubeId: "", duration: "03:44",
description: "Seamlessly incorporate App Percy into your CI/CD pipelines to automatically catch visual bugs on every code commit.",
docs: [], links: [] },
{ id: "apppercy-7", title: "App Percy - Feature to Stabilize Tests", youtubeId: "", duration: "02:44",
description: "Learn how to use built-in stabilization features to reduce flakiness and eliminate false positives in your visual tests.",
docs: [], links: [] },
{ id: "apppercy-8", title: "App Percy - Group Snapshots", youtubeId: "", duration: "03:46",
description: "Discover how to intelligently group related application snapshots together to streamline your team's visual review process.",
docs: [], links: [] },
{ id: "apppercy-9", title: "App Percy - Partial Build Management", youtubeId: "", duration: "02:12",
description: "Learn how to handle and review partial builds effectively when only specific components of your app are updated.",
docs: [], links: [] },
{ id: "apppercy-10", title: "App Percy - Run on your own Devices", youtubeId: "", duration: "03:58",
description: "Understand how to execute App Percy visual tests leveraging your locally hosted or in-house physical mobile devices.",
docs: [], links: [] },
{ id: "apppercy-11", title: "App Percy - Baseline Management for Visual Testing", youtubeId: "", duration: "04:01",
description: "Get an in-depth walkthrough on managing and maintaining robust baselines specifically tailored for mobile app visual testing.",
docs: [], links: [] },
{ id: "apppercy-12", title: "BrowserStack AppPercy Integration", youtubeId: "", duration: "03:18",
description: "Learn how to natively integrate App Percy visual testing directly into your existing BrowserStack App Automate test scripts.",
docs: [], links: [] },
{ id: "apppercy-13", title: "Cherry Picking Baseline - App Percy", youtubeId: "", duration: "02:07",
description: "Discover how to selectively cherry-pick specific approved snapshots to update your baseline builds without running a full suite.",
docs: [], links: [] },
{ id: "apppercy-14", title: "Diff Highlighter - App Percy", youtubeId: "", duration: "01:23",
description: "See how the visual diff highlighter effortlessly points out pixel-level changes and rendering differences in your mobile app UI.",
docs: [], links: [] },
{ id: "apppercy-15", title: "FullPage Screenshots in BrowserStack App Percy", youtubeId: "", duration: "01:51",
description: "Learn how to capture and test full-length, scrollable page screenshots within your native mobile applications.",
docs: [], links: [] },
{ id: "apppercy-16", title: "Github Integration with BrowserStack App Percy", youtubeId: "", duration: "02:48",
description: "Integrate App Percy with GitHub to automatically post visual review statuses and build insights directly on your pull requests.",
docs: [], links: [] },
{ id: "apppercy-17", title: "Ignoring Dynamic Elements in App Percy", youtubeId: "", duration: "02:12",
description: "See how to automatically or manually ignore dynamic content like timestamps, shifting data, or ads to prevent false failures.",
docs: [], links: [] },
{ id: "apppercy-18", title: "Ignoring regions in BrowserStack App Percy", youtubeId: "", duration: "01:43",
description: "Learn how to explicitly draw ignore regions to exclude specific UI areas from visual comparisons during test runs.",
docs: [], links: [] },
],
},
];