Thực thi song song Selenium Python
Tiết kiệm thời gian dành cho tự động kiểm tra Selenium bằng cách chạy thử nghiệm song song. Tìm hiểu cách chạy thử nghiệm song songquaVỏ bọc Himanshu Show
Thích (15) Bình luận Tiết kiệm tiếng riu ríu 8. 12K Lượt xem Tham gia cộng đồng DZone và có được trải nghiệm thành viên đầy đủ Tham gia miễn phíSelenium là một trong những framework kiểm thử tự động được sử dụng rộng rãi để kiểm thử trình duyệt tự động. Tự động kiểm tra Selenium thực sự hữu ích trong việc kiểm tra các trang web hoặc ứng dụng web trên các kết hợp trình duyệt, hệ điều hành và thiết bị khác nhau. Cung cấp phạm vi kiểm tra chức năng tốt hơn vì mã được kiểm tra trên nhiều kết hợp Việc chạy các thử nghiệm này theo trình tự có thể tốn thời gian vì bạn phải đợi một thử nghiệm hoàn thành trước khi chạy các thử nghiệm khác. Bạn có thể tiết kiệm rất nhiều thời gian bằng cách thực hiện các kiểm thử song song, do đó cải thiện khả năng mở rộng của kiểm thử tự động Selenium của bạn. Kiểm thử song song giúp thực hiện kiểm thử đồng thời trên các trình duyệt, cung cấp phạm vi kiểm thử tốt hơn trong thời gian ngắn hơn. Trong hướng dẫn Selenium Python này, tôi sẽ trình bày. bạn cách chạy thử nghiệm song song trong pytest bằng Selenium Grid. Lưới Selenium để chạy có thể là cục bộ hoặc dựa trên đám mây. Để biết thêm thông tin về cách thiết lập Lưới Selenium cục bộ, chúng tôi khuyên bạn nên xem blog chi tiết của chúng tôi về Thiết lập Lưới Selenium để thử nghiệm tự động Làm cách nào để chạy thử nghiệm Selenium song song với Python bằng Pytest-xdist?Theo mặc định, PyTest không hỗ trợ kiểm tra song song, điều cực kỳ cần thiết cho các tình huống như kiểm tra trình duyệt tự động. Thử nghiệm song song là điều bắt buộc để đạt được sự tích hợp liên tục vì các thử nghiệm có thể được thực hiện với tốc độ nhanh. Để chạy thử nghiệm Selenium song song với Python, bạn cần cài đặt plugin pytest-xdist Các tính năng (hoặc Chế độ thực thi) của Pytest-xdistĐây là plugin thử nghiệm phân tán của PyTest mở rộng python PyTest với một số chế độ thực thi độc đáo được đề cập bên dưới trong hướng dẫn Selenium Python này
Cài đặt pytest-xdist để chạy thử nghiệm Selenium song song với PythonPlugin xdist có thể được cài đặt bằng cách thực hiện một trong các lệnh sau trên thiết bị đầu cuối #Run Selenium tests in parallel with Python for Selenium Python tutorial 75#Run Selenium tests in parallel with Python for Selenium Python tutorial 76Hiển thị bên dưới trong hướng dẫn Selenium Python này là ảnh chụp màn hình cài đặt plugin xdist để chạy thử nghiệm Selenium song song với Python Tùy chọn dòng lệnh để kiểm tra song songPlugin pytest-xdist cung cấp các tùy chọn dòng lệnh để gửi các bài kiểm tra tới nhiều CPU. Số lượng CPU được thông qua sau tùy chọn –n #Run Selenium tests in parallel with Python for Selenium Python tutorial 77Tùy chọn tăng tốc độ thực thi song song cho các bài kiểm tra dài, cũng như các bài kiểm tra có hoạt động I/O (Đầu vào/Đầu ra) thường xuyên trong quá trình triển khai. pytest-xdist (hoặc xdist-plugin) có nhiều tùy chọn khác, chi tiết tương tự có sẵn trong tài liệu xdist-plugin Chạy thử nghiệm Selenium song song với Python bằng Plugin pytest-xdistĐể minh họa cách sử dụng plugin pytest-xdist để chạy thử nghiệm Selenium song song với Python, tôi sẽ thực hiện bốn kịch bản thử nghiệm cho hướng dẫn Selenium Python này mà tôi sẽ thực hiện trên trình duyệt web Chrome và Firefox. Bốn kịch bản thử nghiệm được chia thành hai tệp python và đồ đạc được chia sẻ qua conftest. py. Để biết thêm thông tin chi tiết về đồ đạc PyTest và cách sử dụng conftest. py, bạn có thể tham khảo hướng dẫn Selenium Python trước đây về đồ đạc PyTest Kịch bản thử nghiệm — 1 (Chạy thử nghiệm Selenium song song với Python trên Trình duyệt Chrome)Trường hợp thử nghiệm — 1 1. Điều hướng đến URL https. //lambdatest. github. io/sample-todo-app/ 2. Chọn hai hộp kiểm đầu tiên 3. Gửi 'Thử nghiệm vui vẻ tại LambdaTest' tới hộp văn bản với id = sampletodotext 4. Nhấp vào nút Thêm và xác minh xem văn bản đã được thêm hay chưa Trường hợp thử nghiệm - 2 1. Điều hướng đến URL https. //lambdatest. com/ 2. So sánh tiêu đề cửa sổ với tiêu đề dự kiến 3. Tăng xác nhận nếu tiêu đề không khớp Kịch bản thử nghiệm — 2 ((Chạy thử nghiệm Selenium song song với Python trên Trình duyệt Firefox) Trường hợp thử nghiệm — 1 1. Điều hướng đến URL https. //www. Google. com 2. Tìm kiếm “LambdaTest” 3. Nhấp vào kết quả kiểm tra đầu tiên 4. Đưa ra một Xác nhận nếu Tiêu đề Trang không khớp với tiêu đề dự kiến Trường hợp thử nghiệm - 2 1. Điều hướng đến URL https. //lambdatest. com/blog 2. So sánh tiêu đề cửa sổ với tiêu đề dự kiến 3. Tăng xác nhận nếu tiêu đề không khớp Thực hiệnCác phương án gọi trình duyệt Chrome và Firefox đã được thêm vào Conftest. py. Tệp được đặt trong thư mục gốc, nơi cũng chứa các tệp chứa triển khai cho các trường hợp thử nghiệm Conftest. py Vì các URL khác nhau được sử dụng để kiểm tra trình duyệt tự động, nên phạm vi được đặt thành lớp (thay vì phiên) và phiên bản trình duyệt mới được tải cho mỗi lần kiểm tra con trăn xxxxxxxxxx 1 17
1 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2 import pytest 3 from selenium import webdriver 4 @pytest.fixture(scope="class") 5 ________số 86 web_driver = webdriver.Chrome() 7 #Run Selenium tests in parallel with Python for Selenium Python tutorial 08 #Run Selenium tests in parallel with Python for Selenium Python tutorial 19 #Run Selenium tests in parallel with Python for Selenium Python tutorial 210 #Run Selenium tests in parallel with Python for Selenium Python tutorial 011 @pytest.fixture(scope="class") 12 #Run Selenium tests in parallel with Python for Selenium Python tutorial 213 #Run Selenium tests in parallel with Python for Selenium Python tutorial 314 #Run Selenium tests in parallel with Python for Selenium Python tutorial 015 #Run Selenium tests in parallel with Python for Selenium Python tutorial 116 #Run Selenium tests in parallel with Python for Selenium Python tutorial 217 test_pytest_1. py Tệp này chứa việc triển khai Kịch bản thử nghiệm — 1 (Chạy thử nghiệm Selenium song song với Python trên Trình duyệt Chrome). @pytest. dấu. usefixtures decorator được bao gồm để sử dụng vật cố định driver_chrome_init() Nó chứa hai trường hợp thử nghiệm để chạy thử nghiệm Selenium song song với Python
Lệnh close() trong Selenium WebDriver được sử dụng để đóng cửa sổ trình duyệt sau khi quá trình kiểm tra hoàn tất con trăn xxxxxxxxxx 1 44
1 import pytest 2 #Run Selenium tests in parallel with Python for Selenium Python tutorial 93 from selenium import webdriver 4 import pytest 15 import pytest 26 import pytest 37 import pytest 48 import pytest 59 import pytest 610 import pytest 711 import pytest 812 import pytest 913 from selenium import webdriver 014 from selenium import webdriver 115 from selenium import webdriver 216 from selenium import webdriver 317 import pytest 618 from selenium import webdriver 519 from selenium import webdriver 620 import pytest 621 from selenium import webdriver 822 from selenium import webdriver 923 import pytest 624 @pytest.fixture(scope="class") 125 @pytest.fixture(scope="class") 226 @pytest.fixture(scope="class") 327 @pytest.fixture(scope="class") 428 import pytest 629 @pytest.fixture(scope="class") 630 @pytest.fixture(scope="class") 431 import pytest 632 @pytest.fixture(scope="class") 933 def driver_init_1(request): 034 import pytest 635 def driver_init_1(request): 236 def driver_init_1(request): 337 def driver_init_1(request): 438 def driver_init_1(request): 539 from selenium import webdriver 340 import pytest 641 def driver_init_1(request): 842 def driver_init_1(request): 943 @pytest.fixture(scope="class") 444 test_pytest_2. py Tệp này chứa việc triển khai Kịch bản thử nghiệm — 2 (Thực thi trên trình duyệt Firefox). @pytest. dấu. usefixtures decorator được bao gồm để sử dụng vật cố định driver_firefox_init() Nó chứa hai trường hợp thử nghiệm để chạy thử nghiệm Selenium song song với Python
Lệnh close() trong Selenium WebDriver được sử dụng để đóng cửa sổ trình duyệt sau khi quá trình kiểm tra hoàn tất con trăn xxxxxxxxxx 1 53
1 import pytest 2 #Run Selenium tests in parallel with Python for Selenium Python tutorial 93 from selenium import webdriver 4 import pytest 15 import pytest 26 import pytest 37 import pytest 48 import pytest 59 import pytest 610 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0111 import pytest 812 import pytest 913 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0414 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0515 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0616 from selenium import webdriver 317 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0818 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0919 import pytest 620 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1121 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1222 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1323 import pytest 624 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1525 import pytest 626 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1727 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1828 import pytest 629 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2030 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2131 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2232 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2333 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2434 import pytest 635 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1536 import pytest 637 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2838 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2939 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0040 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0141 import pytest 642 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0343 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0444 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0545 import pytest 646 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0747 #Run Selenium tests in parallel with Python for Selenium Python tutorial 0848 from selenium import webdriver 349 import pytest 650 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1151 def driver_init_1(request): 952 @pytest.fixture(scope="class") 453 Hai phép thử được thực hiện song song. Do đó, tùy chọn -n (i. e. num_of_cpus) được đặt thành 2. Việc thực thi được thực hiện bằng cách gọi lệnh sau trên thiết bị đầu cuối #Run Selenium tests in parallel with Python for Selenium Python tutorial 78Đây là ảnh chụp màn hình của quá trình thực thi cho biết rằng hai thử nghiệm được thực hiện đồng thời (i. e. song song) Như đã thấy bên dưới trong hướng dẫn Selenium Python này, tất cả bốn bài kiểm tra đã vượt qua để chạy các bài kiểm tra Selenium song song với Python trong pytest Những thách thức với lưới Selenium trong nhàCó một hạn chế khi thử nghiệm trên máy cục bộ vì bạn chỉ có thể tải một số trình duyệt nhất định (và các phiên bản của chúng) trên máy cục bộ. Ví dụ: không thể giữ các phiên bản khác nhau của một trình duyệt cụ thể trên cùng một máy. Nếu bạn sở hữu một máy có Mac OS, bạn có thể gặp khó khăn khi thực hiện kiểm tra trình duyệt tự động hóa trên trình duyệt Internet Explorer hoặc Edge Môi trường thực thi lý tưởng phải là một mạng gồm các máy được kết nối với nhau có môi trường trình duyệt khác nhau để các thử nghiệm có thể được thực hiện song song. Đây là những gì Selenium Grid được xây dựng cho. Selenium Grid được tạo ra như một phần của Selenium Suite bởi Phillipe Hanrigou vào năm 2008 Thời gian đưa ra thị trường (TTM) đặc biệt quan trọng đối với các sản phẩm hướng tới người tiêu dùng. Với tư cách là người quản lý thử nghiệm, cần phải đưa ra quyết định có ý thức về việc có khả thi hay không khi thiết lập cơ sở hạ tầng thử nghiệm nội bộ (hoặc Lưới Selenium cục bộ) với các máy ảo khác nhau. Thiết lập cơ sở hạ tầng cục bộ cho các kết hợp hiếm (nhưng quan trọng) chẳng hạn như kiểm tra trình duyệt chéo với IE trên Mac OS có thể trở thành một nhiệm vụ lớn Dưới đây trong hướng dẫn Selenium Python này là một số thách thức lớn mà người kiểm tra có thể gặp phải khi thực hiện kiểm tra trình duyệt chéo trên Lưới Selenium cục bộ 1. Khả năng mở rộng — Với mỗi bản phát hành trình duyệt mới, Lưới Selenium cục bộ cũng cần được mở rộng. Mở rộng quy mô sẽ yêu cầu đầu tư đáng kể từ quan điểm cơ sở hạ tầng và ROI (Lợi tức đầu tư) có thể không cao lắm 2. Các hạn chế đối với thử nghiệm trên nhiều trình duyệt — Trọng tâm của việc thử nghiệm sản phẩm của bạn với các kết hợp trình duyệt khác nhau phải là cải thiện chất lượng sản phẩm. Với hơn 2.000 trình duyệt để lựa chọn, việc thực hiện kiểm tra song song gần như vô hạn. Cùng với các trình duyệt mới nhất (và các tổ hợp nền tảng), thử nghiệm cũng phải được thực hiện trên các trình duyệt cũ Bằng cách chuyển thử nghiệm trên nhiều trình duyệt sang lưới Selenium trực tuyến, nhóm thử nghiệm có thể tập trung hoàn toàn vào nhiệm vụ hiện tại, thay vì lo lắng về việc duy trì cơ sở hạ tầng thử nghiệm nội bộ 3. Độ tin cậy ở mức giá — Việc phát triển phòng thí nghiệm thiết bị, duy trì máy ảo và giấy phép của chúng cũng như đảm bảo rằng chúng hoạt động (suốt ngày đêm) có thể là một nhiệm vụ khó khăn và tốn kém 4. Cập nhật các bản phát hành Selenium mới nhất — Lưới Selenium trực tuyến thường được cập nhật các bản phát hành Selenium mới nhất, bao gồm cả các bản phát hành Selenium Alpha. Ví dụ: Selenium 4 có một loạt các tính năng mới nên được cung cấp sớm nhất cho quá trình tự động hóa thử nghiệm. Với lưới Selenium cục bộ, sẽ là một nhiệm vụ đầy thách thức để cập nhật cơ sở hạ tầng Selenium với mỗi bản phát hành mới (đặc biệt là bản phát hành Alpha, Beta. ) Bất kể quy mô của cơ sở hạ tầng, bạn vẫn sẽ cần một nhóm nội bộ để chăm sóc độ tin cậy và bảo trì cơ sở hạ tầng lưới Selenium. Chi phí thực tế phát sinh trong việc thiết lập cơ sở hạ tầng có thể cao hơn đáng kể so với ước tính của sân bóng Chuyển hoạt động kiểm tra trình duyệt chéo sang Lưới Selenium trực tuyến nhanh và đáng tin cậy, chẳng hạn như LambdaTest, giúp đẩy nhanh quá trình kiểm tra trình duyệt tự động. Nó cũng dẫn đến việc cải thiện năng suất của nhóm vì tất cả các hoạt động liên quan đến thử nghiệm tự động hóa Selenium đều được tập trung tại một nơi Bắt đầu với kiểm tra song song trên lưới Selenium trực tuyếnƯu điểm chính của việc sử dụng cơ sở hạ tầng Selenium Grid trực tuyến đáng tin cậy là không cần cài đặt bất kỳ phần mềm (hoặc plugin) bổ sung nào trên máy của bạn. Các trình duyệt trên máy ảo được cài đặt sẵn các phiên bản Adobe Flash, Adobe Shockwave, Adobe Reader, Microsoft Silverlight, v.v. do đó, giúp dễ dàng kiểm tra RIA (Ứng dụng Internet phong phú). Để bắt đầu thử nghiệm trên nhiều trình duyệt trên LambdaTest, hãy thực hiện các bước sau
Khi bạn đã đăng nhập vào nền tảng, hãy sử dụng Selenium Desired Capabilities Generator để định cấu hình các bài kiểm tra Selenium của bạn trên Selenium Grid Chuyển các thử nghiệm tự động hóa PyTest sang lưới Selenium trực tuyếnTrước khi chuyển triển khai hiện tại sang Selenium Grid, chúng tôi tạo các khả năng trình duyệt cần thiết bằng cách sử dụng trình tạo khả năng. Đối với phần trình diễn, chúng tôi sử dụng các ví dụ tương tự đã được trình bày trước đó Kịch bản thử nghiệm — 1 (Trình duyệt. Chrome80. 0, Nền tảng. cửa sổ 10) Trường hợp thử nghiệm – 1 1. Điều hướng đến URL https. //lambdatest. github. io/sample-todo-app/ 2. Chọn hai hộp kiểm đầu tiên 3. Gửi 'Thử nghiệm vui vẻ tại LambdaTest' tới hộp văn bản với id = sampletodotext 4. Nhấp vào nút Thêm và xác minh xem văn bản đã được thêm hay chưa Trường hợp thử nghiệm - 2 1. Điều hướng đến URL https. //lambdatest. com/ 2. So sánh tiêu đề cửa sổ với tiêu đề dự kiến 3. Tăng xác nhận nếu tiêu đề không khớp Kịch bản thử nghiệm — 2 (Trình duyệt. Safari 12. 0, Nền tảng. macOS Mojave) Trường hợp thử nghiệm — 1 1. Điều hướng đến URL https. //www. Google. com 2. Tìm kiếm “LambdaTest” 3. Nhấp vào kết quả kiểm tra đầu tiên 4. Đưa ra một Xác nhận nếu Tiêu đề Trang không khớp với tiêu đề dự kiến Trường hợp thử nghiệm - 2 1. Điều hướng đến URL https. //lambdatest. com/blog 2. So sánh tiêu đề cửa sổ với tiêu đề dự kiến 3. Tăng xác nhận nếu tiêu đề không khớp Trình tạo khả năng được sử dụng để tạo khả năng cho (kết hợp trình duyệt + hệ điều hành). Do framework test đang sử dụng là PyTest nên chúng tôi chọn ngôn ngữ là Python Khả năng của thiết bị cho Kịch bản thử nghiệm — 1 (Trình duyệt. Chrome80. 0, Nền tảng. cửa sổ 10)Java xxxxxxxxxx 1
1 #Run Selenium tests in parallel with Python for Selenium Python tutorial 152 #Run Selenium tests in parallel with Python for Selenium Python tutorial 163 #Run Selenium tests in parallel with Python for Selenium Python tutorial 174 #Run Selenium tests in parallel with Python for Selenium Python tutorial 185 #Run Selenium tests in parallel with Python for Selenium Python tutorial 196 #Run Selenium tests in parallel with Python for Selenium Python tutorial 207 #Run Selenium tests in parallel with Python for Selenium Python tutorial 218 Khả năng của thiết bị cho Kịch bản thử nghiệm — 2 (Trình duyệt. Safari 12. 0, Nền tảng. macOS Mojave)Java xxxxxxxxxx1 1#Run Selenium tests in parallel with Python for Selenium Python tutorial152#Run Selenium tests in parallel with Python for Selenium Python tutorial243#Run Selenium tests in parallel with Python for Selenium Python tutorial254#Run Selenium tests in parallel with Python for Selenium Python tutorial265#Run Selenium tests in parallel with Python for Selenium Python tutorial276#Run Selenium tests in parallel with Python for Selenium Python tutorial287#Run Selenium tests in parallel with Python for Selenium Python tutorial218Các tham số được cung cấp cho các khả năng mong muốn để chạy thử nghiệm Selenium song song với Python nằm bên dưới trong hướng dẫn Selenium Python này Tham số Sự mô tả Thí dụ Xây dựng Tên bản dựng mà bạn có thể xác định bản dựng Chuyển thử nghiệm sang LambdaTest Selenium Grid Tên Tên thử nghiệm để xác định thử nghiệm đang được thực hiện Chuyển thử nghiệm sang LambdaTest Selenium Grid Nền tảng Nền tảng/Hệ điều hành mà bạn dự định thực hiện thử nghiệm Windows 10, macOS Mojave, v.v. Tên trình duyệt Trình duyệt mà kiểm tra tự động hóa sẽ được thực hiện Firefox, Chrome, Microsoft Edge, Internet Explorer phiên bản Phiên bản trình duyệt cụ thể mà bài kiểm tra sẽ được thực hiện Firefox phiên bản 64. 0, Chrome phiên bản 70. 0, v.v. selen_version Một phiên bản Selenium sẽ được sử dụng để thử nghiệm 3. 13. 0 firefox. người lái xe Phiên bản Remote WebDriver cho Firefox 2. 42 Bạn cũng có thể bật tùy chọn không đầu để thực hiện kiểm tra trình duyệt tự động trên các trình duyệt web không có GUI (Giao diện người dùng đồ họa) Vì các thử nghiệm được thực hiện trên Lưới Selenium trực tuyến, thông tin xác thực bao gồm sự kết hợp giữa tên người dùng và mã thông báo truy cập được sử dụng để truy cập URL Lưới LambdaTest — @hub. lambdatest. com/wd/trung tâm con trăn xxxxxxxxxx 1
1 #Run Selenium tests in parallel with Python for Selenium Python tutorial 312 API WebDriver từ xa sử dụng URL từ xa và khả năng của trình duyệt (ch_capabilities/saf_capabilities) được tạo bằng trình tạo khả năng LambdaTest con trăn xxxxxxxxxx 1
1 #Run Selenium tests in parallel with Python for Selenium Python tutorial 33Conftest. py được sử dụng để chia sẻ đồ đạc trên các tệp. Các thay đổi để chuyển từ Lưới Selenium cục bộ sang Lưới Selenium Trực tuyến chỉ được thực hiện trong conftest. py. Đây là những thay đổi về cơ sở hạ tầng để làm cho mã hoạt động trên Lưới Selenium Trực tuyến Conftest. py Các thay đổi chỉ liên quan đến việc chuyển bài kiểm tra sang Lưới Selenium trực tuyến con trăn xxxxxxxxxx 1 41
1 #Run Selenium tests in parallel with Python for Selenium Python tutorial 352 import pytest 3 from selenium import webdriver 4 #Run Selenium tests in parallel with Python for Selenium Python tutorial 385 #Run Selenium tests in parallel with Python for Selenium Python tutorial 396 import pytest 67 #Run Selenium tests in parallel with Python for Selenium Python tutorial 418 #Run Selenium tests in parallel with Python for Selenium Python tutorial 169 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1710 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1811 #Run Selenium tests in parallel with Python for Selenium Python tutorial 1912 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2013 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2114 import pytest 615 #Run Selenium tests in parallel with Python for Selenium Python tutorial 4916 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2417 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2518 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2619 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2720 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2821 #Run Selenium tests in parallel with Python for Selenium Python tutorial 2122 import pytest 623 #Run Selenium tests in parallel with Python for Selenium Python tutorial 5724 #Run Selenium tests in parallel with Python for Selenium Python tutorial 5825 @pytest.fixture(scope="class") 26 ________số 827 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6128 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6229 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6330 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6431 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6532 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6533 @pytest.fixture(scope="class") 34 #Run Selenium tests in parallel with Python for Selenium Python tutorial 235 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6136 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6237 #Run Selenium tests in parallel with Python for Selenium Python tutorial 7138 #Run Selenium tests in parallel with Python for Selenium Python tutorial 7239 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6540 #Run Selenium tests in parallel with Python for Selenium Python tutorial 6541 test_pytest_1. py và test_pytest_2. py Không có thay đổi cần thiết trong quá trình triển khai cốt lõi vì những thay đổi chỉ liên quan đến cơ sở hạ tầng. Do đó, việc triển khai trong test_pytest_1. py và test_pytest_2. py vẫn giống như cái được sử dụng để kiểm tra trình duyệt chéo trên Selenium Grid cục bộ, mặc dù chúng tôi đã sử dụng một trình duyệt và kết hợp hệ điều hành khác để kiểm tra trình duyệt chéo Để thực thi mã trên Lưới Selenium trực tuyến trên LambdaTest, chúng tôi sử dụng plugin pytest-xdist với một số thử nghiệm song song được đặt thành 4. Lý do chọn 4 là vì gói thanh toán hiện tại của tôi trên LambdaTest cho phép thực hiện song song 5 thử nghiệm Thực hiện lệnh sau trên thiết bị đầu cuối để chạy thử nghiệm Selenium song song với Python #Run Selenium tests in parallel with Python for Selenium Python tutorial 79Đây là ảnh chụp màn hình của e xecution chỉ ra rằng bốn bài kiểm tra đang chạy song song trên Selenium Grid trực tuyến Đây là ảnh chụp màn hình thực thi thiết bị đầu cuối cho biết rằng tất cả bốn thử nghiệm để chạy thử nghiệm Selenium song song với Python đều đã vượt qua Như đã thấy bên dưới trong hướng dẫn Selenium Python này, các thử nghiệm đã thực hiện thành công trên Lưới Selenium trực tuyến Tất cả trong tất cảTrong hướng dẫn Selenium Python này, tôi đã xem xét việc sử dụng khung PyTest cho Selenium Grid cục bộ và trực tuyến để chạy thử nghiệm Selenium song song với Python. Thử nghiệm trình duyệt tự động bằng cách sử dụng Selenium Grid cục bộ có thể gặp rào cản bất cứ lúc nào vì nó không thể mở rộng và yêu cầu đầu tư đáng kể vào việc thiết lập và duy trì cơ sở hạ tầng tổng thể. Lưới Selenium trực tuyến giúp tăng tốc quá trình thử nghiệm vì các thử nghiệm có thể được thực hiện song song trên Lưới Selenium đáng tin cậy. Thử nghiệm trên Lưới Selenium trực tuyến cũng hỗ trợ cải thiện phạm vi thử nghiệm vì thử nghiệm có thể được thực hiện trên nhiều kết hợp trình duyệt, nền tảng và thiết bị khác nhau. Với những nỗ lực tối thiểu (và thay đổi mã), các triển khai thử nghiệm hiện tại có thể được chuyển sang hoạt động với lưới Selenium trực tuyến Tôi hy vọng bạn tìm thấy bài viết này nhiều thông tin và thấy nó hữu ích. Trong trường hợp có bất kỳ nghi ngờ nào, hãy liên hệ trong phần bình luận bên dưới. Ngoài ra, tôi rất vui nếu bạn có thể chia sẻ hướng dẫn Selenium Python này với các đồng nghiệp và đồng nghiệp của mình, điều này có thể giúp ích cho họ nếu họ gặp phải bất kỳ thách thức nào khi chạy thử nghiệm Selenium song song với Python. Đó là tất cả cho bây giờ Pytest có chạy song song không?Tìm hiểu Pytest từ đầu
. Trong một kịch bản thực tế, một bộ thử nghiệm sẽ có một số tệp thử nghiệm và mỗi tệp sẽ có một loạt các thử nghiệm. Điều này sẽ dẫn đến một thời gian thực hiện lớn. Để khắc phục điều này, pytest cung cấp cho chúng tôi tùy chọn chạy thử nghiệm song song .
Python Unittest có chạy thử nghiệm song song không?Theo mặc định, unittest-parallel chạy thử nghiệm đơn vị trên tất cả các lõi CPU có sẵn .
Chúng ta có thể sử dụng Python với Selenium Grid không?Để sử dụng Python với selen, trước tiên hãy cài đặt phiên bản máy khách selen mới nhất tương đương với phiên bản lưới selen đã chọn của bạn . Thí dụ. Nếu bạn đã chọn sử dụng Selenium phiên bản 3. 14. 0 cho lưới Selenium của bạn, cài đặt 3 mới nhất. 14. x cho Python. |