Trong bài viết này có đề cập rằng để tăng tốc độ kiểm tra, người đăng chạy nhiều phiên bản NUnit với các tham số lệnh chỉ định những bài kiểm tra nào mà mỗi phiên bản sẽ chạy.
FTA:
Tôi gặp phải một vấn đề kỳ lạ.
Chúng tôi sử dụng nunit-console để chạy thử nghiệm trên máy chủ tích hợp liên tục của chúng tôi. Gần đây, chúng tôi đã chuyển từ Nunit 2.4.8 sang 2.5.5 và từ .Net 3.5 sang 4.0. Để tăng tốc độ thực thi kiểm tra, chúng tôi chạy song song nhiều phiên bản Nunit với các đối số dòng lệnh khác nhau
- Chúng tôi có hai bản sao của các tập hợp thử nghiệm của chúng tôi và các mã nhị phân nunit trong thư mục A và B.
- Trong thư mục A, chúng tôi thực thi
nunit-console-x86.exe Model.dll Kiểm tra.dll / loại trừ: MyCategory /xml=TestResults.xml /framework=net-4.0 / noshadow
- Trong thư mục B chúng tôi thực thi
nunit-console-x86.exe Model.dll Test.dll / include: MyCategory /xml=TestResults.xml /framework=net-4.0 / noshadow
Nếu chúng ta thực hiện các lệnh theo trình tự thì cả hai đều chạy thành công. Nhưng nếu chúng ta thực hiện chúng song song thì chỉ có một thành công. Theo như tôi có thể nói đó là thứ đầu tiên tải các thiết bị thử nghiệm. Cái kia không thành công với thông báo "Không thể xác định vị trí cố định".
Vấn đề này đã được biết chưa? Tôi không thể tìm thấy bất kỳ điều gì liên quan trong danh sách lỗi trên bệ khởi động. BTW Máy chủ của chúng tôi chạy Windows Server 2008 64-bit. Tôi cũng có thể tái tạo sự cố trên Windows 7 64-bit.
Giả sử lỗi này đã được khắc phục hoặc bạn không chạy (các) phiên bản mới hơn của phần mềm được đề cập, bạn có thể sao chép kỹ thuật của chúng.
Cập nhật
TeamCity trông giống như một công cụ bạn có thể sử dụng để tự động chạy các bài kiểm tra NUnit. Họ có một trình khởi chạy NUnit được thảo luận ở đây có thể được sử dụng để khởi chạy nhiều phiên bản NUnit. Đây là một bài đăng trên blog thảo luận về việc kết hợp nhiều kết quả NUnit XML vào một tệp kết quả duy nhất.
Vì vậy, về mặt lý thuyết, bạn có thể để TeamCity tự động khởi chạy nhiều bài kiểm tra NUnit dựa trên cách bạn muốn chia nhỏ khối lượng công việc và sau đó hợp nhất kết quả thành một tệp duy nhất để xử lý bài kiểm tra.
Điều đó có đủ tự động cho nhu cầu của bạn không?