2009-04-13 15 views
40

Tôi nghĩ rằng tôi hiểu rằng một máy chủ khói được sử dụng để tích hợp liên tục để đo lường hiệu suất và phạm vi kiểm tra của một dự án. Điều này về cơ bản có đúng không? Thử nghiệm chương trình hút thuốc có ý nghĩa gì? Nó chỉ đơn giản có nghĩa là liên tục áp dụng các bài kiểm tra được xác định trên máy chủ khói để có thể xác định sự xuống cấp hiệu suất thành một khung thời gian cụ thể?Thử nghiệm khói thuốc là gì và tôi sẽ làm gì?

Trả lời

56

Thử nghiệm khói là một tập hợp các thử nghiệm cơ bản rẻ để chạy trước thử nghiệm thực tế. Nó nhằm mục đích xác minh rằng việc xây dựng được triển khai thành công và tất cả các env thử nghiệm. các khía cạnh đang chạy và sẵn sàng cho quá trình thử nghiệm thực tế. Nó giúp bạn tiết kiệm mức độ đầy đủ của cơn thịnh nộ thử nghiệm của bạn xuống một xây dựng bị lỗi và chỉ nhận ra rằng bạn đã được thử nghiệm trên một env xấu. hoặc xây dựng sai có thể quá muộn.

+1

Tôi đã hoàn toàn tắt. Giá rẻ để chạy ... về cơ bản là một dấu hiệu của lửa? – ojblass

+0

@ojblass: Có, những gì bạn có thể đề cập đến là thử nghiệm ngâm - http://en.wikipedia.org/wiki/Soak_testing. –

+1

+1 câu trả lời ngắn gọn ngắn gọn – skaffman

4

Kiểm tra khói không phải là thử nghiệm hiệu suất hoặc thử nghiệm phòng ngừa hồi quy.

Kiểm tra khói là tập hợp các thử nghiệm tự động hoàn toàn ưu tiên cao nhất của bạn. Ngay cả khi xây dựng thường xuyên của bạn thành công, nó có thể cho sản phẩm của bạn được chia theo những cách rất cơ bản mà làm cho nó 100% không sử dụng được. Thử nghiệm khói được thiết kế để kiểm tra mức độ chức năng cốt lõi đó. Một bản xây dựng không vượt qua kiểm tra khói sẽ rất có thể thất bại trong phần lớn tất cả các thử nghiệm tự động của bạn.

Nếu kiểm tra khói không thành công thường có nghĩa là bạn đang mất năng suất vì không thể sử dụng, không thể kiểm tra, vv Lỗi kiểm tra khói có xu hướng yêu cầu sửa lỗi ngay lập tức, theo thứ tự giờ không phải ngày.

Khía cạnh quan trọng về kiểm tra khói là chúng có thể chạy nhanh. Bạn nên luôn luôn chạy thử nghiệm khói của một số loại. Nhiều nhóm có đủ nguồn lực để chạy một bộ kiểm thử lớn hơn trên các phiên bản tích hợp hàng ngày hoặc liên tục của họ (đó là sự tốt lành), nhưng các thử nghiệm khói nên được coi là tối thiểu.

+2

Tôi không tin rằng thử nghiệm khói nhất thiết là tự động - nó cũng có thể tham khảo các kiểm tra thủ công cơ bản - có thể bao gồm những thứ không thể được kiểm tra tự động như bố cục. –

+0

Đúng, nhưng chúng tôi đang đi đến điểm mà hầu hết mọi thứ đều có thể được tự động hóa. Hãy lười biếng, tự động. –

1

Thử nghiệm khói là bước đầu tiên của thử nghiệm tích hợp. Là một nhà phát triển, bạn đã đặt tất cả các phần lại với nhau và bạn đảm bảo rằng ứng dụng của mình sẽ chạy trước khi đưa nó cho nhóm QA của bạn để kiểm tra "thực".

Tôi muốn viết nhiều hơn, nhưng MahdeTo đánh bại tôi đến một câu trả lời đúng ... :)

2

Chúng tôi sử dụng kiểm tra khói thuật ngữ để nói đến một thử nghiệm mà không xét nghiệm cơ bản để nhanh chóng một ứng dụng hoặc sản phẩm để làm cho nó đủ điều kiện để thử nghiệm thêm như thử nghiệm tích hợp hoặc kiểm tra chức năng. Đó là ít sử dụng để làm thử nghiệm tích hợp hoặc thử nghiệm adavanced khác nếu ứng dụng không làm một số những điều cơ bản cần thiết cho các thử nghiệm tiên tiến. Ví dụ, chúng tôi có một ứng dụng dựa trên web và chúng tôi thử nghiệm khói để đảm bảo chúng tôi có thể tải tất cả các trang web, cho phép người dùng đăng nhập/đăng xuất vv. Đây là những điều cơ bản cần làm việc với ứng dụng để làm cho nó có thể kiểm chứng. Nếu các trang thậm chí không tải hoặc nếu người dùng thậm chí không thể đăng nhập, chúng tôi không thể làm gì nhiều với chức năng hoặc thử nghiệm tích hợp. Chúng tôi thử nghiệm khói với mọi công trình xây dựng tiếp theo là kiểm tra chức năng và tích hợp.

20

Thuật ngữ bắt nguồn từ hardware repair và đã được áp dụng cho phần mềm. Nó được dự định là một thử nghiệm nhanh để xem ứng dụng "bắt lửa" khi chạy lần đầu tiên. Như đã nói ở trên nó chỉ là để đảm bảo bạn không lãng phí một bó của folks thời gian bằng cách đặt chúng lỏng lẻo vào một cái gì đó rõ ràng là bị hỏng.

4

wikipedia page on smoke testing thực sự khá tốt. Nó bao gồm một con trỏ đến giấy của Steve McConnel ("Mã Hoàn thành") trong phần thực hành tốt nhất của Phần mềm IEEE 13 (4), 1996 có tiêu đề "Daily Build and Smoke Test".

Tôi muốn nói thử nghiệm khói là điều kiện tiên quyết đối với đơn vị và các hình thức kiểm tra khác: nếu kiểm tra khói không thành công thì không có điểm nào trong việc bắt đầu thử nghiệm đơn vị.

21

Bật tính năng này, xem có khói nào xuất hiện không.

+5

thực sự khiến tôi cười. – ojblass

+0

Hài hước nhưng đúng .. – Gabriel

0

* kiểm tra tính năng cơ bản và quan trọng của ứng dụng trước khi tiến hành thử nghiệm được gọi là thử nghiệm khói. * Trong thử nghiệm khói, chúng tôi kiểm tra dòng chảy tích cực của tính năng cơ bản và quan trọng để kiểm tra xem xây dựng có thể kiểm tra hay không.

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