Có ba hạng công cụ kiểm tra được sử dụng nhiều nhất. Nhiều công cụ phải trải hết 2 hoặc 3 phân loại nói trên.
Các công cụ phân tích tĩnh: Các công cụ kiểm tra tĩnh giúp các kỹ sư phần
mềm trong việc rút ra các trường hợp kiểm tra. Ba kiểu khác nhau của các công cụ kiểm tra tĩnh được dùng trong công nghiệp: các công cụ kiểm tra dựa trên mã, các ngôn ngữ kiểm tra đặc tả và các công cụ kiểm tra dựa trên yêu cầu.
Code-Based testing tools nhận mã nguồn như là đầu vào và tiến hành một số phân tích. Căn cứ vào mô tả của đầu vào chương trình và thiết kế thủ tục như là chỉ dẫn các công cụ kiểm tra tĩnh suy ra các trường hợp kiểm tra sử dụng đường dẫn, các kiểm tra điều kiện và các tiêu chuẩn luồng dữ liệu.
Requirements-based testing tools phân tách các yêu cầu người dùng và khuyên một số trường hợp kiểm tra (hoặc lớp kiểm tra) mà sẽ thử các yêu cầu. Để thực hiện tốt thì các công cụ trong phân hạng này phải truy nhập tới các đặc tả hình thức của phần mềm.
Specialized testing languages cho phép các kỹ sư phần mềm viết các đặc tả kiểm tra chi tiết mà mô tả mỗi trường hợp kiểm tra và logic cho sự thực hiện nó. Trong
Ngôn ngữ đặc tả thủ tục Module sinh mã Module sinh mã Module sinh mã Module sinh mã COBOL PL/1 C Mã được thực hiện
phần lớn các trường hợp, các công cụ kiểm tra tĩnh sẽ tư liệu hoá và phân loại các phép kiểm tra. Và nó sẽ so sánh kết quả thực với kết quả dự tính.
Các công cụ phân tích động: Các công cụ kiểm tra động tương tác với quá trình thực hiện chương trình, kiểm tra đường thử, kiểm tra xác nhận về giá trị các biến, các công cụ động có thể là loại can thiệp hoặc không can thiệp. Công cụ can thiệp (intrusive) thay đổi phần mềm để kiểm tra. Công cụ không can thiệp (nointrusive) sử dụng một xử lý phần cứng tách rời chạy song song với xử lý chưa có chương trình đang kiểm tra. Phần lớn các công cụ thuộc phân loại phân tích động tạo các báo cáo chỉ rõ số lượng các khối, câu lệnh đã được thực hiện và các thời gian thực hiện trung bình cho các khối lệnh. Công cụ kiểm tra động có thể được dùng để nối tiếp với công cụ kiểm tra tĩnh. Các kiểm tra tĩnh tạo ra các trường hợp test sau đó được quản lý bởi các công cụ động.
Công cụ quản lý test: Công cụ quản lý test dùng để điều khiển và phối hợp các kiểm tra phần mềm cho mỗi bước kiểm tra chính. Các công cụ trong phân loại này quản lý và phối hợp các kiểm tra regression. Tiến hành các so sánh output thực và biểu kiến. Nhiều công cụ quản lý test cũng phục vụ như là các bộ điều khiển test.
Một bộ điều khiển test đọc một hoặc nhiều trường hợp test từ file test, định dạng các dữ liệu test để phù hợp nhu cầu phần mềm, sau đó gọi phần mềm để test. Cuối cùng, nhà quản lý test đôi khi làm việc với công cụ theo dõi yêu cầu để cung cấp các phân tích coverage yêu cầu cho kiểm tra.