Nghiên cứu công cụ kiểmthử IBM Rational Funtional Tester V7.0Ứng dụng kiểmthử phần mềm tại trung tâm phát triển phần mềm Đại Học Duy TânMỤC LỤCMỤC LỤC 1DANH MỤC CÁC HÌNH VẼ .3DANH MỤC CÁC KÍ HIỆU VÀ TỪ VIẾT TẮT 4MỞ ĐẦU 51. Lý do chọn đề tài .52. Mục tiêu .63. Phạm vi nghiên cứu 64. Bố cục của đề tài .6CHƯƠNG I. CƠ SỞ LÝ THUYẾT 8I. TỔNG QUAN VỀ QUÁ TRÌNH KIỂMTHỬ 8I.1 Một số định nghĩa về quá trình kiểmthử phần mềm .8I.2 Những khái niệm liên quan đến kiểmthử 9I.3 Mô hình khái niệm của quá trình kiểmthử 10I.4 Mục tiêu của kiểmthử 10I.5 Vai trò .10II. NHỮNG VẤN ĐỀ LIÊN QUAN ĐẾN KIỂMTHỬ 11 II.1 Vòng đời kiểmthử 11 II.2 Tiến trình kiểmthử 11 II.3 Những thành phần của một kế hoạch kiểmthử .12 II.4 Những điểm cần tập trung kiểmthử trước nhất nếu không có đủ thời gian 12II.5 Các chỉ tiêu đánh giá kiểmthử .13III. MỘT SỐ LOẠI KIỂMTHỬ THÔNG DỤNG 131.Mô hình phát triển chữ V .13 2 Kiểmthử unit .14 2.1 Tiến trình kiểmthử Unit 152.2 Kế hoạch kiểmthử unit 16 2.3 Kiểmthử hộp đen 16 2.4 Kiểmthử hộp trắng .16 2.5 Các trường hợp kiểmthử và dữ liệu kiểmthử .193. Kiểmthử tích hợp .20 3.1 Tạo dữ liệu và file kiểmthử 20 3.2 Các chiến thuật và kĩ nghệkiểmthử 20 4 Kiểmthử hệ thống 23 5 Kiểmthử xác nhận .24 6 Kiểmthử hồi quy .24 7 Lỗi dữ liệu 24CHƯƠNG II. NGHIÊN CỨU PHẦN MỀM SEK CỦA IBM 32SVTH: Đặng Thị Kiều Oanh- MSSV:0057 Trang 1
Nghiên cứu công cụ kiểmthử IBM Rational Funtional Tester V7.0Ứng dụng kiểmthử phần mềm tại trung tâm phát triển Nghekiemthu - testerNghekiemthu - tester Bởi: Trần Thị Huệ Nghềkiểmthử phần mềm – TesterKiểmthử viên – Tester người thực kiểmthử Công việc kiểmthử viên tìm kiếm lỗi hay khiếm khuyết hệ thống phần mềm, thẩm định nhằm đảm bảo hiệu hoạt động tối ưu để giảm phí tổn lỗi phần mềm gây cho khách hàng Kiểmthử viên có vai trò trách nhiệm sau đây: phát triển Test Case thủ tục Kiểm thử, tạo liệu cho việc kiểm thử, thực kiểm thử, sử dụng công cụ để thực kiểmthử tự động, chuẩn bị văn cho kiểm thử, theo dõi lỗi báo cáo kết kiểmthử Những tố chất để làm tốt công việc kiểmthử viên bao gồm kỹ kỹ thuật kỹ hành vi ứng xử Một kiểmthử viên cần có kiến thức phát triển phần mềm, quy trình kiểmthử phần mềm văn liên quan đến quy trình kiểmthử Ngoài kiểmthử viên cần có tư logic tốt, có tinh thần trách nhiệm cao, có phương pháp tổ chức cẩn thận, tỉ mỉ, ham học hỏi … 1/1 1Nhập môn Công nghệ Phần mềmChủ đề 6: KIỂMTHỬ PHẦN MỀML ng Tr n Hy Hi n, Khoa CNTT, HSP TpHCMươ ầ ế Đ
Tài liệu – Textbook •Pressman, Kỹ nghệ phần mềm, chương 18~19.•Sommerville: Software Engineering, chương 22~23.
Cảm ơnBài giảng này tham khảo từ các nguồn sau:•Slide bài giảng CNPM, Trần Ngọc Bảo, ĐH Sư phạm TpHCM•Slide bài giảng CNPM, Trần Anh Dũng, ĐH CNTT, ĐHQG TpHCM.3
Khảo sátPhân tíchThiết kếCài đặtKiểm traTriển khaiBảo trìKết quả:Nội dung:•Kiểm lỗi•Kiểm lỗi phân hệ•Kiểm lỗi hệ thống•Roadmap•Test plan•Test case•Bug•Test reportGiai đoạn kiểm tra
Mục tiêuBiết được quy trình kiểmthử phần mềmBiết được các khái niệm liên quan đến kiểmthử (testing)Biết được các bước kiểm thửBiết sử dụng một số công cụ hỗ trợ testingBiết viết sưu liệu kiểm thử
Nội dungKhái niệm kiểmthử phần mềmMột số đặc điểm của kiểmthử phần mềmTại sao kiểmthử lại cần thiết?Qui trình kiểm thửTổ chức và vai trò của các thành viên trong nhóm testCông cụ hỗ trợ test:Công cụ theo dõi quá trình testCông cụ hỗ trợ test tự độngSưu liệu kiểm thử: Test plan, test case, test log, test report,…
•Kiểm thử là gì?… that can cause a failurein operationA person makesan error .… that creates a fault (bug, defect) in thesoftware .Khái niệm kiểmthử phần mềm
Khái niệm kiểmthử phần mềm•Kiểm thử phần mềm là quá trình thực thi phần mềm với mục tiêu tìm ra lỗiGlen Myers, 1979 Khẳng định được chất lượng của phần mềm đang xây dựngHetzel, 1988
Một số đặc điểm kiểmthử PM•Kiểm thử phần mềm giúp tìm ra được sự hiện diện của lỗi nhưng không thể chỉ ra sự vắng mặt của lỗiDijkstra•Mọi phương pháp được dùng để ngăn ngừa hoặc tìm ra lỗi đều sót lại những lỗi khó phát hiện hơnBeizer•Điều gì xảy ra nếu việc kiểmthử không tìm được lỗi trong phần mềm hoặc phát hiện quá ít lỗi–Phần mềm có chất lượng quá tốt–Quy trình/Đội ngũ kiểmthử hoạt động không hiệu quả
Tại sao kiểmthử lại cần thiết?•Thông thường thì phần mềm không hoạt động như mong muốn lãng phí tiền bạc, thời gian, uy tín của doanh nghiệp, thậm chí có thể gây nên thương tích hay cái chết.•Ví dụ:–Website công ty có nhiều lỗi chính tả trong câu chữ Khách hàng có thể lãng tránh công ty với lý do công ty trông có vẻ không chuyên nghiệp.–Một phần mềm tính toán lượng thuốc trừ sâu dùng cho cây trồng, vì lý do tính sai số lượng lên gấp 10 lần Nông dân phải bỏ nhiều tiền mua, cây trồng hư hại, môi trường sống, nguồn nước bị ảnh hưởng,….
[...]... sao kiểmthử lại cần thiết? • Kiểmthử phần mềm chất lượng phần mềm được nâng cao • Chúng ta có thể đánh giá chất lượng phần mềm dựa vào số lượng lỗi tìm thấy và các đặc tính như: tính đúng đắn, tính dễ sử dụng, tính dễ bảo trì,… • Kiểmthử có thể đem lại sự tin tưởng đối với chất lượng phần mềm nếu Công nghệ phần mềm Kiểmthử phần mềm Giảng viên: TS. Nguyễn Mạnh Hùng Học viện Công nghệ Bưu chính Viễn thông (PTIT) 2 Nội dung tham khảo từ Object-Oriented and Classical Software Engineering. 3 Kiểmthử !"!#$ !%$&'()*((+&%, ,-./0,120345&6789 14.:;;&<0 !$&'()*(=9>(8?@0 -./01;A8B8C&5,0; &<0 4 Chất lượng phần mềm D<0-&5E(B(F(GH8;E 9HI(+58080 :1J0B(F('EK&9L0 -.5M0;A8B8C&5,0 N01O,(B(F(9-5E( .9(P9=9>(Q,Q;./0 R:1J0B(F(9.9(P90; S.B80.Q5' 5 Quản lí chất lượng PM (1) N-(TU.9(P9:1J0V$ W9(P9X0(Y,A5' V.F8,(E4:1J0$ – ZQ8?([&% – D,,=9>( N0,-(TU\9.9(P9 X0P9]78^5'V_0 .Q:1J0`./08>a 6 Quản lí chất lượng PM (2) T893-(TU$ N-(TUA.YbF7893.?4 -(5'V D<0A.'-(,;-78;F:A C-(& c7893:C9-((4 .1J78;6.d$ – ,0=9>(./0e10\[ – Z=A(,P,0fe !E78;6.d\93.6g&6C &5,0,&3Q; 7 Kiểmthử -Q0&'()$ D'()5=9>(h D'()5=9>(h 8 Kiểmthử phi thực thi ihA08;Aj$ D<0h&'()=9>(C3 (^ ihA=M(Qk0JC-( -1205$ &80=$,=5 l==$&'(>(.d 9 Walkthroughs (1) ZkM$ N-(-mno01O -.QEC&%EQ -.QEC&%6 -.QEC-(TU N01Op5-(&80=,.Q EC-(TU 10 Walkthroughs (2) Q.+0$ [01O98>Pd(+=5$ – 5:.F&<0'8 – 5:.F-q&<0./0 V5E[10&<0=)[$ – )[PK9-(=r&<0.9(P9:1J0(, 3Q – D<09(Y:.FPdA8A.F8h=h,[ – [A&80=&<0785R&<0.CO 0=)[ [...]... liệu mình rà soát Follow-up: trưởng nhóm kiểm duyệt lại lần cuối để các lỗi đều được sửa hoặc làm rõ các vấn đề gây khó hiểu 13 Inspections (3) Thống kê lỗi: Thống kê lỗi theo mức độ, số lượng – Ví dụ: phần lớn hay không nhiều Thống kê lỗi theo kiểu lỗi – Ví dụ: tham số tham chiếu và tham số thực tế không thống nhất 14 Inspections (4) Thống kê lỗi: Lỗi được so sánh với tỉ lệ lỗi của các dựThành viên : 1. Nguyễn Văn Thanh
2. Đào Đình Thiện
3. Ngô Tuấn Thịnh
4. Bùi Văn Công
5. Đinh Thanh Đức
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
MÔN Công Nghệ Phần Mềm
Đề Tài : Chiến lược kiểmthử từ trên xuống
Nội dung báo cáo
GIỚI THIỆU KIỂMTHỬ TÍCH HỢP TỪ TRÊN XUỐNG
1
2
3
4
CÁC BƯỚC KIỂMTHỬ TÍCH HỢP TỪ TRÊN XUỐNG
ƯU, NHƯỢC ĐIỂM KIỂMTHỬ TÍCH HỢP TỪ TRÊN
XUỐNG
2
∗
Kiểm thử tích hợp từ trên xuống dưới là một
phương pháp gia lượng áp dụng cho việc xây dựng
cấu trúc chương trình.
∗
Các mô đun được tích hợp bằng cách di chuyển theo
chiều hướng xuống theo trình tự kiểm soát cấp bâc,
bắt đầu bằng mô đun điều khiển chính( chương trình
chính).
∗
Các mô đun phụ (và các mô đun sau cùng ) đến mô
đun điều khiển chính được ghép lại thành một cấu
trúc hoặc là theo lối nhanh nhất hoặc là theo lối lâu
nhất ( depth-first or bread-first manner ).
Top-down intergration
( Kiểmthử tích hợp từ trên xuông dưới )
M1
M1
M8
M4
M4
M3
M3
M2
M2
M6
M6
M7
M7
M5
M5
Kiểm Thử Từ Trên Xuống
∗
Tích hợp depth-first sẽ tích hợp tất cả các bộ phận vào một
đường điều khiển của cấu trúc. Việc lựa chọn con đường
phụ thuộc vào đặc điểm và ứng dụng cụ thể.
∗
Ví dụ, lựa chọn đường theo đường tay trái, các bộ phận
M1,M2,M5 sẽ được tích hợp trước. Tiếp đó M8 hoặc ( nếu
cần chức năng phù hợp của M2 ) M6 sẽ được tích hợp. Sau
đó, phương pháp điều khiển bàn tay phải và trung tâm sẽ
được xây dựng.
Breadth- first intergation kết hợp tất cả các bộ phận bổ
xung trực tiếp ở mỗi mức độ , chuyển qua cấu trúc theo
phương ngang.
Từ hình vẽ, các bộ phận M2,M3 và M4 ( thay cho S4 )
sẽ được tích hợp trước. Mức điều khiển tiếp theo, và cứ tiếp
tục như thế
Quá trình tích hợp được thực hiện theo 5
bước :
∗
Mô đun điều khiển chính được sử dụng làm bộ điều
khiển kiểmthử và các mô đun tiếp theo bổ sung cho tất cả
các bộ phận bổ sung trực tiếp cho mô đun điều khiển
chính.
∗
Tùy thuộc vào phương pháp tích hợp được chọn ( ví dụ
depth or breadth first ), các mô đun bổ sung tiếp theo
được thay thế theo trình tự với các bộ phận thực.
∗
Các bài kiểmthử sẽ được tiến hành khi mỗi mô đun
được tích hợp
∗
Khi hoàn thành từng bài kiểmthử một , các bộ phận
tiếp theo sẽ được thay thế bởi bộ phận thực.
∗
Kiểmthử hồi quy có thể được tiến hành để đảm bảo
không xảy ra lỗi mới.
∗
Quá trình tiếp tục từ bước thứ hai cho đến khi toàn
bộ cấu trúc chương trình được xây dựng.
∗
Kiểm thử hồi quy có thể được tiến hành để đảm bảo
không xảy ra lỗi mới.
∗
Quá trình tiếp tục từ bước thứ hai cho đến khi toàn
bộ cấu trúc chương trình được xây dựng.
Các bước tích hợp theo hướng từ trên xuống kiểm
thử các điều khiển hoặc quyết định chính ở phần đầu
quá trình kiểm thử.
∗
Nếu chọn phương pháp tích hợp depth first, có thể
tiến hành và trình bày một chức năng hoàn chỉnh của
phần mềm.
∗
Tất cả các điều vào xử lí ( để chuyển đi sau này ) có
thể được thể hiện trước khi các yếu tố khác nhau của
cấu trúc đã được tích hợp. Việc thể hiện ngay từ đầu
khả năng mang chức năng là rất có ích đối với người
phát triển và khách hàng.
∗
Phương pháp từ trên xuống có vẻ không phức tạp,
nhưng trên thực tế, có thể này sinh các vấn để logic.
∗
Một trong những vấn đề thường gặp xảy ra khi xử lí
ở mức độ thấp 1 Why you choose to become a Tester? Tại bạn chọn nghềKiểmthử viên? Trong trình học trường có làm nhiều đồ án môn học lập trình phần mềm thiết kế website bỏ qua giai đoạn kiểm tra cụ thể hay có kế hoạch kiểm tra, mà phần mềm hay website làm thường gặp cố vào phút chót Qua tích lũy cho số học hay hiểu tầm quan trọng Kiểmthử phần mềm dự án What sources you learn testing? Bạn học lý thuyết thực hành test từ nguồn nào? Ngoài học đào tạo Trung tâm testmaster.vn bồi dưỡng kiến thức qua số trang, group, cộng đồng người làm tester testingvn.com Would you like to become a professional Tester? How you plan to achieve it? Bạn có kỳ vọng trở thành chuyên gia test không? Bạn lên kế hoạch để đạt mục tiêu đó? Tôi mong muốn trở thành tester giỏi, nghĩ không riêng mà theo tester muốn trở thành tester giỏi nhằm đảm bảo chất lượng tối ưu phần mềm Trong năm đầu tiên, mong muốn trải nghiệm công việc tester thực tế, làm việc phát triển môi trường làm việc động, mức thu nhập hợp lý để đảm bảo sống, vừa học vừa làm, trau dồi, tích lũy học hỏi kiến thức kỹ cho công việc kiểmthử phần mềm từ sách vở, thực tế đồng nghiệp Đạt Chứng ISTQB cho Tester vòng năm tới Mục tiêu dài hạn trở thành Tester chuyên nghiệp, trang bị đầy đủ kiến thức kỹ chuyên ngành kỹ quản lý, đảm nhiệm vị trí Test Leader, có khả phân bố nguồn lực test, đảm bảo chất lượng sản phẩm để kịp tiến độ dự án Đối với tôi, đảm bảo chất lượng cho sản phẩm phần mềm, góp phần tạo sản phẩm phần mềm tốt, xác mục tiêu lớn công việc What time you usually spend using computer a day? Bạn thường sử dụng máy tính ngày? Mỗi ngày sử dụng máy tính 9-10 tiếng What you use computer for and how much time for each? Bạn sử dụng máy tính vào công việc thời gian sử dụng cho công việc bao lâu? Hiện tại, chủ yếu dùng máy tính cho việc làm tập test trung tâm, tìm hiểu kiến thức test lập trình từ Internet, chiếm khoảng 80% thời gian sử dụng Thời gian lại để phục vụ nhu cầu giải trí cá nhân In your opinion, what are the most important factors that establish a successful website? Theo bạn đâu yếu tố tạo nên thành công website? Một website thành công đảm bảo mục đích thiết kế Một số yếu tố kể đến như: - Nội dung chất lượng, đầy đủ thông tin cho đối tượng sử dụng Website dễ sử dụng, thân thiện với người dùng Tương thích nhiều thiết bị, mở rộng liên kết với nhiều mạng xã hội Tối ưu hóa với công cụ tìm kiếm (SEO – Search Engine Optimized) What characters are necessary for a Tester? Have you got them? Những tính cách cần thiết cho vị trí Tester? Bạn có tính cách không? Những thứ cần thiết cho tester: - - Đầu tiên, hiểu thông thạo ngôn ngữ lập trình để tư duy, kiểm tra code developer Tiếp đến cẩn thận, tỉ mì, nhạy bén, siêng năng, giao tiếp tốt, có tầm nhìn rộng để hiểu đưa quan điểm sản phẩm phần mềm theo xu hướng thị trường Tester phải có tinh thần trách nhiệm cao, để chịu trách nhiệm cho sản phẩm qua test Tiếng Anh điều quan trọng mà tester cần có để mở rộng hiểu biết, đọc hiểu tài liệu test Tôi nghĩ có tính cách Tell us your team-work experience Have you ever worked in a team? What was your team size and your role in the team? Bạn làm việc nhóm chưa? Nếu có, quy mô nhóm bạn người bạn có vai trò nhóm? Làm việc nhóm hay làm việc độc lập trải qua nhiều tập lớn, đồ án, trường Trong lần làm việc nhóm, có t bầu làm nhóm trưởng có thành viên nhóm Thường quy mô nhóm làm việc tầm ng với làm đồ án, người với làm tập lớn What are the factors that create an effective working team? Những yếu tố tạo nên nhóm hoạt động hiệu quả? Đầu tiên nghĩ yếu tố đoàn kết Tiếp theo tin tưởng, trợ giúp lẫn Tiếp đến tinh thần trách nhiệm, thành viên nhóm cần phải biết đặt thành công nhóm lên hàng đầu thay thể thân giúp công việc hoàn thành hiệu 10 What is your strength and why? Điểm mạnh bạn gì? Tại sao? Điểm mạnh người đánh giá người có trách nhiệm với công việc, tinh thần tự giác, trách nhiệm cao làm việc nhóm Tôi nghĩ, làm việc phải làm có thể, phải cố gắng, cố gắng không phải cố gắng 2, không cần nhiều nữa, có đtạ kết tốt Ngoài tự tin thuyết