2008-10-17 46 views
8

Dự án hiện tại của tôi sử dụng NUnit để kiểm tra đơn vị và điều khiển UAT được viết bằng Selenium. Các nhà phát triển thường chạy thử nghiệm bằng cách sử dụng thử nghiệm của ReSharper trong VS.Net 2003 và hộp xây dựng của chúng tôi sẽ khởi động chúng thông qua NAnt.Làm thế nào tôi có thể chạy thử nghiệm NUnit (Selenium Grid) song song?

Chúng tôi muốn chạy thử nghiệm UAT song song để chúng tôi có thể tận dụng lợi thế của Lưới điện/Mạng lưới Selenium để chúng có thể chạy nhanh hơn nhiều.

Có ai có bất kỳ suy nghĩ nào về cách thức này có thể đạt được không? và/hoặc thực hành tốt nhất để thử nghiệm các thử nghiệm Selenium đối với nhiều môi trường trình duyệt mà không cần tự động viết các bài kiểm tra trùng lặp?

Cảm ơn bạn.

Trả lời

5

Chưa có nhiều công việc về chủ đề này. Tôi đã không tìm thấy bất cứ điều gì thực sự có liên quan.

Tuy nhiên, điểm của bạn được thực hiện tốt. Hầu hết các máy ngày nay có nhiều nhân và lõi ít ​​mạnh hơn so với cpu lõi mạnh mẽ.

Vì vậy, tôi đã tìm thấy thứ gì đó trên blog của Microsoft. Công nghệ này được gọi là PUnit và được tạo ra đặc biệt để thử nghiệm môi trường đa luồng.

Đó là càng gần càng tốt với những gì mà bạn yêu cầu mà tôi có thể tìm :)

Bạn có thể truy cập vào nó các bài viết trên blog phù hợp ngay tại đó: http://blogs.microsoft.co.il/blogs/eyal/archive/2008/07/09/punit-parallel-unit-testing-in-making.aspx

Cập nhật: Link là không hợp lệ nữa. Dự án trên CodePlex đã bị xóa.

Update2: Đây là trên lộ trình cho NUnit 2.5. Reference

2

Tôi gặp khó khăn với cả hai vấn đề này. Cuối cùng, tôi đã phát triển một Á hậu thử nghiệm Nunit tùy chỉnh có khả năng chạy nhiều thử nghiệm song song. Điều này kết hợp với phần mở rộng Taumuon.Rakija cho nunit cho phép các bài kiểm tra được dynmaically tạo ra tùy thuộc vào trình duyệt mà bạn muốn thử nghiệm để chạy trên.

Tôi hiện đang ở vị trí mà tôi có thể khởi chạy bộ thử nghiệm của mình dựa trên nhiều loại trình duyệt trên nhiều hệ điều hành như tôi muốn song song.

Thật không may dường như không phải là giải pháp tốt cho những vấn đề này nên bạn có thể sẽ phải tự giải quyết chúng cho môi trường cụ thể của mình.

+3

Làm thế nào về bạn mở nguồn nó? – ripper234

0

Igor Brejc có một bài đăng trên blog về chạy thử nghiệm song song bằng cách sử dụng MbUnit. Tuy nhiên, anh ta nói "Khi chúng tôi tích hợp Selenium vào thử nghiệm chấp nhận", vì vậy có vẻ như anh ta đang thử nghiệm, tôi không thể tìm thấy bất kỳ bài đăng nào khác nên tôi không biết liệu anh ta có chạy thử nghiệm Selenium thành công song song hay không. .

http://igorbrejc.net/development/continuous-integration/gallio-running-tests-in-parallel

2

NUnit phiên bản 3 sẽ hỗ trợ kiểm tra chạy song song, công trình này tốt với một Selenium Grid:

Thêm thuộc tính cho một lớp: [Parallelizable(ParallelScope.Self)] sẽ chạy thử nghiệm của bạn song song với các lớp học thử nghiệm khác.

• ParallelScope.None cho biết thử nghiệm có thể không chạy song song với các thử nghiệm khác.

• ParallelScope.Self cho biết rằng thử nghiệm chính nó có thể chạy song song với các thử nghiệm khác.

• ParallelScope.Children cho biết rằng con cháu của thử nghiệm có thể chạy song song với nhau.

• ParallelScope.Fixtures cho biết rằng đồ đạc có thể chạy song song với nhau.

NUnit Framework-Parallel-Test-Execution

Các vấn đề liên quan