Kinh nghiệm của tôi liên quan đến CruiseControl.NET và Team Foundation Build. Bản thân tôi là một nhà phát triển .NET. Chúng xuất phát từ trải nghiệm của tôi và chỉ bao gồm những trải nghiệm mà chúng tôi đã thử nghiệm như một phần của quy trình xây dựng, vì vậy nếu chúng không phù hợp với môi trường của bạn, xin lỗi.
Tôi cũng tự hỏi liệu có cần thiết phải có một công cụ cụ thể để chạy thử nghiệm hay không, liệu có đủ để chúng được tích hợp vào công cụ tích hợp liên tục của chúng tôi không
Nếu bạn đang thực hiện bản dựng mỗi lần đăng ký, có thể kích hoạt bản dựng trước khi bản dựng trước chạy xong. Làm thế nào để bạn muốn xử lý các tình huống như thế này? Ví dụ: nếu mất 30 phút để chạy qua toàn bộ bộ kiểm tra và mã được kiểm tra sau mỗi 15 phút, bạn có muốn bỏ qua một vài bản dựng không? Bỏ qua một số bài kiểm tra? Xếp chúng lên, xây dựng chúng theo thứ tự và quay lại với Bob rằng anh ta đã phá vỡ bản dựng với việc đăng ký 5 giờ trước?
Team Foundation Build có thể sử dụng nhiều lõi cho các bản dựng và thử nghiệm với năm 2010 (các phiên bản trước chỉ có thể sử dụng nhiều lõi cho các bản dựng C ++). CruiseControl.NET có thể chạy các luồng riêng biệt, nhưng đọc tài liệu , có vẻ như mỗi dự án có thể nằm trên luồng riêng, nhưng bạn không thể có nhiều luồng cho mỗi dự án (tôi có thể sai). Chúng tôi chưa bao giờ có một máy đa lõi để xây dựng trong môi trường tôi đã làm việc, vì vậy tôi không thể nói chúng tốt / công bằng / xấu như thế nào (hoặc tôi sai).
Tại một nhà tuyển dụng trước đó, chúng tôi đã bao gồm các tập lệnh Python trong bản dựng, nhưng chúng tôi không có bất kỳ thử nghiệm nào được thiết lập để kiểm tra Python. NANT đã được sử dụng cho các thành phần .NET.
Tôi cũng tự hỏi liệu có cần thiết phải có một công cụ cụ thể để chạy thử nghiệm không
Tôi chưa bao giờ có thời gian để làm điều đó, nhưng tại một chủ nhân trước đây (chúng tôi đã bán phần mềm "thu nhỏ"), chúng tôi có nhiều lỗi cụ thể đối với hệ điều hành (và đôi khi là gói dịch vụ cụ thể), vì vậy một trong những mục tiêu của tôi là thiết lập nhiều thử nghiệm các máy có hệ điều hành khác nhau (cả 32 + 64 bit và tất cả các hương vị khác nhau của máy tính để bàn và máy chủ Windows từ XP trở đi). Các máy xây dựng là các máy WinXP đơn giản và cũ hơn (hoặc ảo) vì đó là tất cả "phần cứng" mà chúng tôi được các nhà quản lý cho phép. Thay vào đó, tất cả các thử nghiệm chạy trên máy xây dựng. Chúng tôi cũng thiết lập các bộ xác thực dưới dạng các bộ sưu tập các bài kiểm tra đơn vị, mặc dù chúng không chạy cho các bản cập nhật nhỏ.