SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
1
LỜI NÓI ĐẦU
Trong thời buổi công nghệ thông tin có mặt khắp các lĩnh vực, các tổ chức cá
nhân, doanh nghiệp ngày càng phát triển mạnh mẽ. Nhu cầu sử dụng các phần mềm
để thực hiện các công việc được nhanh chóng, chính xác và hiệu quả ngày càng
tăng. Việc đảm bảo chất lượng phần mềm ngày càng trở lên quan trọng. Bên cạnh
các phần mềm truyền thống, người ta còn sử dụng các phần mềm chạy trên nền
web. Chính vì điều đó website ngày càng được sử dụng rộng rãi.
Ngoài ra, để đáp ứng nhu cầu chia sẻ thông tin , cũng như truyền đạt thông tin
một cách nhanh chóng và tiếp cận với nhiều người nhất thì website chính là phương
tiện có khả năng làm tốt nhất công việc đó.
Ngày nay, các website được phát triển một cách cực kỳ mạnh mẽ và nhanh
chóng. Tuy nhiên, đi cùng với sự phát triển vượt bậc và tiện lợi như thế thì cũng có
không ít các trở ngại dẫn đến việc website không được hoạt động một cách hiệu quả
nhất. Do đó, cần thiết phải kiểm thử và đảm bảo chất lượng của website.
Với sự hướng dẫn của thầy nhóm chúng em thực hiện đề tài “Kiểm thử phần
mềm và thực hiện kiểm thử trên 1 bài toán cụ thể ” và thực hiện trên một sản phẩm
website đã được xây dựng nhưng chưa hoàn thiện , cũng như gặp rất nhiều thiếu sót
trong quá trình phát triển sản phẩm. Do hạn chế về mặt kiến thức cho nên không thể
tránh khỏi sai sót trong quá trình làm báo cáo, rất mong được sự giúp đỡ và chỉ dạy
của thầy và các bạn.
Chúng em xin chân thành cảm ơn!
2
MỤC LỤC
Phần I: PHẦN MỞ ĐẦU.............................................................................................................4
1. Lý do chọn đề tài........................................................................................................4
2. Mục đích......................................................................................................................4
PHẦN II. TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM .......................................................5
1. Các khái niệm cơ bản.................................................................................................5
2. Các mục tiêu chính của kiểm thử phần mềm..........................................................5
3. Các mức độ của kiểm thử phần mềm. .....................................................................5
4. Testcase .......................................................................................................................8
5. Các nguyên tắc cơ bản về kiểm thử .........................................................................8
6. Quy trình kiểm thử phần mềm................................................................................10
6.1. Tester nằm ở quy trình nào trong phát triển phần mềm? ....................................10
6.2. Quy trình kiểm thử phần mềm................................................................................11
7. Phân biệt QA và QC ................................................................................................12
Phần III: KIỂM THỬ WEBSITE .........................................Error! Bookmark not defined.
1. Thế nào là kiểm thử Website? ................................................................................13
1.1. Khái quát ...................................................................................................................13
1.2. Thành phần bên trong trang Web...........................................................................14
1.3. Tại sao cần kiểm thử Website?...............................................................................14
2. Những phương pháp kỹ thuật khi kiểm thử Website..........................................15
2.1. Kiểm thử giao diện trang Web (Testing Web page interface)............................15
2.2. Kiểm thử chức năng ( functional testing)..............................................................16
2.2.1.Kiểm thử liên kết (links)........................................................................................16
2.2.2.Kiểm thử định dạng sử dụng trong trang Web ...................................................16
2.3. Kiểm thử hiệu suất (Performance testing).............................................................18
2.9. Kiểm thử hướng phát triển trang Web (Test development)Error! Bookmark not def
3
3. Ví dụ nhỏ viết testcase kiểm thử trang Web ATM .............................................18
PHẦN IV. MỘT SỐ CÔNG CỤ KIỂM THỬ WEBSITE ....................................................19
1. Khái quát về kiểm thử tự động ...............................................................................19
1.1. Khái quát ...................................................................................................................19
1.2. Kiểm thử tự động là gì?...........................................................................................20
1.3. Tại sao cần kiểm thử tự động?................................................................................20
1.4. Ưu và nhược điểm của kiểm thử tự động..............................................................20
2. Một số công cụ kiểm thử tự động Website ...........................................................23
2.1. Công cụ kiểm thử chức năng ..................................................................................23
2.1.1.Công cụ SeleniumIDE.............................................................................................23
2.1.2.Công cụ Quicktestprofessional ...........................Error! Bookmark not defined.
2.2. Công cụ kiểm thử hiệu năng ...................................................................................25
2.2.1.Công cụ Jmeter ApacheJmeter...............................................................................25
2.2.2.Công cụ Mercury LoadRunner............................Error! Bookmark not defined.
PHẦN V. TỔNG KẾT...............................................................................................................27
PHẦN VI. TÀI LIỆU THAM KHẢO .....................................................................................28
4
PHẦN I: PHẦN MỞ ĐẦU
1. Lý do chọn đề tài
Website ra đời đã mở ra hướng mới cho việc phát triển các ứng dụng trên
Internet. Website kết hợp sử dụng nhiều công nghệ khác nhau, cho phép hai ứng
dụng dùng chung một ngôn ngữ, độc lập hệ điều hành trao đổi được với nhau thông
qua môi trường mạng. Điểm khác biệt lớn nhất và đặc trưng nhất của một trang
Web là có thể liên kết được với các trang Web khác, và các trang Web khác ấy lại
liên kết với rất nhiều các trang Web khác nữa tạo thành một mạng lưới liên kết
khổng lồ trên toàn thế giới. Tuy nhiên, nó mang đến cho các nhà kiểm thử và phát
triển phần mềm nhiều thách thức.
Sự phức tạp, tính linh hoạt và phụ thuộc các ứng dụng vào một dịch vụ, thiếu
thử nghiệm là một trong những thách thức mà các nhà phát triển Website phải đối
mặt. Vì vậy, nhu cầu kiểm thử Website ngày càng tăng lên và trở thành thiết yếu đối
với dự án phần mềm.
Các lỗi là nguyên nhân chính của năng suất thấp và là kết quả của những sai
xót trong suốt vòng đời phát triển của phần mềm. Những lỗi này bao gồm mội lỗi
thực thi, các lỗi bảo mật, thực hiện sai chức năng, lỗi sụp đổ hệ thống… càng sớm
phát hiện vấn đề thì càng dễ sửa lỗi và giảm thời gian, chi phí cho phần mềm.
Nói chung, các nhà phát triển, nhà nghiên cứu, những chuyên gia dựa vào
thực nghiệm kiểm tra tính đảm bảo các chức năng dịch vụ, độ tin cậy của Website,
cung cấp giải pháp kiểm thử tự động. Ngoài ra, khả năng tương tác, an ninh và các
vấn đề liên quan đều có ảnh hưởng đến cả nhà sản xuất và người sử dụng.
2. Mục đích
Mục đích lựa chọn đề tài của chúng em là tìm hiểu những kiến thức tổng
quan về phần mềm, có thể viết testcase và kiểm thử Website và tìm hiểu về
các công cụ kiểm thử tự động để giúp cho việc kiểm thử nhanh chóng và hiệu
quả hơn.
Hơn thế nữa, thực hiện đề tài này sẽ giúp cho chúng em có những kiến thực
bổ ích để phục vụ cho công việc trong tương lai.
5
PHẦN II. TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM
1. Các khái niệm cơ bản
Kiểm thử phần mềm là quá trình khảo sát một hệ thống hay thành phần dưới
những điều kiện xác định, quan sát và ghi lại các kết quả và đánh giá một khía cạnh
nào đó của hệ thống hay thành phần đó. (Theo Thuật ngữ kỹ nghệ phần mềm-IEEE
Standard Glossary of Software Engineering Terminology).
Kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm
lỗi.(Theo Art of Software Testing” – Nghệ thuật kiểm thử phần mềm).
 Có thể định nghĩa một cách tổng quát là: Kiểm thử phần mềm là quá
trình thực hiện hay đánh giá một sản phẩm phần mềm hay một dịch vụ
phần mềm bằng phương pháp thủ công hoặc các công cụ hỗ trợ tự động
để kiểm tra và xác mình rằng nó đáp ứng yêu cầu quy định.
2. Các mục tiêu chính của kiểm thử phần mềm
- Phát hiện càng nhiều lỗi càng tốt trong thời gian kiểm thử xác định
trước.
- Chứng minh rằng sản phẩm phần mềm phù hợp với các đặc tả yêu cầu
của nó.
- Xác thực chất lượng kiểm thử phần mềm đã dùng chi phí và nỗ lực
tối thiểu.
- Tạo các testcase chất lượng cao, thực hiện kiểm thử hiệu quả và tạo ra
các báo cáo vấn đề đúng và hữu dụng.
3. Các mức độ của kiểm thử phần mềm.
 Test Unit (Test mức đơn vị): Là kiểu test kiểm tra code xem liệu chức
năng nó đang thực hiện có đúng cách hay không theo như yêu cầu.
 Test Shakeout(Test cấu hình) : Kiểu test này cơ bản là kiểu test về khả
năng của hệ thống mạng, kết nối dữ liệu và sự tương tác của các
module. Thông thường thì kiểu test này là do nhóm quản lý cấu hình
chuẩn bị thiết lập các môi trường test thực sự. Họ cũng test xem liệu
các thành phần chính của phần mềm có hoạt động bất thường không.
Kiểu test này thực hiện trước khi tiến hành thực hiện trong môi
trường test. Sau khi test shakeout, bước kế tiếp là test smoke
(kiểu test được thực hiện bởi tester sau khi biên dịch, được tiến
hành trong môi trường test).
6
 Test smoke (Test sơ lượt): Là kiểu test được thực hiện khi phần code
được biên dịch mới chỉ được chuẩn bị tiến hành trong môi trường test.
Kiểu này cơ bản giống như để kiểm tra đại khái để chắc rằng các
chức năng chính có bị bất thường không? Nó mở đầu cho quá trình
test bởi Tester QA. Sau khi test smoke, các tester sẽ thực hiện test khả
năng thực hiện của các chức năng.
 Functional testting (Kiểm thử chức năng): Qui trình cố gắng tìm ra
các khác biệt giữa đặc tả bên ngoài của phần mềm và thực tế mà phần
mềm cung cấp.
 Đặc tả bên ngoài của phần mềm là đặc tả chính xác về hành vi của
phần mềm theo góc nhìn của người dùng thấy. Sử dụng kiểm thử hộp
đen để kiểm thử chức năng.
 Kiểm thử chức năng là một nhóm kiểm thử rất rộng bao gồm FAST,
TOFT, kiểm thử biên, kiểm thử dạng khám phá và các dạng khác.
 FAST: Mỗi đầu vào và điều khiển,duyệt các hoạt động đúng
như mong đợi?
 TOFT: Ứng dụng có thể thực hiện các chức năng hữu ích như
mong đợi?
 Kiểm thử biên: Điều gì xảy ra khi sử dụng các giá trị biên?
 Kiểm thử dạng khám phá: Kinh nghiệm nói lên điều gì về các
vùng tiềm ẩn vấn đề trong ứng dụng? Kiểm thử dạng khám
phá bao gồm việc nghiên cứu, lập kế hoạch, và thực thi kiểm
thử một cách đồng thời. Tấn công phần mềm: Tại sao phần
mềm bị lỗi? làm thế nào bạn có thể biến những bài học kinh
nghiệm thành các hoạt động tương tác nhằm công kích và phát
hiện các lỗi phần mềm?
 Test Tích hợp (Integration testing) : là kiểu test kiểm tra liệu tất
cả các module là được kết hợp hoặc chưa kết hợp lại cùng với
nhau thực hiện công việc có đạt được kết quả như tài liệu yêu
cầu đã được xác định (do mỗi lập trình viên thực hiện trên các
module khác nhau. Khi họ hoàn thành đoạn code của họ, nhóm
quản lý cấu hình ráp chúng lại với nhau và chuẩn bị biên dịch.
Các tester cần chắc rằng các module này bây giờ đã được kết
hợp và làm việc theo như yêu cầu – tức là phải test theo như
yêu cầu).
 Test hồi quy (Regression testing) : Khi một chức năng mới
được thêm vào phần mềm, chúng ta cần chắc chắn rằng phần
chức năng mới được thêm vào không phá hỏng các phần khác
7
của ứng dụng. Hoặc khi lỗi đã được chỉnh sửa, chúng ta cần
chắc chắn rằng lỗi chỉnh sửa không phá hỏng các phần khác
trong ứng dụng. Để test điều này chúng ta thực hiện kiểu test
lặp đi lặp lại gọi là test hồi quy.
 Test hệ thống (System testing): Khi tester hoàn thành công việc
test (các tester test ứng dụng trong các môi trường test, nghĩa là
họ test với dữ liệu test, không test trên dữ liệu thật), ứng dụng
(phần mềm) phải được test trên môi trường thật. Nó nghĩa là gì,
tức là kể từ khi các tester test nó trong môi trường test với dữ
liệu test, chúng ta phải chắc chắn rằng ứng dụng làm việc tốt
trong môi trường thật với dữ liệu thật. Trong môi trường test,
một vài điều không thể test hoặc thao tác giả. Tất cả sẽ khác
nhau và cơ sở dữ liệu khác nhau, một số thao tác có thể không
làm việc như mong đợi khi ứng dụng được chuyển từ môi
trường test sang môi trường sản phẩm (test enviroment to
production environment).
 Test tải dữ liệu(Load testing): Là kiểu test kiểm tra thời gian
đáp lại người dùng với ứng số lượng người dùng bất kỳ trong
một ngữ cảnh nào đó của cùng một ứng dụng tại cùng một thời
điểm.
 Test tải trọng (Stress testing) : Là kiểu test kiểm tra thời gian
đáp lại người dùng với ứng số lượng người dùng bất kỳ trong
nhiều ngữ cảnh khác nhau của cùng một ứng dụng tại cùng một
thời điểm.
 Test hiệu suất (Performance testing) : Trong loại test này, ứng
dụng được test dựa vào sức nặng như sự phức tạp của giá trị,
độ dài của đầu vào, độ dài của các câu truy vấn…Loại test này
kiểm tra bớt phần tải (stress/load) của ứng dụng có thể được
chắc chắn hơn.
 Test chấp nhận từ người sử dụng (User acceptance testing):
Trong kiểu test này, phần mềm sẽ được thực hiện kiểm tra từ
người dùng để tìm ra nếu phần mềm phù hợp với sự mong đợi
của người dùng và thực hiện đúng như mong đợi. Trong giai
đoạn test này, tester có thể cũng thực hiện hoặc khách hàng có
các tester của riêng họ để thực hiện.
 Test hộp đen (Black box testing) : Là kiểu test mà Tester thực
hiện test không chú ý gì đến code (hoặc là một hình thức test
mà ứng dụng đang test được xem như một hộp đen và hành vi
8
bên trong của chương trình hoàn toàn được bỏ qua. Việc test
xảy ra dựa trên các đặc tả bên ngoài. Cũng hiểu như test hành
vi, chỉ hành vi bên ngoài của ứng dụng là được đánh giá và
phân tích).
 Test hộp trắng (White box testing) : Là test mà các tester tìm
kiếm lỗi bên trong code.
 Test Alpha (Alpha testing) :Trong loại test này, các người dùng
được mời đến điểm tập trung đề xuất ý kiến, nơi mà họ sẽ sử
dụng chương trình và người phát triển chú ý mỗi thông tin liên
quan hoặc hành động được đặt ra bởi người dùng. Bất kỳ hành
vi bất thường nào của hệ thống cũng phải được ghi nhận và
chỉnh sửa bởi người phát triển.
 Test Beta (Beta testing) : Trong loại test này, phần mềm được
phân bổ như một phiên bản thử nghiệm (sử dụng thử) để người
dùng kiểm tra ứng dụng tại nơi làm việc của họ. Người sử dụng
sẽ quan sát phần mềm, trong trường hợp nếu có bất kỳ lỗi xảy
ra thì nó được báo cáo đến người phát triển.
4. Testcase
Mỗi testcase chứa các thông tin cần thiết để kiểm thử thành phần phần
mềm theo 1 mục tiêu xác định. Thường testcase gồm bộ 3 thông tin {tập dữ
liệu đầu vào, trạng thái của thành phần phần mềm, tập kết quả kỳ vọng}
Tập dữ liệu đầu vào (Input): gồm các giá trị dữ liệu cần thiết để thành
phần phầm mềm dùng và xử lý. Tập kết quả kỳ vọng là kết quả mong muốn
sau khi thành phần phần mềm xử lý dữ liệu nhập.
Tập các testcase : tập hợp các testcase mà ta có ý định dùng để kiểm
thử thành phần phần mềm để minh chứng rằng các ca kiểm thử có đúng các
hành vi mong muốn.
Các phương pháp thiết kế testcase Bất kỳ sản phẩm kỹ thuật nào
(phần mềm không phải là ngoại lệ) đều có thể được kiểm thử bởi 1
trong 2 cách :
 Test hộp đen :Là kiểu test mà Tester thực hiện test không chú ý gì đến
code (hoặc là một hình thức test mà ứng dụng đang test được xem như
một hộp đen và hành vi bên trong của chương trình hoàn toàn được bỏ
qua. Việc test xảy ra dựa trên các đặc tả bên ngoài. Cũng hiểu như test
hành vi, chỉ hành vi bên ngoài của ứng dụng là được đánh giá và phân
tích).
 Test hộp trắng : Là test mà các tester tìm kiếm lỗi bên trong code
5. Các nguyên tắc cơ bản về kiểm thử
9
Thông tin thiết yếu của mỗi testcase là kết quả hay dữ liệu xuất
kỳ vọng. Nếu kết quả kỳ vọng của testcase không được định
nghĩa rõ ràng, người ta sẽ giải thích kết quả sai (plausible)
thành kết quả đúng bởi vì hiện tượng “the eye seeing what it
wants to see.” => 1 test case phải chứa 2 thành phần thiết yếu :
ƒ
Đặc tả về điều kiện dữ liệu nhập. Đặc tả chính xác về kết quả
đúng của chương trình tương ứng với dữ liệu nhập. Việc kiểm
thử đòi hỏi tính độc lập. Chương trình có thể chứa các lỗi do
lập trình viên hiểu sai về đặc tả/phát biểu vấn đề. Tổ chức lập
trình không nên kiểm thử các chương trình của tổ chức mình
viết. ƒ
Thanh tra 1 cách xuyên suốt các kết quả kiểm thử. Phải thiết
kế đủ các test case cho cả 2 trường hợp : dữ liệu đầu vào hợp lệ
và dữ liệu đầu vào không hợp lệ và chờ đợi. Xem xét chương
trình xem nó không thực hiện những điều mong muốn, xem nó
có làm những điều không mong muốn ? Không nên lập kế
hoạch nỗ lực kiểm thử dựa trên giả định ngầm rằng phần mềm
không có lỗi.
Kiểm thử là 1 tác vụ rất thách thức đòi hỏi sự sáng tạo và trí
tuệ.
10
6. Quy trình kiểm thử phần mềm
6.1. Tester nằm ở quy trình nào trong phát triển phần mềm?
Người thực hiện Trình tự công việc
Ban giám đốc
Trưởng dự án
Trưởng dự án
Trưởng dự án
Trưởng dự án
Đội dự án
Đội dự án
Trương dự án
QLDA
QA
Quyết định
khởi động dự
án.
Thu thập thông tin
dự án
Phân công thực
hiện
Test
Lập kế hoạch
dự án
Phân tích
thiết kế
Lập trình
Chuyển giao
11
6.2. Quy trình kiểm thử phần mềm
STT Người thực hiện Trình tự công việc
1 Trưởng dự án Lập kế hoạch test
2 Đội dự án Cài đặt, chuẩn bị test
3 Đội dự án Unit Test (test đơn vị)
4 Đội dự án, Tester
Module Test (test module)
5 Đội Test IntergrationTest (test tích hợp)
6 Đội Test System Test (test hệ thống)
7 Trưởng dự án Xem xét, đánh giá kết quả Test
8
Trưởng dự án
Ban giám đốc
Tổng hợp, báo cáo.
Báo cáo
12
7. Phân biệt QA và QC
Nói về QLDA, Hệ thống QLCL bao gồm 2 phần chính là QC & QA.
QA (Quality Assurance) QC (Quality Control)
Những kế hoạch, hoạt động mang
tính hệ thống nhằm bảo đảm rằng
quá trình sản xuất sẽ tạo ra những
sản phẩm có chất lượng.
Những hoạt động, những kỹ thuật
nhằm bảo đảm chất lượng sản
phẩm.
Các hoạt động quản lý quy trình
QC thực hiện, đảm bảo QC thực
hiện đúng
Các hoạt động kiểm thử nhằm phát
hiện lỗi và sửa lỗi.
Ví dụ:
- Đảm bảo chất lượng
- Định nghĩa tiến trình
- Chọn lựa công cụ
- Huấn luyện
Ví dụ:
- Kiểm duyệt
- Kiểm thử
- Thanh tra
- Kiểm tra lại
13
PHẦN III. KIỂM THỬ WEBSITE
1. Thế nào là kiểm thử Website?
1.1. Khái quát
Kiểm thử Website là một phần cả kiểm thử phần mềm. Vì vậy, các công
cụ kiểm thử cho phần mềm cũng sẽ được ứng dụng để kiểm thử
Website. Tuy nhiên, người kiểm thử không được áp dụng cứng nhắc
những phương pháp đó mà cần linh hoạt, biến nó thành kiểm thử
Website một cách thông minh hơn.
.
Kiểm thử là công việc quan trọng đánh giá chất lượng của một sản phẩm và
Web cũng không ngoại lệ. Các phương pháp kiểm thử tập trung vào đánh giá các
chức năng yêu cầu. Tuy nhiên, không thể nào tập trung vào được hết các chức năng
yêu cầu. Bởi có rất nhiều chức năng quan trọng cho người sử dụng như là: tính hiệu
quả, tính dễ sử dụng, độ tin cậy, tính bảo mật… Những yêu cầu và mong đợi của
người sử dụng là những vấn đề hay gặp phải và đòi hỏi cần phải thay đổi trong suốt
quá trình ta xây dựng một trang Web. Vì thế , cần thiết phải phát triển một chiến
lược hiệu quả cho việc kiểm thử mà có thể bao quát được giới hạn tổng thể rộng lớn
của những yêu cầu, chức năng cho một trang Web, qua đó có thể cài đặt ứng dụng
và tránh các rủi ro.
14
1.2. Thành phần bên trong trang Web
Gồm 3 thành phần chính:
Thành phần phía trình chủ: Ví dụ như các trình chủ Web, trình chủ cơ
sở dữ liệu, trình chủ ứng dụng, ngôn ngữ đánh dấu, kết nối Web đến cơ
sở dữ liệu và các chương trình mở rộng của trình chủ Web.
Thành phần trình khách: Trình duyệt Web và các thành phần Add-
on/Plug-in.
Kiến trúc hệ thống: Trong hệ thống trang Web, các thành phần được
nhóm lại thành các cụm dịch vụ liên quan, dưới đây ta tiến hành xem xét
hệ thống Web dưới hai dạng:
 Hệ thống khách chủ truyền thống: Một ứng dụng điển hình gồm
có 4 phần: Mã nguồn giao diện người dùng, mã nguồn xử lý
logic, mã nguồn dịch vụ truy cập dữ liệu, lưu dữ liệu.
 Hệ thống khách chủ trên Web: Gồm: Máy khách (dịch vụ người
dùng), máy chủ (dịch vụ xử lý) và các thành phần dịch vụ dữ liệu
(máy chủ).
1.3. Tại sao cần kiểm thử Website?
Các trang Web cùng những ứng dụng của nó đưa ra nhiều thử
thách đối với các nhà phát triển khác nhau.
Chất lượng của trang Web về cơ bản phụ thuộc vào các thành
phần kể trên và khả năng tương tác giữa chúng. Kiểm thử là
một trong những công vệc quan trọng của quá trình phát triển
Web tạo ra các sản phẩm Web tốt nhất. Vì vậy mà việc kiểm
thử cũng cần phải có phương pháp, hệ thống riêng.
Kiểm thử nhằm vào việc tìm ra các lỗi, thiếu xót trong ứng
dụng. Vậy vấn đề ở đây là chúng ta cần phải linh hoạt khi áp
dụng làm cho những phương pháp này phù hợp, thích ứng với
việc kiểm thử các trang Web.
 Và ở đây chúng ta sẽ đề cập tới những giải pháp, phương thức và
công cụ cho kiểm thử Web.
15
2. Những phương pháp kỹ thuật khi kiểm thử Website
2.1. Kiểm thử giao diện trang Web (Testing Web page interface)
Mục đích: Kiểm chi chỉ ra các lỗi, chứng minh giao diện của trang Web
không đúng với đặc tả yêu cầu.
Các giao diện chính bao gồm: Giao diện web server và server ứng
dụng:
 Lỗi chính tả, font chữ, font size…
 Giá trị thể hiện.
 Cách sắp xếp thông tin, hình ảnh…
 Các thanh, các tabs, các mục chi tiết như thế nào?
 Giao diện server ứng dụng và giao diện server dữ liệu
 Kiểm tra tất cả các tương tác giữa các server. Nếu server dữ
liệu hoặc web server trả lại bất kỳ báo lỗi nào cho bất kỳ truy
vấn nào từ server ứng dụng thì ngay lập tức server ứng dụng
phải nhận được và cho hiển thị cảnh báo tới người dùng. Kiểm
tra các trường hợp giao dịch bị ngắt đột ngột do người dùng,
hoặc kết nối tới server bị gián đoạn, bị khởi động lại…
 VD:
16
2.2. Kiểm thử chức năng ( functional testing)
Kiểm thử chức năng thường sử dụng kỹ thuật kiểm thử hộp đen nào đó, đặc tả
dựa theo trang Web.
Mục đích kiểm thử là tìm ra các lỗi về mặt chức năng, bao gồm cả nhiều lỗi
về chức năng rất quan trọng, chứng minh chức năng của trang Web không
đúng với đặc tả ban đầu.
Việc kiểm thử chức năng yêu cầu tester thực hiện test tất cả các link trong
trang web, định dạng được sử dụng trong các trang web để gửi và nhận các
thông tin cần thiết từ người dùng. Ngoài ra còn có kết nối cơ sở dữ liệu,
kiểm tra cookies và xác minh HTML/CSS.
2.2.1. Kiểm thử liên kết (links)
Kiểm tra các liên kết (links) bao gồm kiểm tra liên kết ngoài trang web, liên kết nội
bộ, liên kết tới các vị trí trong cùng trang, liên kết sử dụng
Liên kết bên trong một cấu trúc siêu văn mà điểm đến không tồn tại một nút (các
trang web, hình ảnh,vv) hoặc được gọi là liên kết hỏng và đại diện nổi tiếng và
thường xuyên xảy ra sai sót trong các ứng dụng Web.
Để kiểm tra cho chính xác của các trang liên kết (link kiểm tra), tất cả các liên
kết được hệ thống theo sau bắt đầu trên một trang bắt đầu, và sau đó được nhóm
trong một đồ thị liên kết ( bản đồ trang web).
Khi chạy một thói quen kiêm tra liên kết, người ta thường thấy các liên kết
không chỉ là điểm đến không tồn tại trang, nhưng cũng có các trang không được
interlinked với những người khác hoặc cái gọi là các trang mồ côi. Những trang
mồ côi có thể được đạt đến thông qua một liên kết, nhưng không có một liên kết
đến cấu trúc siêu văn bản.
Để đơn giản cho người sử dụng nó không rõ ràng nơi để đi tới, để họ rời bỏ trang
web. Các trang là thiết kế lý tưởng để họ kết thúc bằng một đề nghị của nơi
người đọc có thể đi tiếp theo.
Ngoài ra, khi vượt qua các liên kết, người ta thường có thế tìm thấy dữ liệu bô
sung để cung cấp chi dẫn tiềm năng lồi, ví dụ, độ sâu và bề rộng của các cơ cấu
chuyển hướng, khoảng cách giữa hai tramg liên quan đến các trang, được đo
bằng số lượng các liên kết, hoặc lần tải của các trang.
2.2.2. Kiểm thử định dạng sử dụng trong trang Web
17
Kiểm tra form của các trang: form là phần cơ bản của các trang web, nên
cần được kiểm tra một cách kỹ càng, bao gồm các yêu cầu sau:
 Không nhập gì vào các trường bắt buộc thì sao?
 Giá trị mặc định của các trường là gì?
 Nhập đầu vào không đúng validate của các trường thì sao?
 Thao tác trên các trường: xem, nhập, lưu, sửa, xóa…
 Kết nối cơ sở dữ liệu: yêu cầu kiểm tra tính toàn vẹn của dữ
liệu khi tạo, sửa, xóa form…hoặc bất cứ chức năng nào có liên
quan tới cơ sở dữ liệu. Khi truy vấn cơ sở dữ liệu thì kết quả trả
về có tương ứng với kết quả nhìn thấy được trên giao diện
không, dữ liệu có được lấy và cập nhật chính xác không?...
 Kiểm thử cookies: cookies là các tệp được tạo bởi trang web đã
truy cập để lưu trữ thông tin duyệt web, như các tùy chọn trang
web hoặc thông tin đăng nhập của người dùng. Người dùng có
thể tùy chỉnh trên trình duyệt nhằm quản lý cookies, thực hiện
các thao tác cho phép lưu, hoặc xóa, hoặc chặn…để kiểm tra
các tính năng lưu hoặc không lưu trạng thái đăng nhập, tính
năng bảo mật của ứng dụng web.
Xác minh HTML/CSS: việc xác minh này đặc biệt quan trọng khi developer
thực hiện tối ưu hóa trang web cho các công cụ tìm kiếm, chủ yếu liên quan
tới lỗi cú pháp HTML. Tester sẽ kiểm tra xem trang web có được nhận diện
bởi các công cụ tìm kiếm khác nhau hay không (ví dụ: Google, Yahoo,
Bing…).
18
2.3. Kiểm thử hiệu suất (Performance testing)
Kiểm thử hiệu suất là tiến trình thu thập và phân tích thông tin
mà trong đó dữ liệu đo lường được tập hợp để dự đoán khi nào các
mức tải sẽ vượt quá khả năng chịu đựng của nguồn tài nguyên của
hệ thống. Trong tiến trình này bạn sẽ tập hợp các giá trị chuẩn.
Các giá trị này được sử dụng để xây dựng các kịch bản kiểm thử
tải và kiểm thử quá tải khác nhau. Các số liệu chuẩn đó cũng được
sử dụng như ranh giới giúp cho bạn phát hiện khi nào hiệu suất hệ
thống được cải thiện hoặc bắt đầu giảm đi.
Mục đich của kiểm thử hiệu suất làm việc là chỉ ra rằng trang
Web này không đạt được hiệu xuất được đặc tả trong mục tiêu đặt
ra cho trang Web đó.
Kiểm thử hiệu suất dựa vào sức nặng như độ phức tạp của giá
trị , độ dài của đầu vào, độ dài của các câu truy vấn…
Kiểm thử xác định hệ thống hoạt động như thế nào theo từng
khối lượng công việc cụ thể. Ngoài ra, nó dùng để xác minh, xác
nhận các thuộc tính như độ tin cậy và sử dụng tài nguyên.
Một số các hoạt động liên quan tới hiệu suất như là thời gian
đáp ứng đạt được, khả năng thông qua và mức độ sử dụng tài
nguyên.
Kiểm thử hiệu năng gắn với việc kiểm thử với các tốc độ kết
nối mạng khác nhau.
Thí dụ một số lỗi về hiệu suất:
 Khả năng hiển thị các hình ảnh, đề mục trong trang
Web không đáp ứng được với tốc độ yêu cầu của khách
hàng. ƒ
 Trang Web không đáp ứng được số lần kích chọn,
không hiển thị, hoặc hiển thị chậm các mục, các hình
ảnh mà người dùng kích chọn.
 Trình soạn thảo văn bản của trang Web không nhận và
xử lý kịp các ký tự được nhập bởi người dùng.
Note: Kiểm thử hiệu suất và kiểm thử tải, quá tải thường được dùng
thay thế lẫn nhau nhưng thực ra là chúng không giống nhau.
3. Ví dụ nhỏ viết testcase kiểm thử trang Web ATM
19
Hình 1
Hình 2
PHẦN IV. MỘT SỐ CÔNG CỤ KIỂM THỬ WEBSITE
1. Khái quát về kiểm thử tự động
1.1. Khái quát
Kiểm thử phần mềm tốn nhiều chi phí nhân công, thời gian. Trong
một số dự án, chi phí kiểm thử phần mềm chiếm 50% tổng giá trị của dự án.
20
Nếu cần ứng dụng an toàn hơn, chi phí kiểm thử còn cao hơn nữa. Do đó một
trong các mục tiêu của kiểm thử là tự động hóa nhiều, nhờ đó mà giảm thiểu
chi phí, giảm lỗi, đặc biệt giúp việc kiểm thử hồi qui dễ dàng và nhanh chóng
hơn. Tự động hóa việc kiểm thử là dùng phần mềm điều khiển việc thi hành
kiểm thử, so sánh kết quả có được với kết quả mong muốn, thiết lập các điều
kiện đầu vào, các kiểm soát kiểm thử và các chức năng báo cáo kết quả...
1.2. Kiểm thử tự động là gì?
Kiểm thử tự động là quá trình thực hiện một cách tự động các bước
trong một kịch bản kiểm thử. Kiểm thử tự động bằng một công cụ nhằm
rút ngắn thời gian kiểm thử.
1.3. Tại sao cần kiểm thử tự động?
Kiểm thử phần mềm tự động với mục đích:
 Giảm bớt công sức và thời gian thực hiện quá trình kiểm
thử - Tăng độ tin cậy.
 Giảm sự nhàm chán cho con người
 Rèn luyện kỹ năng lập trình cho kiểm thử viên - Giảm chi
phí cho tổng quá trình kiểm thử. Khi nào cần kiểm thử tự
động?
 Không đủ tài nguyên: Khi số lượng TestCase quá nhiều mà
kiểm thử viên không thể hoàn tất trong thời gian cụ thể -
Kiểm tra hồi quy: Nâng cấp phần mềm, kiểm tra lại các tính
năng đã chạy tốt và những tính năng đã sửa. Tuy nhiên,
việc này khó đảm bảo về mặt thời gian
 Kiểm tra khả năng vận hành phần mềm trong môi trường
đặc biệt: Đo tốc độ trung bình xử lý một yêu cầu của Web
server Xác định số yêu cầu tối đa được xử lý bởi Web
Server Xác định cấu hình máy thấp nhất mà PM vẫn có
thể hoạt động tốt.
1.4. Ưu và nhược điểm của kiểm thử tự động
Ưu điểm:
 Độ tin cậy cao(Reliability): Nhờ sự ổn định vượt trội của công cụ
kiểm thử tự động so với con người, đặc biệt trong trường hợp có
quá nhiều test cases cần được thực thi, nên độ tin cậy của kiểm thử
tự động thường cao hơn so với kiểm thử thủ công.
 Khả năng lặp (Repeatability): Hãy cùng xem xet một ví dụ: Trong
một ngày thời tiết xấu chúng ta phải thực thi một test case với 50
bộ dữ liệu đầu vào khác nhau. Nếu thực thi cách thủ công, ngồi
21
trước màn hình, nhập dữ liệu, click click .., check check … trong
50 lần có lẽ bạn sẽ gục ngã sớm trên bàn làm việc của mình.
NHƯNG, nếu bạn thực thi bằng kiểm thử tự động, chỉ cần nhập dữ
liệu vào file excel ( or csv, …) cho script chạy và ngồi rung đùi
cho tới khi nhận được báo cáo. Với độ ổn định cao, bạn hoàn toàn
có thể tin tưởng vào kết quả thực thi của công cụ kiểm thử tự
động. Quả là một viễn cảnh lý tưởng hơn nhiều.
 Khả năng tái sử dụng (Reusability): Với một bộ kiểm thử tự động,
chúng ta có thể sử dụng cho nhiều phiển bản ứng dụng khác nhau,
đây được gọi là tính tái sử dụng.
 Nhanh (Fast): Đây là điều không cần phải bàn cãi, nếu cần 5 phút
để thực thi một test case cách thủ công, có thể bạn cần chưa đầy
30s để thực thi cách tự động.
 Chi phí thấp (Cost Reduction): Nếu áp dụng kiểm thử tự động
đúng cách, chúng ta có thể tiết kiệm được rất nhiều chi phí, thời
gian và nhân lực. (Khi nào nên áp dụng kiểm thử tự động sẽ được
nói ở cuối bài.
Nhược điểm:
 Khó mở rộng, khó bảo trì (Poor scalability and maintainability):
Trong cùng một dự án, để mở rộng phạm vi cho kiểm thử tự động
là khó hơn nhiều so với kiểm thử cách thủ công. Số lượng công
việc phải làm để mở rộng phạm vi cho kiểm thử tự động là nhiều
hơn và khó hơn kiểm thử thủ công. Cũng vậy, để cập nhật một test
case thủ công, chúng ta chỉ cần mở ra và gõ, rất đơn giản. Nhưng
kiểm thử tự động lại không đơn giản như vậy, cập nhật hay chỉnh
sửa yêu cầu rất nhiều công việc như debug, thay đổi dữ liệu đầu
vào, và cập nhật code mới.
 Khả năng bao phủ thấp(Low coverage): Chính vì việc khó ứng
dụng, khó mở rộng, cũng như đòi hỏi quá nhiều kỷ năng lập trình
nên độ bao phủ của kiểm thử tự động khá thấp (xét trên góc nhìn
toàn dự án).
 Vấn đề công cụ và nhân lực (Technology vs. people issues): Cho
đến nay công cụ hỗ trợ kiểm thử tự động đã có những bước phát
triển mạnh mẽ, chúng ta có các công cụ rất tốt như QTP,
Selenium, Test Complete, LoadTest, Jmeter, Visual Studio, …
Nhưng nhìn chung vẫn còn rất nhiều mặt hạn chế. Ngoài ra nguồn
nhân lực đạt yêu cầu cũng không nhiều.
22
1.5. Quy trình kiểm thử tự động
Bảng sau mô tả rõ hơn các bước thực hiện kiểm thử tự động :
STT Các bước thực hiện Mô tả
1 Tạo kịch bản kiểm thử
Giai đoạn này dùng các
công cụ kiểm thử để ghi
lại các thao tác lên phần
mềm cần kiểm tra và tự
động sinh ra kịch bản
kiểm thử.
2
Chỉnh sửa kịch bản kiểm
thử
Chỉnh sửa để kịch bản
thực hiện kiểm tra theo
đúng yêu cầu đặt ra. Cụ
thể, làm theo trường hợp
kiểm thử cần thực hiện.
3 Chạy kịch bản kiểm thư
Kiểm tra phần mềm có
đưa ra đúng kết quả mong
muốn không.
4 Đánh giá kết quả
Đánh gia sau khi chạy
kịch bản kiểm thử.
23
2. Một số công cụ kiểm thử tự động Website
Có rất nhiều các công cụ được dùng để kiểm thử Website: Auto
Testing Web Application, Selenium IDE, Qicktest professional(QTP),
Functionaly testing, Weblink Validator, Load runner, Jmeter…
Sau đâu chúng em xin giới thiệu một số công cụ tiêu biểu được dùng
để kiểm thử Website:
2.1. Công cụ kiểm thử chức năng
2.1.1. Công cụ Selenium IDE
2.1.1.1. Khái niệm
- Selenium IDE (Integrated development enviroment): là một
công cụ cho phép ghi (record) và phát lại một test script, đây là
một add-on hỗ trợ FireFox. Chúng ta chỉ có thể record trên
trình duyệt FireFox nhưng bù lại nó có thể playback trên các
trình duyệt khác như IE, Chrome…
2.1.1.2. Ưu và nhược điểm của Selenium
 Ưu điểm
 Là công cụ mã nguồn mở.
 Đơn giản, dễ cài đặt, dễ làm việc.
 Sử dụng miễn phí.
 Dễ dàng ghi và phát lại các thao tác của người dùng với
trình duyệt.
 Các lựa chọn trường thông minh sẽ sử dụng ID, name
hoặc Xpath khi cần thiết.
 Tự động hoàn chỉnh cho tất cả các lệnh Selenium
thường gặp.Gỡ lỗi và thiết lập các điểm dừng.
 Lưu các kiểm thử như là với các định dạng khác nhau
(Ví dụ: HTML, PHP…).Hỗ trợ các tệp tin selenium
user-extensions.jsDễ dàng điểu chỉnh thông qua các
plugin.
 Nhược điểm
 Không thể đảm bảo bất kỳ add-in nào được yêu cầu nếu
selenium không thể nhận ra các đối tượng.
 Hỗ trợ được cung cấp cho Selenium là rất ít.
24
2.1.1.3. Cài đặt Selenium IDE
 Bước1: Mở trang chủ của
selenium http://seleniumhq.org/download/
 Bước 2: Cài đặt selenium IDE giống như cài đặt một plugin
trên trình duyệt Firefox
 Click vào link 2.5.0 (chỉ số phiên bản này có thể thay đổi theo
thời gian) nó sẽ bật ra cửa sổ. Software Installation như hình
dưới và chờ đợi trong vài giây sau đó click vào nút Install Now
cạnh nút Cancel.
 Bước 3: Khởi động lại trình duyệt Firefox
 Bước 4: Lần đầu khởi động Selenium IDE. Click vào icon
Selenium trên menu Bar của firefox giao diện selenium IDE sẽ
hiển thị như hình bên dưới:
25
2.1.1.4. Tính năng của Selenium IDE
- Base URL là nơi lưu trữ homepage của ứng dụng web
- Test Case list liệt kê tất cả test case có trong test suite
- Fast…Slow xác định tốc độ execute một test case
- Play entity test suite thực thi tất cả test case chúng ta đang mở
- Play current test case thực thi test case đang được mở
- Pause/Resume: Tạm ngưng/Tiếp tục thực thi test case đang
chạy
- Step: thực thi từng bước một trong test case. Chỉ có tác dụng
khi test case đang tạm ngưng
- Apply Rollup Rules: Chức năng đặc biệt cho phép chúng ta
nhóm nhiều action nhỏ thành một action lớn
- Record Sao chép lại hành động của chúng ta và ghi ra danh
sách action.
- Table/Source danh sách các action trong test case
- Command danh sách các action mà Selenium IDE đang hỗ trợ
- Target định nghĩa control mà chúng ta đang tương tác.
- Value dữ liệu test
- Log thông tin về action đang được thực thi
- Reference hướng dẫn sử dụng action đang được chọn
- UI-Element and Rollup được sử dụng ở mức advance, khi mà
chúng ta tự thiết kế các nhận diện control hay gom nhóm action
Ứng dụng test trang web http://bankatmhaui.somee.com/như sau:
- Mở trang ATM chạy lên
- Nhập mã tài khoản
- Xem thông báo lỗi.
Công cụ kiểm thử hiệu năng
2.1.2. Công cụ Jmeter Apache Jmeter
2.1.2.1. Khái niệm
Jmeter Apache Jmeter là một ứng dụng mã nguồn mở, phát triển hoàn
toàn trên Java, được thiết kế để kiểm thử ứng dụng web. Ứng dụng được
sử dụng để kiểm tra hiệu năng cả tĩnh và động (files, Servlets, Perl,
scripts, Java Objects, Data Bases and Queries, FTP Servers …)
2.1.2.2. Ưu điểm và một số đặc điểm
26
Dưới đây là hình biểu diện giao diện chính của công cụ:
 Kiểm tra tải và kiểm tra hiệu năng theo nhiều kiểu khác nhau: Web – HTTP,
HTTPS, SOAP, Database via JDBC, LDAP, JMS, Mail – POP3(S) and
IMAP(S).
 Rất nhẹ, Không cần cài đặt, miễn phí.
 Nền tảng xử lý đa luồng cho phép mô phỏng nhiều mẫu bởi nhiều thread của
các chức năng khác nhau trên các thread group khác nhau
 Dễ dàng thêm các plugin và tạo các báo cáo phù hợp yêu cầu.
 Nhược điểmĐược hỗ trợ mạnh bởi cộng đồng open source.
 Sun’s JRE phải được cài đặt.
 Chỉ sử dụng được với ứng dụng web.
 Kết quả Stress testing có thể khó xác định chính xác.
 Khó khăn khi thực hiện các kịch bản kiểm thử phức tạp.
 Khó thực hiện Recording b.Load runner Load Runner là sản phẩm của
Hewlett-Packard. Load Runner chia làm 3 thành phần:
 Virtual User Generator: cho phép xác định hành động của người dùng thực
hiện trong ứng dụng.
 Controller: cho phép tạo các script và chạy thông qua một lịch đặt sẵn.
 Results and Analysis: cho phép tổng hợp kết quả và phân tích chi tiết kết quả
kiểm thử.
Ưu điểm:
- Không cần cài đặt ở trên máy chủ của ứng dụng cần kiểm tra.
27
- Sử dụng ngôn ngữ Ansi C là ngôn ngữ lập trình mặc định.
- Khả năng giám sát và phân tích tốt, với các biểu đồ dễ hiểu.
- Hỗ trợ tất cả các giao thức.
- Dễ dàng Recording và tạo các script
Nhược điểm:
- Tài liệu hướng dẫn kĩ càng và chi tiết.
- Tốn chi phí để mua bản quyền.
- Kích cỡ file cài đặt rất lớn, chiếm nhiều phần cứng, thích hợp trên
Windows.
- Giới hạn số user có thể chạy.
PHẦN V. TỔNG KẾT
Trong bài tập này, chúng em xin giới thiệu về kiểm thử Website. Qua đấy,
chúng em cũng đã làm rõ được một rất vấn đề rất quý báu và bổ ích cho thực
tế cũng như môn đảm bảo chất lượng phần mềm. Chúng em hiểu được như
thế nào là đảm bảo chất lượng phần mềm,kiểm thử phần mềm và kiểm thử
Website và một số phương pháp hữu ích để kiểm thử Website. Ngoài ra thì
chúng em cũng đã giới thiệu được một số các công cụ kiểm thử ứng dụng
Web với nhứng tính năng, ưu điểm nổi bật và các mặt hạn chế chảu từng
công cụ. Qua đây , chúng em cũng giúp cho mọi người lựa chọn được công
cụ kiểm thử, đặc biệt là kiểm thử Website cho phù hợp với từng project của
mình. Một lần nữa, chúng mình xin cảm ơn thầy giáo và các bạn đã tạo điều
kiện để mình làm được nhưng điều trên.
Xin chân thành cảm ơn!
28
PHẦN IV. TÀI LIỆU THAM KHẢO
Để có được những kiến thức bổ ích này, nhóm chúng em đã không ngừng
tìm kiếm các tài liệu trân mạng như:
http://www.testingvn.com/viewtopic.php?f=11&t=17767
https://viblo.asia/NguyenThiHuyenCham/posts/d6BAMYV9Gnjz
https://viblo.asia/ThuMaiNguyen/posts/KAyQMpapG0Ek
http://www.cse.hcmut.edu.vn/~hiep/KiemthuPhanmem/LyThuyetViet/Chuong01.
pdf
http://dlib.ptit.edu.vn/bitstream/123456789/1246/1/BG_DambaoCLPM.pdf
http://forums.testervn.com/archive/index.php/t-1446.htm
http://www.testingvn.com/viewtopic.php?f=14&t=438&start
http://luanvan.co/luan-van/nghien-cuu-kiem-thu-hieu-nang-cua-ung-dung-web-49498/

Más contenido relacionado

La actualidad más candente

Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"Tú Cao
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMNguyễn Anh
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmNguyễn Anh
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinVõ Phúc
 
Phân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngPhân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngleemindinh
 
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website nataliej4
 
Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...
Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...
Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...Duc Dinh
 
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên nataliej4
 
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAGiải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAPopping Khiem - Funky Dance Crew PTIT
 
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...Vi Thái
 
Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế
Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế
Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế Nguyễn Anh
 
Hệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng onlineHệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng onlineHan Nguyen
 
Do an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tuDo an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tuThiênĐàng CôngDân
 
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNGPHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNGThùy Linh
 
Thiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sựThiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sựleemindinh
 

La actualidad más candente (20)

Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
 
Chuong 2. cnpm
Chuong 2. cnpmChuong 2. cnpm
Chuong 2. cnpm
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
 
Phân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngPhân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàng
 
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
 
Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...
Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...
Khóa luận tốt nghiệp Phân tích thiết kế hệ thống thông tin quản lý ký túc xá ...
 
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
 
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAGiải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
 
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
 
Báo cáo Quản lý dự án phần mềm PTIT
Báo cáo Quản lý dự án phần mềm PTITBáo cáo Quản lý dự án phần mềm PTIT
Báo cáo Quản lý dự án phần mềm PTIT
 
Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế
Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế
Tìm Hiểu Các Kỹ Thuật Kiểm Thử Phần Mềm và Một Số Ứng Dụng Trong Thực Tế
 
Kiem thu
Kiem thuKiem thu
Kiem thu
 
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOTĐề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
 
Đề tài: Quản lí Tour du lịch, HAY, 9đ
Đề tài: Quản lí Tour du lịch, HAY, 9đĐề tài: Quản lí Tour du lịch, HAY, 9đ
Đề tài: Quản lí Tour du lịch, HAY, 9đ
 
Hệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng onlineHệ thống quản lý bán hàng online
Hệ thống quản lý bán hàng online
 
Do an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tuDo an xay_dung_website_thuong_mai_dien_tu
Do an xay_dung_website_thuong_mai_dien_tu
 
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNGPHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
PHÂN TÍCH THIẾT KẾ HỆ THỐNG BÁN HÀNG QUA MẠNG
 
Thiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sựThiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sự
 

Destacado

Technology Wellness in the Nonprofit Workplace
Technology Wellness in the Nonprofit WorkplaceTechnology Wellness in the Nonprofit Workplace
Technology Wellness in the Nonprofit WorkplaceBeth Kanter
 
Trabajo resuelto humedal
Trabajo resuelto humedalTrabajo resuelto humedal
Trabajo resuelto humedalIngrith Rivera
 
Tài liệu CSS tiếng việt cơ bản
Tài liệu CSS tiếng việt cơ bảnTài liệu CSS tiếng việt cơ bản
Tài liệu CSS tiếng việt cơ bảnThuyet Nguyen
 
Prediksi 4 Ujian Nasional Kimia 2017
Prediksi 4 Ujian Nasional Kimia 2017Prediksi 4 Ujian Nasional Kimia 2017
Prediksi 4 Ujian Nasional Kimia 2017dasi anto
 
Prediksi 2 Ujian Nasional Kimia 2017
Prediksi 2 Ujian Nasional Kimia 2017Prediksi 2 Ujian Nasional Kimia 2017
Prediksi 2 Ujian Nasional Kimia 2017dasi anto
 
Cardiologia medicacion antiarritmica fallo_miocardico
Cardiologia   medicacion antiarritmica fallo_miocardicoCardiologia   medicacion antiarritmica fallo_miocardico
Cardiologia medicacion antiarritmica fallo_miocardicoGuillaume Michigan
 
Fin 351 full course latest 2106 november all discussion, quizes assignment an...
Fin 351 full course latest 2106 november all discussion, quizes assignment an...Fin 351 full course latest 2106 november all discussion, quizes assignment an...
Fin 351 full course latest 2106 november all discussion, quizes assignment an...lenasour
 
Seguridad, privacidad y medidas de prevención2
Seguridad, privacidad y medidas de prevención2Seguridad, privacidad y medidas de prevención2
Seguridad, privacidad y medidas de prevención2Arely Pliego
 
Giáo trình SQL server tiếng việt
Giáo trình SQL server tiếng việtGiáo trình SQL server tiếng việt
Giáo trình SQL server tiếng việtThuyet Nguyen
 

Destacado (16)

Technology Wellness in the Nonprofit Workplace
Technology Wellness in the Nonprofit WorkplaceTechnology Wellness in the Nonprofit Workplace
Technology Wellness in the Nonprofit Workplace
 
Man14380617 1
Man14380617 1Man14380617 1
Man14380617 1
 
Decreto 0000348 2015
Decreto 0000348 2015Decreto 0000348 2015
Decreto 0000348 2015
 
Trabajo resuelto humedal
Trabajo resuelto humedalTrabajo resuelto humedal
Trabajo resuelto humedal
 
Actividad 4
Actividad 4Actividad 4
Actividad 4
 
Tài liệu CSS tiếng việt cơ bản
Tài liệu CSS tiếng việt cơ bảnTài liệu CSS tiếng việt cơ bản
Tài liệu CSS tiếng việt cơ bản
 
Hiragana vietnamese
Hiragana vietnameseHiragana vietnamese
Hiragana vietnamese
 
DIÁRIO OFICIAL DE ILHÉUS DO DIA 16-03-2017
DIÁRIO OFICIAL DE ILHÉUS DO DIA 16-03-2017DIÁRIO OFICIAL DE ILHÉUS DO DIA 16-03-2017
DIÁRIO OFICIAL DE ILHÉUS DO DIA 16-03-2017
 
Woman14380617 1
Woman14380617 1Woman14380617 1
Woman14380617 1
 
Prediksi 4 Ujian Nasional Kimia 2017
Prediksi 4 Ujian Nasional Kimia 2017Prediksi 4 Ujian Nasional Kimia 2017
Prediksi 4 Ujian Nasional Kimia 2017
 
Prediksi 2 Ujian Nasional Kimia 2017
Prediksi 2 Ujian Nasional Kimia 2017Prediksi 2 Ujian Nasional Kimia 2017
Prediksi 2 Ujian Nasional Kimia 2017
 
Cardiologia medicacion antiarritmica fallo_miocardico
Cardiologia   medicacion antiarritmica fallo_miocardicoCardiologia   medicacion antiarritmica fallo_miocardico
Cardiologia medicacion antiarritmica fallo_miocardico
 
Fin 351 full course latest 2106 november all discussion, quizes assignment an...
Fin 351 full course latest 2106 november all discussion, quizes assignment an...Fin 351 full course latest 2106 november all discussion, quizes assignment an...
Fin 351 full course latest 2106 november all discussion, quizes assignment an...
 
Seguridad, privacidad y medidas de prevención2
Seguridad, privacidad y medidas de prevención2Seguridad, privacidad y medidas de prevención2
Seguridad, privacidad y medidas de prevención2
 
Farmacos en arritmias
Farmacos en arritmiasFarmacos en arritmias
Farmacos en arritmias
 
Giáo trình SQL server tiếng việt
Giáo trình SQL server tiếng việtGiáo trình SQL server tiếng việt
Giáo trình SQL server tiếng việt
 

Similar a Báo cáo môn đảm bảo chất lượng phần mềm

đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web siteđề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web sitejackjohn45
 
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.Nguyễn Anh
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMNguyễn Anh
 
Nguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềmNguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềmNgọc Khánh
 
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileVai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileMinh Tri Lam
 
Tailieu.vncty.com t ke-testcase
Tailieu.vncty.com   t ke-testcaseTailieu.vncty.com   t ke-testcase
Tailieu.vncty.com t ke-testcaseTrần Đức Anh
 
Effectivesoftwaretesting 131104102937-phpapp01
Effectivesoftwaretesting 131104102937-phpapp01Effectivesoftwaretesting 131104102937-phpapp01
Effectivesoftwaretesting 131104102937-phpapp01Thanh Danh
 
Cnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinhCnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinhKy Vo
 
Luận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng Web
Luận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng WebLuận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng Web
Luận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng WebViết thuê trọn gói ZALO 0934573149
 
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀMĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀMThanCoi20102202
 
123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf
123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf
123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdfDuongDo35
 
Danh gia chat luong san pham mem
Danh gia chat luong san pham memDanh gia chat luong san pham mem
Danh gia chat luong san pham memUDCNTT
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit Thanh Huong
 

Similar a Báo cáo môn đảm bảo chất lượng phần mềm (20)

đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web siteđề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
 
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
 
Chương 1.pdf
Chương 1.pdfChương 1.pdf
Chương 1.pdf
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
 
KIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.doc
KIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.docKIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.doc
KIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.doc
 
Nguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềmNguyên tắc cơ bản của kiểm thử phần mềm
Nguyên tắc cơ bản của kiểm thử phần mềm
 
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileVai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
 
Tailieu.vncty.com t ke-testcase
Tailieu.vncty.com   t ke-testcaseTailieu.vncty.com   t ke-testcase
Tailieu.vncty.com t ke-testcase
 
Effective software testing
Effective software testingEffective software testing
Effective software testing
 
Effectivesoftwaretesting 131104102937-phpapp01
Effectivesoftwaretesting 131104102937-phpapp01Effectivesoftwaretesting 131104102937-phpapp01
Effectivesoftwaretesting 131104102937-phpapp01
 
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình JavaĐề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
 
Cnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinhCnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinh
 
Đề tài: Xây dựng website nộp đồ án trực tuyến, 9đ
Đề tài: Xây dựng website nộp đồ án trực tuyến, 9đĐề tài: Xây dựng website nộp đồ án trực tuyến, 9đ
Đề tài: Xây dựng website nộp đồ án trực tuyến, 9đ
 
Luận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng Web
Luận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng WebLuận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng Web
Luận văn: Nghiên cứu ứng dụng công cụ Phpunit kiểm thử các ứng dụng Web
 
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀMĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
 
123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf
123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf
123doc-giai-ngan-hang-cong-nghe-phan-mem-ptit.pdf
 
Đề tài: Xây dựng website nộp đồ án trực tuyến, HAY
Đề tài: Xây dựng website nộp đồ án trực tuyến, HAYĐề tài: Xây dựng website nộp đồ án trực tuyến, HAY
Đề tài: Xây dựng website nộp đồ án trực tuyến, HAY
 
Danh gia chat luong san pham mem
Danh gia chat luong san pham memDanh gia chat luong san pham mem
Danh gia chat luong san pham mem
 
Luận văn: Nghiên cứu và ứng dụng mẫu thiết kế trong phương pháp hướng đối tượng
Luận văn: Nghiên cứu và ứng dụng mẫu thiết kế trong phương pháp hướng đối tượngLuận văn: Nghiên cứu và ứng dụng mẫu thiết kế trong phương pháp hướng đối tượng
Luận văn: Nghiên cứu và ứng dụng mẫu thiết kế trong phương pháp hướng đối tượng
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit
 

Más de Thuyet Nguyen

Học từ vấp ngã để từng bước thành công (Review.john c maxwell)
Học từ vấp ngã để từng bước thành công (Review.john c maxwell)Học từ vấp ngã để từng bước thành công (Review.john c maxwell)
Học từ vấp ngã để từng bước thành công (Review.john c maxwell)Thuyet Nguyen
 
All for Web development
All for Web developmentAll for Web development
All for Web developmentThuyet Nguyen
 
Giáo trình javascript
Giáo trình javascriptGiáo trình javascript
Giáo trình javascriptThuyet Nguyen
 
Lời từ chối hoàn hảo -- william ury
Lời từ chối hoàn hảo --  william uryLời từ chối hoàn hảo --  william ury
Lời từ chối hoàn hảo -- william uryThuyet Nguyen
 
tài liệu Mã nguồn mở Lap trình tren linux
tài liệu Mã nguồn mở  Lap trình tren linuxtài liệu Mã nguồn mở  Lap trình tren linux
tài liệu Mã nguồn mở Lap trình tren linuxThuyet Nguyen
 
tài liệu Mã nguồn mở Lap trình shells
tài liệu Mã nguồn mở  Lap trình shellstài liệu Mã nguồn mở  Lap trình shells
tài liệu Mã nguồn mở Lap trình shellsThuyet Nguyen
 
tài liệu Mã nguồn mở Ise linux102 9-4-12
tài liệu Mã nguồn mở  Ise linux102 9-4-12tài liệu Mã nguồn mở  Ise linux102 9-4-12
tài liệu Mã nguồn mở Ise linux102 9-4-12Thuyet Nguyen
 
tài liệu Mã nguồn mở Ise linux101 9-4-12
tài liệu Mã nguồn mở  Ise linux101 9-4-12tài liệu Mã nguồn mở  Ise linux101 9-4-12
tài liệu Mã nguồn mở Ise linux101 9-4-12Thuyet Nguyen
 
tài liệu Mã nguồn mở Bai 3 phan mem soan thao - vi
tài liệu Mã nguồn mở  Bai 3   phan mem soan thao - vitài liệu Mã nguồn mở  Bai 3   phan mem soan thao - vi
tài liệu Mã nguồn mở Bai 3 phan mem soan thao - viThuyet Nguyen
 
tài liệu Mã nguồn mở 17308 he dieu hanh ma nguon mo
tài liệu Mã nguồn mở  17308   he dieu hanh ma nguon motài liệu Mã nguồn mở  17308   he dieu hanh ma nguon mo
tài liệu Mã nguồn mở 17308 he dieu hanh ma nguon moThuyet Nguyen
 
tài liệu Mã nguồn mở 14 email
tài liệu Mã nguồn mở  14 emailtài liệu Mã nguồn mở  14 email
tài liệu Mã nguồn mở 14 emailThuyet Nguyen
 
tài liệu Mã nguồn mở 04 accounts-permissions
tài liệu Mã nguồn mở  04 accounts-permissionstài liệu Mã nguồn mở  04 accounts-permissions
tài liệu Mã nguồn mở 04 accounts-permissionsThuyet Nguyen
 
tài liệu Mã nguồn mở 03 he-thong-tep-linux-14
tài liệu Mã nguồn mở  03 he-thong-tep-linux-14tài liệu Mã nguồn mở  03 he-thong-tep-linux-14
tài liệu Mã nguồn mở 03 he-thong-tep-linux-14Thuyet Nguyen
 
tài liệu Mã nguồn mở 02 sudung
tài liệu Mã nguồn mở  02 sudungtài liệu Mã nguồn mở  02 sudung
tài liệu Mã nguồn mở 02 sudungThuyet Nguyen
 
Báo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởBáo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởThuyet Nguyen
 
Báo cáo môn mô hình hóa
Báo cáo môn mô hình hóaBáo cáo môn mô hình hóa
Báo cáo môn mô hình hóaThuyet Nguyen
 
Báo cáo môn phát triển phần mềm hướng cấu phần
Báo cáo môn phát triển phần mềm hướng cấu phầnBáo cáo môn phát triển phần mềm hướng cấu phần
Báo cáo môn phát triển phần mềm hướng cấu phầnThuyet Nguyen
 

Más de Thuyet Nguyen (20)

Học từ vấp ngã để từng bước thành công (Review.john c maxwell)
Học từ vấp ngã để từng bước thành công (Review.john c maxwell)Học từ vấp ngã để từng bước thành công (Review.john c maxwell)
Học từ vấp ngã để từng bước thành công (Review.john c maxwell)
 
Katakana vietnamese
Katakana vietnameseKatakana vietnamese
Katakana vietnamese
 
All for Web development
All for Web developmentAll for Web development
All for Web development
 
Giáo trình javascript
Giáo trình javascriptGiáo trình javascript
Giáo trình javascript
 
Bài tập HTML/CSS
Bài tập HTML/CSSBài tập HTML/CSS
Bài tập HTML/CSS
 
Lời từ chối hoàn hảo -- william ury
Lời từ chối hoàn hảo --  william uryLời từ chối hoàn hảo --  william ury
Lời từ chối hoàn hảo -- william ury
 
Thuc hanh 13
Thuc hanh  13Thuc hanh  13
Thuc hanh 13
 
tài liệu Mã nguồn mở Lap trình tren linux
tài liệu Mã nguồn mở  Lap trình tren linuxtài liệu Mã nguồn mở  Lap trình tren linux
tài liệu Mã nguồn mở Lap trình tren linux
 
tài liệu Mã nguồn mở Lap trình shells
tài liệu Mã nguồn mở  Lap trình shellstài liệu Mã nguồn mở  Lap trình shells
tài liệu Mã nguồn mở Lap trình shells
 
tài liệu Mã nguồn mở Ise linux102 9-4-12
tài liệu Mã nguồn mở  Ise linux102 9-4-12tài liệu Mã nguồn mở  Ise linux102 9-4-12
tài liệu Mã nguồn mở Ise linux102 9-4-12
 
tài liệu Mã nguồn mở Ise linux101 9-4-12
tài liệu Mã nguồn mở  Ise linux101 9-4-12tài liệu Mã nguồn mở  Ise linux101 9-4-12
tài liệu Mã nguồn mở Ise linux101 9-4-12
 
tài liệu Mã nguồn mở Bai 3 phan mem soan thao - vi
tài liệu Mã nguồn mở  Bai 3   phan mem soan thao - vitài liệu Mã nguồn mở  Bai 3   phan mem soan thao - vi
tài liệu Mã nguồn mở Bai 3 phan mem soan thao - vi
 
tài liệu Mã nguồn mở 17308 he dieu hanh ma nguon mo
tài liệu Mã nguồn mở  17308   he dieu hanh ma nguon motài liệu Mã nguồn mở  17308   he dieu hanh ma nguon mo
tài liệu Mã nguồn mở 17308 he dieu hanh ma nguon mo
 
tài liệu Mã nguồn mở 14 email
tài liệu Mã nguồn mở  14 emailtài liệu Mã nguồn mở  14 email
tài liệu Mã nguồn mở 14 email
 
tài liệu Mã nguồn mở 04 accounts-permissions
tài liệu Mã nguồn mở  04 accounts-permissionstài liệu Mã nguồn mở  04 accounts-permissions
tài liệu Mã nguồn mở 04 accounts-permissions
 
tài liệu Mã nguồn mở 03 he-thong-tep-linux-14
tài liệu Mã nguồn mở  03 he-thong-tep-linux-14tài liệu Mã nguồn mở  03 he-thong-tep-linux-14
tài liệu Mã nguồn mở 03 he-thong-tep-linux-14
 
tài liệu Mã nguồn mở 02 sudung
tài liệu Mã nguồn mở  02 sudungtài liệu Mã nguồn mở  02 sudung
tài liệu Mã nguồn mở 02 sudung
 
Báo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởBáo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mở
 
Báo cáo môn mô hình hóa
Báo cáo môn mô hình hóaBáo cáo môn mô hình hóa
Báo cáo môn mô hình hóa
 
Báo cáo môn phát triển phần mềm hướng cấu phần
Báo cáo môn phát triển phần mềm hướng cấu phầnBáo cáo môn phát triển phần mềm hướng cấu phần
Báo cáo môn phát triển phần mềm hướng cấu phần
 

Báo cáo môn đảm bảo chất lượng phần mềm

  • 1. 1 LỜI NÓI ĐẦU Trong thời buổi công nghệ thông tin có mặt khắp các lĩnh vực, các tổ chức cá nhân, doanh nghiệp ngày càng phát triển mạnh mẽ. Nhu cầu sử dụng các phần mềm để thực hiện các công việc được nhanh chóng, chính xác và hiệu quả ngày càng tăng. Việc đảm bảo chất lượng phần mềm ngày càng trở lên quan trọng. Bên cạnh các phần mềm truyền thống, người ta còn sử dụng các phần mềm chạy trên nền web. Chính vì điều đó website ngày càng được sử dụng rộng rãi. Ngoài ra, để đáp ứng nhu cầu chia sẻ thông tin , cũng như truyền đạt thông tin một cách nhanh chóng và tiếp cận với nhiều người nhất thì website chính là phương tiện có khả năng làm tốt nhất công việc đó. Ngày nay, các website được phát triển một cách cực kỳ mạnh mẽ và nhanh chóng. Tuy nhiên, đi cùng với sự phát triển vượt bậc và tiện lợi như thế thì cũng có không ít các trở ngại dẫn đến việc website không được hoạt động một cách hiệu quả nhất. Do đó, cần thiết phải kiểm thử và đảm bảo chất lượng của website. Với sự hướng dẫn của thầy nhóm chúng em thực hiện đề tài “Kiểm thử phần mềm và thực hiện kiểm thử trên 1 bài toán cụ thể ” và thực hiện trên một sản phẩm website đã được xây dựng nhưng chưa hoàn thiện , cũng như gặp rất nhiều thiếu sót trong quá trình phát triển sản phẩm. Do hạn chế về mặt kiến thức cho nên không thể tránh khỏi sai sót trong quá trình làm báo cáo, rất mong được sự giúp đỡ và chỉ dạy của thầy và các bạn. Chúng em xin chân thành cảm ơn!
  • 2. 2 MỤC LỤC Phần I: PHẦN MỞ ĐẦU.............................................................................................................4 1. Lý do chọn đề tài........................................................................................................4 2. Mục đích......................................................................................................................4 PHẦN II. TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM .......................................................5 1. Các khái niệm cơ bản.................................................................................................5 2. Các mục tiêu chính của kiểm thử phần mềm..........................................................5 3. Các mức độ của kiểm thử phần mềm. .....................................................................5 4. Testcase .......................................................................................................................8 5. Các nguyên tắc cơ bản về kiểm thử .........................................................................8 6. Quy trình kiểm thử phần mềm................................................................................10 6.1. Tester nằm ở quy trình nào trong phát triển phần mềm? ....................................10 6.2. Quy trình kiểm thử phần mềm................................................................................11 7. Phân biệt QA và QC ................................................................................................12 Phần III: KIỂM THỬ WEBSITE .........................................Error! Bookmark not defined. 1. Thế nào là kiểm thử Website? ................................................................................13 1.1. Khái quát ...................................................................................................................13 1.2. Thành phần bên trong trang Web...........................................................................14 1.3. Tại sao cần kiểm thử Website?...............................................................................14 2. Những phương pháp kỹ thuật khi kiểm thử Website..........................................15 2.1. Kiểm thử giao diện trang Web (Testing Web page interface)............................15 2.2. Kiểm thử chức năng ( functional testing)..............................................................16 2.2.1.Kiểm thử liên kết (links)........................................................................................16 2.2.2.Kiểm thử định dạng sử dụng trong trang Web ...................................................16 2.3. Kiểm thử hiệu suất (Performance testing).............................................................18 2.9. Kiểm thử hướng phát triển trang Web (Test development)Error! Bookmark not def
  • 3. 3 3. Ví dụ nhỏ viết testcase kiểm thử trang Web ATM .............................................18 PHẦN IV. MỘT SỐ CÔNG CỤ KIỂM THỬ WEBSITE ....................................................19 1. Khái quát về kiểm thử tự động ...............................................................................19 1.1. Khái quát ...................................................................................................................19 1.2. Kiểm thử tự động là gì?...........................................................................................20 1.3. Tại sao cần kiểm thử tự động?................................................................................20 1.4. Ưu và nhược điểm của kiểm thử tự động..............................................................20 2. Một số công cụ kiểm thử tự động Website ...........................................................23 2.1. Công cụ kiểm thử chức năng ..................................................................................23 2.1.1.Công cụ SeleniumIDE.............................................................................................23 2.1.2.Công cụ Quicktestprofessional ...........................Error! Bookmark not defined. 2.2. Công cụ kiểm thử hiệu năng ...................................................................................25 2.2.1.Công cụ Jmeter ApacheJmeter...............................................................................25 2.2.2.Công cụ Mercury LoadRunner............................Error! Bookmark not defined. PHẦN V. TỔNG KẾT...............................................................................................................27 PHẦN VI. TÀI LIỆU THAM KHẢO .....................................................................................28
  • 4. 4 PHẦN I: PHẦN MỞ ĐẦU 1. Lý do chọn đề tài Website ra đời đã mở ra hướng mới cho việc phát triển các ứng dụng trên Internet. Website kết hợp sử dụng nhiều công nghệ khác nhau, cho phép hai ứng dụng dùng chung một ngôn ngữ, độc lập hệ điều hành trao đổi được với nhau thông qua môi trường mạng. Điểm khác biệt lớn nhất và đặc trưng nhất của một trang Web là có thể liên kết được với các trang Web khác, và các trang Web khác ấy lại liên kết với rất nhiều các trang Web khác nữa tạo thành một mạng lưới liên kết khổng lồ trên toàn thế giới. Tuy nhiên, nó mang đến cho các nhà kiểm thử và phát triển phần mềm nhiều thách thức. Sự phức tạp, tính linh hoạt và phụ thuộc các ứng dụng vào một dịch vụ, thiếu thử nghiệm là một trong những thách thức mà các nhà phát triển Website phải đối mặt. Vì vậy, nhu cầu kiểm thử Website ngày càng tăng lên và trở thành thiết yếu đối với dự án phần mềm. Các lỗi là nguyên nhân chính của năng suất thấp và là kết quả của những sai xót trong suốt vòng đời phát triển của phần mềm. Những lỗi này bao gồm mội lỗi thực thi, các lỗi bảo mật, thực hiện sai chức năng, lỗi sụp đổ hệ thống… càng sớm phát hiện vấn đề thì càng dễ sửa lỗi và giảm thời gian, chi phí cho phần mềm. Nói chung, các nhà phát triển, nhà nghiên cứu, những chuyên gia dựa vào thực nghiệm kiểm tra tính đảm bảo các chức năng dịch vụ, độ tin cậy của Website, cung cấp giải pháp kiểm thử tự động. Ngoài ra, khả năng tương tác, an ninh và các vấn đề liên quan đều có ảnh hưởng đến cả nhà sản xuất và người sử dụng. 2. Mục đích Mục đích lựa chọn đề tài của chúng em là tìm hiểu những kiến thức tổng quan về phần mềm, có thể viết testcase và kiểm thử Website và tìm hiểu về các công cụ kiểm thử tự động để giúp cho việc kiểm thử nhanh chóng và hiệu quả hơn. Hơn thế nữa, thực hiện đề tài này sẽ giúp cho chúng em có những kiến thực bổ ích để phục vụ cho công việc trong tương lai.
  • 5. 5 PHẦN II. TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1. Các khái niệm cơ bản Kiểm thử phần mềm là quá trình khảo sát một hệ thống hay thành phần dưới những điều kiện xác định, quan sát và ghi lại các kết quả và đánh giá một khía cạnh nào đó của hệ thống hay thành phần đó. (Theo Thuật ngữ kỹ nghệ phần mềm-IEEE Standard Glossary of Software Engineering Terminology). Kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm lỗi.(Theo Art of Software Testing” – Nghệ thuật kiểm thử phần mềm).  Có thể định nghĩa một cách tổng quát là: Kiểm thử phần mềm là quá trình thực hiện hay đánh giá một sản phẩm phần mềm hay một dịch vụ phần mềm bằng phương pháp thủ công hoặc các công cụ hỗ trợ tự động để kiểm tra và xác mình rằng nó đáp ứng yêu cầu quy định. 2. Các mục tiêu chính của kiểm thử phần mềm - Phát hiện càng nhiều lỗi càng tốt trong thời gian kiểm thử xác định trước. - Chứng minh rằng sản phẩm phần mềm phù hợp với các đặc tả yêu cầu của nó. - Xác thực chất lượng kiểm thử phần mềm đã dùng chi phí và nỗ lực tối thiểu. - Tạo các testcase chất lượng cao, thực hiện kiểm thử hiệu quả và tạo ra các báo cáo vấn đề đúng và hữu dụng. 3. Các mức độ của kiểm thử phần mềm.  Test Unit (Test mức đơn vị): Là kiểu test kiểm tra code xem liệu chức năng nó đang thực hiện có đúng cách hay không theo như yêu cầu.  Test Shakeout(Test cấu hình) : Kiểu test này cơ bản là kiểu test về khả năng của hệ thống mạng, kết nối dữ liệu và sự tương tác của các module. Thông thường thì kiểu test này là do nhóm quản lý cấu hình chuẩn bị thiết lập các môi trường test thực sự. Họ cũng test xem liệu các thành phần chính của phần mềm có hoạt động bất thường không. Kiểu test này thực hiện trước khi tiến hành thực hiện trong môi trường test. Sau khi test shakeout, bước kế tiếp là test smoke (kiểu test được thực hiện bởi tester sau khi biên dịch, được tiến hành trong môi trường test).
  • 6. 6  Test smoke (Test sơ lượt): Là kiểu test được thực hiện khi phần code được biên dịch mới chỉ được chuẩn bị tiến hành trong môi trường test. Kiểu này cơ bản giống như để kiểm tra đại khái để chắc rằng các chức năng chính có bị bất thường không? Nó mở đầu cho quá trình test bởi Tester QA. Sau khi test smoke, các tester sẽ thực hiện test khả năng thực hiện của các chức năng.  Functional testting (Kiểm thử chức năng): Qui trình cố gắng tìm ra các khác biệt giữa đặc tả bên ngoài của phần mềm và thực tế mà phần mềm cung cấp.  Đặc tả bên ngoài của phần mềm là đặc tả chính xác về hành vi của phần mềm theo góc nhìn của người dùng thấy. Sử dụng kiểm thử hộp đen để kiểm thử chức năng.  Kiểm thử chức năng là một nhóm kiểm thử rất rộng bao gồm FAST, TOFT, kiểm thử biên, kiểm thử dạng khám phá và các dạng khác.  FAST: Mỗi đầu vào và điều khiển,duyệt các hoạt động đúng như mong đợi?  TOFT: Ứng dụng có thể thực hiện các chức năng hữu ích như mong đợi?  Kiểm thử biên: Điều gì xảy ra khi sử dụng các giá trị biên?  Kiểm thử dạng khám phá: Kinh nghiệm nói lên điều gì về các vùng tiềm ẩn vấn đề trong ứng dụng? Kiểm thử dạng khám phá bao gồm việc nghiên cứu, lập kế hoạch, và thực thi kiểm thử một cách đồng thời. Tấn công phần mềm: Tại sao phần mềm bị lỗi? làm thế nào bạn có thể biến những bài học kinh nghiệm thành các hoạt động tương tác nhằm công kích và phát hiện các lỗi phần mềm?  Test Tích hợp (Integration testing) : là kiểu test kiểm tra liệu tất cả các module là được kết hợp hoặc chưa kết hợp lại cùng với nhau thực hiện công việc có đạt được kết quả như tài liệu yêu cầu đã được xác định (do mỗi lập trình viên thực hiện trên các module khác nhau. Khi họ hoàn thành đoạn code của họ, nhóm quản lý cấu hình ráp chúng lại với nhau và chuẩn bị biên dịch. Các tester cần chắc rằng các module này bây giờ đã được kết hợp và làm việc theo như yêu cầu – tức là phải test theo như yêu cầu).  Test hồi quy (Regression testing) : Khi một chức năng mới được thêm vào phần mềm, chúng ta cần chắc chắn rằng phần chức năng mới được thêm vào không phá hỏng các phần khác
  • 7. 7 của ứng dụng. Hoặc khi lỗi đã được chỉnh sửa, chúng ta cần chắc chắn rằng lỗi chỉnh sửa không phá hỏng các phần khác trong ứng dụng. Để test điều này chúng ta thực hiện kiểu test lặp đi lặp lại gọi là test hồi quy.  Test hệ thống (System testing): Khi tester hoàn thành công việc test (các tester test ứng dụng trong các môi trường test, nghĩa là họ test với dữ liệu test, không test trên dữ liệu thật), ứng dụng (phần mềm) phải được test trên môi trường thật. Nó nghĩa là gì, tức là kể từ khi các tester test nó trong môi trường test với dữ liệu test, chúng ta phải chắc chắn rằng ứng dụng làm việc tốt trong môi trường thật với dữ liệu thật. Trong môi trường test, một vài điều không thể test hoặc thao tác giả. Tất cả sẽ khác nhau và cơ sở dữ liệu khác nhau, một số thao tác có thể không làm việc như mong đợi khi ứng dụng được chuyển từ môi trường test sang môi trường sản phẩm (test enviroment to production environment).  Test tải dữ liệu(Load testing): Là kiểu test kiểm tra thời gian đáp lại người dùng với ứng số lượng người dùng bất kỳ trong một ngữ cảnh nào đó của cùng một ứng dụng tại cùng một thời điểm.  Test tải trọng (Stress testing) : Là kiểu test kiểm tra thời gian đáp lại người dùng với ứng số lượng người dùng bất kỳ trong nhiều ngữ cảnh khác nhau của cùng một ứng dụng tại cùng một thời điểm.  Test hiệu suất (Performance testing) : Trong loại test này, ứng dụng được test dựa vào sức nặng như sự phức tạp của giá trị, độ dài của đầu vào, độ dài của các câu truy vấn…Loại test này kiểm tra bớt phần tải (stress/load) của ứng dụng có thể được chắc chắn hơn.  Test chấp nhận từ người sử dụng (User acceptance testing): Trong kiểu test này, phần mềm sẽ được thực hiện kiểm tra từ người dùng để tìm ra nếu phần mềm phù hợp với sự mong đợi của người dùng và thực hiện đúng như mong đợi. Trong giai đoạn test này, tester có thể cũng thực hiện hoặc khách hàng có các tester của riêng họ để thực hiện.  Test hộp đen (Black box testing) : Là kiểu test mà Tester thực hiện test không chú ý gì đến code (hoặc là một hình thức test mà ứng dụng đang test được xem như một hộp đen và hành vi
  • 8. 8 bên trong của chương trình hoàn toàn được bỏ qua. Việc test xảy ra dựa trên các đặc tả bên ngoài. Cũng hiểu như test hành vi, chỉ hành vi bên ngoài của ứng dụng là được đánh giá và phân tích).  Test hộp trắng (White box testing) : Là test mà các tester tìm kiếm lỗi bên trong code.  Test Alpha (Alpha testing) :Trong loại test này, các người dùng được mời đến điểm tập trung đề xuất ý kiến, nơi mà họ sẽ sử dụng chương trình và người phát triển chú ý mỗi thông tin liên quan hoặc hành động được đặt ra bởi người dùng. Bất kỳ hành vi bất thường nào của hệ thống cũng phải được ghi nhận và chỉnh sửa bởi người phát triển.  Test Beta (Beta testing) : Trong loại test này, phần mềm được phân bổ như một phiên bản thử nghiệm (sử dụng thử) để người dùng kiểm tra ứng dụng tại nơi làm việc của họ. Người sử dụng sẽ quan sát phần mềm, trong trường hợp nếu có bất kỳ lỗi xảy ra thì nó được báo cáo đến người phát triển. 4. Testcase Mỗi testcase chứa các thông tin cần thiết để kiểm thử thành phần phần mềm theo 1 mục tiêu xác định. Thường testcase gồm bộ 3 thông tin {tập dữ liệu đầu vào, trạng thái của thành phần phần mềm, tập kết quả kỳ vọng} Tập dữ liệu đầu vào (Input): gồm các giá trị dữ liệu cần thiết để thành phần phầm mềm dùng và xử lý. Tập kết quả kỳ vọng là kết quả mong muốn sau khi thành phần phần mềm xử lý dữ liệu nhập. Tập các testcase : tập hợp các testcase mà ta có ý định dùng để kiểm thử thành phần phần mềm để minh chứng rằng các ca kiểm thử có đúng các hành vi mong muốn. Các phương pháp thiết kế testcase Bất kỳ sản phẩm kỹ thuật nào (phần mềm không phải là ngoại lệ) đều có thể được kiểm thử bởi 1 trong 2 cách :  Test hộp đen :Là kiểu test mà Tester thực hiện test không chú ý gì đến code (hoặc là một hình thức test mà ứng dụng đang test được xem như một hộp đen và hành vi bên trong của chương trình hoàn toàn được bỏ qua. Việc test xảy ra dựa trên các đặc tả bên ngoài. Cũng hiểu như test hành vi, chỉ hành vi bên ngoài của ứng dụng là được đánh giá và phân tích).  Test hộp trắng : Là test mà các tester tìm kiếm lỗi bên trong code 5. Các nguyên tắc cơ bản về kiểm thử
  • 9. 9 Thông tin thiết yếu của mỗi testcase là kết quả hay dữ liệu xuất kỳ vọng. Nếu kết quả kỳ vọng của testcase không được định nghĩa rõ ràng, người ta sẽ giải thích kết quả sai (plausible) thành kết quả đúng bởi vì hiện tượng “the eye seeing what it wants to see.” => 1 test case phải chứa 2 thành phần thiết yếu : ƒ Đặc tả về điều kiện dữ liệu nhập. Đặc tả chính xác về kết quả đúng của chương trình tương ứng với dữ liệu nhập. Việc kiểm thử đòi hỏi tính độc lập. Chương trình có thể chứa các lỗi do lập trình viên hiểu sai về đặc tả/phát biểu vấn đề. Tổ chức lập trình không nên kiểm thử các chương trình của tổ chức mình viết. ƒ Thanh tra 1 cách xuyên suốt các kết quả kiểm thử. Phải thiết kế đủ các test case cho cả 2 trường hợp : dữ liệu đầu vào hợp lệ và dữ liệu đầu vào không hợp lệ và chờ đợi. Xem xét chương trình xem nó không thực hiện những điều mong muốn, xem nó có làm những điều không mong muốn ? Không nên lập kế hoạch nỗ lực kiểm thử dựa trên giả định ngầm rằng phần mềm không có lỗi. Kiểm thử là 1 tác vụ rất thách thức đòi hỏi sự sáng tạo và trí tuệ.
  • 10. 10 6. Quy trình kiểm thử phần mềm 6.1. Tester nằm ở quy trình nào trong phát triển phần mềm? Người thực hiện Trình tự công việc Ban giám đốc Trưởng dự án Trưởng dự án Trưởng dự án Trưởng dự án Đội dự án Đội dự án Trương dự án QLDA QA Quyết định khởi động dự án. Thu thập thông tin dự án Phân công thực hiện Test Lập kế hoạch dự án Phân tích thiết kế Lập trình Chuyển giao
  • 11. 11 6.2. Quy trình kiểm thử phần mềm STT Người thực hiện Trình tự công việc 1 Trưởng dự án Lập kế hoạch test 2 Đội dự án Cài đặt, chuẩn bị test 3 Đội dự án Unit Test (test đơn vị) 4 Đội dự án, Tester Module Test (test module) 5 Đội Test IntergrationTest (test tích hợp) 6 Đội Test System Test (test hệ thống) 7 Trưởng dự án Xem xét, đánh giá kết quả Test 8 Trưởng dự án Ban giám đốc Tổng hợp, báo cáo. Báo cáo
  • 12. 12 7. Phân biệt QA và QC Nói về QLDA, Hệ thống QLCL bao gồm 2 phần chính là QC & QA. QA (Quality Assurance) QC (Quality Control) Những kế hoạch, hoạt động mang tính hệ thống nhằm bảo đảm rằng quá trình sản xuất sẽ tạo ra những sản phẩm có chất lượng. Những hoạt động, những kỹ thuật nhằm bảo đảm chất lượng sản phẩm. Các hoạt động quản lý quy trình QC thực hiện, đảm bảo QC thực hiện đúng Các hoạt động kiểm thử nhằm phát hiện lỗi và sửa lỗi. Ví dụ: - Đảm bảo chất lượng - Định nghĩa tiến trình - Chọn lựa công cụ - Huấn luyện Ví dụ: - Kiểm duyệt - Kiểm thử - Thanh tra - Kiểm tra lại
  • 13. 13 PHẦN III. KIỂM THỬ WEBSITE 1. Thế nào là kiểm thử Website? 1.1. Khái quát Kiểm thử Website là một phần cả kiểm thử phần mềm. Vì vậy, các công cụ kiểm thử cho phần mềm cũng sẽ được ứng dụng để kiểm thử Website. Tuy nhiên, người kiểm thử không được áp dụng cứng nhắc những phương pháp đó mà cần linh hoạt, biến nó thành kiểm thử Website một cách thông minh hơn. . Kiểm thử là công việc quan trọng đánh giá chất lượng của một sản phẩm và Web cũng không ngoại lệ. Các phương pháp kiểm thử tập trung vào đánh giá các chức năng yêu cầu. Tuy nhiên, không thể nào tập trung vào được hết các chức năng yêu cầu. Bởi có rất nhiều chức năng quan trọng cho người sử dụng như là: tính hiệu quả, tính dễ sử dụng, độ tin cậy, tính bảo mật… Những yêu cầu và mong đợi của người sử dụng là những vấn đề hay gặp phải và đòi hỏi cần phải thay đổi trong suốt quá trình ta xây dựng một trang Web. Vì thế , cần thiết phải phát triển một chiến lược hiệu quả cho việc kiểm thử mà có thể bao quát được giới hạn tổng thể rộng lớn của những yêu cầu, chức năng cho một trang Web, qua đó có thể cài đặt ứng dụng và tránh các rủi ro.
  • 14. 14 1.2. Thành phần bên trong trang Web Gồm 3 thành phần chính: Thành phần phía trình chủ: Ví dụ như các trình chủ Web, trình chủ cơ sở dữ liệu, trình chủ ứng dụng, ngôn ngữ đánh dấu, kết nối Web đến cơ sở dữ liệu và các chương trình mở rộng của trình chủ Web. Thành phần trình khách: Trình duyệt Web và các thành phần Add- on/Plug-in. Kiến trúc hệ thống: Trong hệ thống trang Web, các thành phần được nhóm lại thành các cụm dịch vụ liên quan, dưới đây ta tiến hành xem xét hệ thống Web dưới hai dạng:  Hệ thống khách chủ truyền thống: Một ứng dụng điển hình gồm có 4 phần: Mã nguồn giao diện người dùng, mã nguồn xử lý logic, mã nguồn dịch vụ truy cập dữ liệu, lưu dữ liệu.  Hệ thống khách chủ trên Web: Gồm: Máy khách (dịch vụ người dùng), máy chủ (dịch vụ xử lý) và các thành phần dịch vụ dữ liệu (máy chủ). 1.3. Tại sao cần kiểm thử Website? Các trang Web cùng những ứng dụng của nó đưa ra nhiều thử thách đối với các nhà phát triển khác nhau. Chất lượng của trang Web về cơ bản phụ thuộc vào các thành phần kể trên và khả năng tương tác giữa chúng. Kiểm thử là một trong những công vệc quan trọng của quá trình phát triển Web tạo ra các sản phẩm Web tốt nhất. Vì vậy mà việc kiểm thử cũng cần phải có phương pháp, hệ thống riêng. Kiểm thử nhằm vào việc tìm ra các lỗi, thiếu xót trong ứng dụng. Vậy vấn đề ở đây là chúng ta cần phải linh hoạt khi áp dụng làm cho những phương pháp này phù hợp, thích ứng với việc kiểm thử các trang Web.  Và ở đây chúng ta sẽ đề cập tới những giải pháp, phương thức và công cụ cho kiểm thử Web.
  • 15. 15 2. Những phương pháp kỹ thuật khi kiểm thử Website 2.1. Kiểm thử giao diện trang Web (Testing Web page interface) Mục đích: Kiểm chi chỉ ra các lỗi, chứng minh giao diện của trang Web không đúng với đặc tả yêu cầu. Các giao diện chính bao gồm: Giao diện web server và server ứng dụng:  Lỗi chính tả, font chữ, font size…  Giá trị thể hiện.  Cách sắp xếp thông tin, hình ảnh…  Các thanh, các tabs, các mục chi tiết như thế nào?  Giao diện server ứng dụng và giao diện server dữ liệu  Kiểm tra tất cả các tương tác giữa các server. Nếu server dữ liệu hoặc web server trả lại bất kỳ báo lỗi nào cho bất kỳ truy vấn nào từ server ứng dụng thì ngay lập tức server ứng dụng phải nhận được và cho hiển thị cảnh báo tới người dùng. Kiểm tra các trường hợp giao dịch bị ngắt đột ngột do người dùng, hoặc kết nối tới server bị gián đoạn, bị khởi động lại…  VD:
  • 16. 16 2.2. Kiểm thử chức năng ( functional testing) Kiểm thử chức năng thường sử dụng kỹ thuật kiểm thử hộp đen nào đó, đặc tả dựa theo trang Web. Mục đích kiểm thử là tìm ra các lỗi về mặt chức năng, bao gồm cả nhiều lỗi về chức năng rất quan trọng, chứng minh chức năng của trang Web không đúng với đặc tả ban đầu. Việc kiểm thử chức năng yêu cầu tester thực hiện test tất cả các link trong trang web, định dạng được sử dụng trong các trang web để gửi và nhận các thông tin cần thiết từ người dùng. Ngoài ra còn có kết nối cơ sở dữ liệu, kiểm tra cookies và xác minh HTML/CSS. 2.2.1. Kiểm thử liên kết (links) Kiểm tra các liên kết (links) bao gồm kiểm tra liên kết ngoài trang web, liên kết nội bộ, liên kết tới các vị trí trong cùng trang, liên kết sử dụng Liên kết bên trong một cấu trúc siêu văn mà điểm đến không tồn tại một nút (các trang web, hình ảnh,vv) hoặc được gọi là liên kết hỏng và đại diện nổi tiếng và thường xuyên xảy ra sai sót trong các ứng dụng Web. Để kiểm tra cho chính xác của các trang liên kết (link kiểm tra), tất cả các liên kết được hệ thống theo sau bắt đầu trên một trang bắt đầu, và sau đó được nhóm trong một đồ thị liên kết ( bản đồ trang web). Khi chạy một thói quen kiêm tra liên kết, người ta thường thấy các liên kết không chỉ là điểm đến không tồn tại trang, nhưng cũng có các trang không được interlinked với những người khác hoặc cái gọi là các trang mồ côi. Những trang mồ côi có thể được đạt đến thông qua một liên kết, nhưng không có một liên kết đến cấu trúc siêu văn bản. Để đơn giản cho người sử dụng nó không rõ ràng nơi để đi tới, để họ rời bỏ trang web. Các trang là thiết kế lý tưởng để họ kết thúc bằng một đề nghị của nơi người đọc có thể đi tiếp theo. Ngoài ra, khi vượt qua các liên kết, người ta thường có thế tìm thấy dữ liệu bô sung để cung cấp chi dẫn tiềm năng lồi, ví dụ, độ sâu và bề rộng của các cơ cấu chuyển hướng, khoảng cách giữa hai tramg liên quan đến các trang, được đo bằng số lượng các liên kết, hoặc lần tải của các trang. 2.2.2. Kiểm thử định dạng sử dụng trong trang Web
  • 17. 17 Kiểm tra form của các trang: form là phần cơ bản của các trang web, nên cần được kiểm tra một cách kỹ càng, bao gồm các yêu cầu sau:  Không nhập gì vào các trường bắt buộc thì sao?  Giá trị mặc định của các trường là gì?  Nhập đầu vào không đúng validate của các trường thì sao?  Thao tác trên các trường: xem, nhập, lưu, sửa, xóa…  Kết nối cơ sở dữ liệu: yêu cầu kiểm tra tính toàn vẹn của dữ liệu khi tạo, sửa, xóa form…hoặc bất cứ chức năng nào có liên quan tới cơ sở dữ liệu. Khi truy vấn cơ sở dữ liệu thì kết quả trả về có tương ứng với kết quả nhìn thấy được trên giao diện không, dữ liệu có được lấy và cập nhật chính xác không?...  Kiểm thử cookies: cookies là các tệp được tạo bởi trang web đã truy cập để lưu trữ thông tin duyệt web, như các tùy chọn trang web hoặc thông tin đăng nhập của người dùng. Người dùng có thể tùy chỉnh trên trình duyệt nhằm quản lý cookies, thực hiện các thao tác cho phép lưu, hoặc xóa, hoặc chặn…để kiểm tra các tính năng lưu hoặc không lưu trạng thái đăng nhập, tính năng bảo mật của ứng dụng web. Xác minh HTML/CSS: việc xác minh này đặc biệt quan trọng khi developer thực hiện tối ưu hóa trang web cho các công cụ tìm kiếm, chủ yếu liên quan tới lỗi cú pháp HTML. Tester sẽ kiểm tra xem trang web có được nhận diện bởi các công cụ tìm kiếm khác nhau hay không (ví dụ: Google, Yahoo, Bing…).
  • 18. 18 2.3. Kiểm thử hiệu suất (Performance testing) Kiểm thử hiệu suất là tiến trình thu thập và phân tích thông tin mà trong đó dữ liệu đo lường được tập hợp để dự đoán khi nào các mức tải sẽ vượt quá khả năng chịu đựng của nguồn tài nguyên của hệ thống. Trong tiến trình này bạn sẽ tập hợp các giá trị chuẩn. Các giá trị này được sử dụng để xây dựng các kịch bản kiểm thử tải và kiểm thử quá tải khác nhau. Các số liệu chuẩn đó cũng được sử dụng như ranh giới giúp cho bạn phát hiện khi nào hiệu suất hệ thống được cải thiện hoặc bắt đầu giảm đi. Mục đich của kiểm thử hiệu suất làm việc là chỉ ra rằng trang Web này không đạt được hiệu xuất được đặc tả trong mục tiêu đặt ra cho trang Web đó. Kiểm thử hiệu suất dựa vào sức nặng như độ phức tạp của giá trị , độ dài của đầu vào, độ dài của các câu truy vấn… Kiểm thử xác định hệ thống hoạt động như thế nào theo từng khối lượng công việc cụ thể. Ngoài ra, nó dùng để xác minh, xác nhận các thuộc tính như độ tin cậy và sử dụng tài nguyên. Một số các hoạt động liên quan tới hiệu suất như là thời gian đáp ứng đạt được, khả năng thông qua và mức độ sử dụng tài nguyên. Kiểm thử hiệu năng gắn với việc kiểm thử với các tốc độ kết nối mạng khác nhau. Thí dụ một số lỗi về hiệu suất:  Khả năng hiển thị các hình ảnh, đề mục trong trang Web không đáp ứng được với tốc độ yêu cầu của khách hàng. ƒ  Trang Web không đáp ứng được số lần kích chọn, không hiển thị, hoặc hiển thị chậm các mục, các hình ảnh mà người dùng kích chọn.  Trình soạn thảo văn bản của trang Web không nhận và xử lý kịp các ký tự được nhập bởi người dùng. Note: Kiểm thử hiệu suất và kiểm thử tải, quá tải thường được dùng thay thế lẫn nhau nhưng thực ra là chúng không giống nhau. 3. Ví dụ nhỏ viết testcase kiểm thử trang Web ATM
  • 19. 19 Hình 1 Hình 2 PHẦN IV. MỘT SỐ CÔNG CỤ KIỂM THỬ WEBSITE 1. Khái quát về kiểm thử tự động 1.1. Khái quát Kiểm thử phần mềm tốn nhiều chi phí nhân công, thời gian. Trong một số dự án, chi phí kiểm thử phần mềm chiếm 50% tổng giá trị của dự án.
  • 20. 20 Nếu cần ứng dụng an toàn hơn, chi phí kiểm thử còn cao hơn nữa. Do đó một trong các mục tiêu của kiểm thử là tự động hóa nhiều, nhờ đó mà giảm thiểu chi phí, giảm lỗi, đặc biệt giúp việc kiểm thử hồi qui dễ dàng và nhanh chóng hơn. Tự động hóa việc kiểm thử là dùng phần mềm điều khiển việc thi hành kiểm thử, so sánh kết quả có được với kết quả mong muốn, thiết lập các điều kiện đầu vào, các kiểm soát kiểm thử và các chức năng báo cáo kết quả... 1.2. Kiểm thử tự động là gì? Kiểm thử tự động là quá trình thực hiện một cách tự động các bước trong một kịch bản kiểm thử. Kiểm thử tự động bằng một công cụ nhằm rút ngắn thời gian kiểm thử. 1.3. Tại sao cần kiểm thử tự động? Kiểm thử phần mềm tự động với mục đích:  Giảm bớt công sức và thời gian thực hiện quá trình kiểm thử - Tăng độ tin cậy.  Giảm sự nhàm chán cho con người  Rèn luyện kỹ năng lập trình cho kiểm thử viên - Giảm chi phí cho tổng quá trình kiểm thử. Khi nào cần kiểm thử tự động?  Không đủ tài nguyên: Khi số lượng TestCase quá nhiều mà kiểm thử viên không thể hoàn tất trong thời gian cụ thể - Kiểm tra hồi quy: Nâng cấp phần mềm, kiểm tra lại các tính năng đã chạy tốt và những tính năng đã sửa. Tuy nhiên, việc này khó đảm bảo về mặt thời gian  Kiểm tra khả năng vận hành phần mềm trong môi trường đặc biệt: Đo tốc độ trung bình xử lý một yêu cầu của Web server Xác định số yêu cầu tối đa được xử lý bởi Web Server Xác định cấu hình máy thấp nhất mà PM vẫn có thể hoạt động tốt. 1.4. Ưu và nhược điểm của kiểm thử tự động Ưu điểm:  Độ tin cậy cao(Reliability): Nhờ sự ổn định vượt trội của công cụ kiểm thử tự động so với con người, đặc biệt trong trường hợp có quá nhiều test cases cần được thực thi, nên độ tin cậy của kiểm thử tự động thường cao hơn so với kiểm thử thủ công.  Khả năng lặp (Repeatability): Hãy cùng xem xet một ví dụ: Trong một ngày thời tiết xấu chúng ta phải thực thi một test case với 50 bộ dữ liệu đầu vào khác nhau. Nếu thực thi cách thủ công, ngồi
  • 21. 21 trước màn hình, nhập dữ liệu, click click .., check check … trong 50 lần có lẽ bạn sẽ gục ngã sớm trên bàn làm việc của mình. NHƯNG, nếu bạn thực thi bằng kiểm thử tự động, chỉ cần nhập dữ liệu vào file excel ( or csv, …) cho script chạy và ngồi rung đùi cho tới khi nhận được báo cáo. Với độ ổn định cao, bạn hoàn toàn có thể tin tưởng vào kết quả thực thi của công cụ kiểm thử tự động. Quả là một viễn cảnh lý tưởng hơn nhiều.  Khả năng tái sử dụng (Reusability): Với một bộ kiểm thử tự động, chúng ta có thể sử dụng cho nhiều phiển bản ứng dụng khác nhau, đây được gọi là tính tái sử dụng.  Nhanh (Fast): Đây là điều không cần phải bàn cãi, nếu cần 5 phút để thực thi một test case cách thủ công, có thể bạn cần chưa đầy 30s để thực thi cách tự động.  Chi phí thấp (Cost Reduction): Nếu áp dụng kiểm thử tự động đúng cách, chúng ta có thể tiết kiệm được rất nhiều chi phí, thời gian và nhân lực. (Khi nào nên áp dụng kiểm thử tự động sẽ được nói ở cuối bài. Nhược điểm:  Khó mở rộng, khó bảo trì (Poor scalability and maintainability): Trong cùng một dự án, để mở rộng phạm vi cho kiểm thử tự động là khó hơn nhiều so với kiểm thử cách thủ công. Số lượng công việc phải làm để mở rộng phạm vi cho kiểm thử tự động là nhiều hơn và khó hơn kiểm thử thủ công. Cũng vậy, để cập nhật một test case thủ công, chúng ta chỉ cần mở ra và gõ, rất đơn giản. Nhưng kiểm thử tự động lại không đơn giản như vậy, cập nhật hay chỉnh sửa yêu cầu rất nhiều công việc như debug, thay đổi dữ liệu đầu vào, và cập nhật code mới.  Khả năng bao phủ thấp(Low coverage): Chính vì việc khó ứng dụng, khó mở rộng, cũng như đòi hỏi quá nhiều kỷ năng lập trình nên độ bao phủ của kiểm thử tự động khá thấp (xét trên góc nhìn toàn dự án).  Vấn đề công cụ và nhân lực (Technology vs. people issues): Cho đến nay công cụ hỗ trợ kiểm thử tự động đã có những bước phát triển mạnh mẽ, chúng ta có các công cụ rất tốt như QTP, Selenium, Test Complete, LoadTest, Jmeter, Visual Studio, … Nhưng nhìn chung vẫn còn rất nhiều mặt hạn chế. Ngoài ra nguồn nhân lực đạt yêu cầu cũng không nhiều.
  • 22. 22 1.5. Quy trình kiểm thử tự động Bảng sau mô tả rõ hơn các bước thực hiện kiểm thử tự động : STT Các bước thực hiện Mô tả 1 Tạo kịch bản kiểm thử Giai đoạn này dùng các công cụ kiểm thử để ghi lại các thao tác lên phần mềm cần kiểm tra và tự động sinh ra kịch bản kiểm thử. 2 Chỉnh sửa kịch bản kiểm thử Chỉnh sửa để kịch bản thực hiện kiểm tra theo đúng yêu cầu đặt ra. Cụ thể, làm theo trường hợp kiểm thử cần thực hiện. 3 Chạy kịch bản kiểm thư Kiểm tra phần mềm có đưa ra đúng kết quả mong muốn không. 4 Đánh giá kết quả Đánh gia sau khi chạy kịch bản kiểm thử.
  • 23. 23 2. Một số công cụ kiểm thử tự động Website Có rất nhiều các công cụ được dùng để kiểm thử Website: Auto Testing Web Application, Selenium IDE, Qicktest professional(QTP), Functionaly testing, Weblink Validator, Load runner, Jmeter… Sau đâu chúng em xin giới thiệu một số công cụ tiêu biểu được dùng để kiểm thử Website: 2.1. Công cụ kiểm thử chức năng 2.1.1. Công cụ Selenium IDE 2.1.1.1. Khái niệm - Selenium IDE (Integrated development enviroment): là một công cụ cho phép ghi (record) và phát lại một test script, đây là một add-on hỗ trợ FireFox. Chúng ta chỉ có thể record trên trình duyệt FireFox nhưng bù lại nó có thể playback trên các trình duyệt khác như IE, Chrome… 2.1.1.2. Ưu và nhược điểm của Selenium  Ưu điểm  Là công cụ mã nguồn mở.  Đơn giản, dễ cài đặt, dễ làm việc.  Sử dụng miễn phí.  Dễ dàng ghi và phát lại các thao tác của người dùng với trình duyệt.  Các lựa chọn trường thông minh sẽ sử dụng ID, name hoặc Xpath khi cần thiết.  Tự động hoàn chỉnh cho tất cả các lệnh Selenium thường gặp.Gỡ lỗi và thiết lập các điểm dừng.  Lưu các kiểm thử như là với các định dạng khác nhau (Ví dụ: HTML, PHP…).Hỗ trợ các tệp tin selenium user-extensions.jsDễ dàng điểu chỉnh thông qua các plugin.  Nhược điểm  Không thể đảm bảo bất kỳ add-in nào được yêu cầu nếu selenium không thể nhận ra các đối tượng.  Hỗ trợ được cung cấp cho Selenium là rất ít.
  • 24. 24 2.1.1.3. Cài đặt Selenium IDE  Bước1: Mở trang chủ của selenium http://seleniumhq.org/download/  Bước 2: Cài đặt selenium IDE giống như cài đặt một plugin trên trình duyệt Firefox  Click vào link 2.5.0 (chỉ số phiên bản này có thể thay đổi theo thời gian) nó sẽ bật ra cửa sổ. Software Installation như hình dưới và chờ đợi trong vài giây sau đó click vào nút Install Now cạnh nút Cancel.  Bước 3: Khởi động lại trình duyệt Firefox  Bước 4: Lần đầu khởi động Selenium IDE. Click vào icon Selenium trên menu Bar của firefox giao diện selenium IDE sẽ hiển thị như hình bên dưới:
  • 25. 25 2.1.1.4. Tính năng của Selenium IDE - Base URL là nơi lưu trữ homepage của ứng dụng web - Test Case list liệt kê tất cả test case có trong test suite - Fast…Slow xác định tốc độ execute một test case - Play entity test suite thực thi tất cả test case chúng ta đang mở - Play current test case thực thi test case đang được mở - Pause/Resume: Tạm ngưng/Tiếp tục thực thi test case đang chạy - Step: thực thi từng bước một trong test case. Chỉ có tác dụng khi test case đang tạm ngưng - Apply Rollup Rules: Chức năng đặc biệt cho phép chúng ta nhóm nhiều action nhỏ thành một action lớn - Record Sao chép lại hành động của chúng ta và ghi ra danh sách action. - Table/Source danh sách các action trong test case - Command danh sách các action mà Selenium IDE đang hỗ trợ - Target định nghĩa control mà chúng ta đang tương tác. - Value dữ liệu test - Log thông tin về action đang được thực thi - Reference hướng dẫn sử dụng action đang được chọn - UI-Element and Rollup được sử dụng ở mức advance, khi mà chúng ta tự thiết kế các nhận diện control hay gom nhóm action Ứng dụng test trang web http://bankatmhaui.somee.com/như sau: - Mở trang ATM chạy lên - Nhập mã tài khoản - Xem thông báo lỗi. Công cụ kiểm thử hiệu năng 2.1.2. Công cụ Jmeter Apache Jmeter 2.1.2.1. Khái niệm Jmeter Apache Jmeter là một ứng dụng mã nguồn mở, phát triển hoàn toàn trên Java, được thiết kế để kiểm thử ứng dụng web. Ứng dụng được sử dụng để kiểm tra hiệu năng cả tĩnh và động (files, Servlets, Perl, scripts, Java Objects, Data Bases and Queries, FTP Servers …) 2.1.2.2. Ưu điểm và một số đặc điểm
  • 26. 26 Dưới đây là hình biểu diện giao diện chính của công cụ:  Kiểm tra tải và kiểm tra hiệu năng theo nhiều kiểu khác nhau: Web – HTTP, HTTPS, SOAP, Database via JDBC, LDAP, JMS, Mail – POP3(S) and IMAP(S).  Rất nhẹ, Không cần cài đặt, miễn phí.  Nền tảng xử lý đa luồng cho phép mô phỏng nhiều mẫu bởi nhiều thread của các chức năng khác nhau trên các thread group khác nhau  Dễ dàng thêm các plugin và tạo các báo cáo phù hợp yêu cầu.  Nhược điểmĐược hỗ trợ mạnh bởi cộng đồng open source.  Sun’s JRE phải được cài đặt.  Chỉ sử dụng được với ứng dụng web.  Kết quả Stress testing có thể khó xác định chính xác.  Khó khăn khi thực hiện các kịch bản kiểm thử phức tạp.  Khó thực hiện Recording b.Load runner Load Runner là sản phẩm của Hewlett-Packard. Load Runner chia làm 3 thành phần:  Virtual User Generator: cho phép xác định hành động của người dùng thực hiện trong ứng dụng.  Controller: cho phép tạo các script và chạy thông qua một lịch đặt sẵn.  Results and Analysis: cho phép tổng hợp kết quả và phân tích chi tiết kết quả kiểm thử. Ưu điểm: - Không cần cài đặt ở trên máy chủ của ứng dụng cần kiểm tra.
  • 27. 27 - Sử dụng ngôn ngữ Ansi C là ngôn ngữ lập trình mặc định. - Khả năng giám sát và phân tích tốt, với các biểu đồ dễ hiểu. - Hỗ trợ tất cả các giao thức. - Dễ dàng Recording và tạo các script Nhược điểm: - Tài liệu hướng dẫn kĩ càng và chi tiết. - Tốn chi phí để mua bản quyền. - Kích cỡ file cài đặt rất lớn, chiếm nhiều phần cứng, thích hợp trên Windows. - Giới hạn số user có thể chạy. PHẦN V. TỔNG KẾT Trong bài tập này, chúng em xin giới thiệu về kiểm thử Website. Qua đấy, chúng em cũng đã làm rõ được một rất vấn đề rất quý báu và bổ ích cho thực tế cũng như môn đảm bảo chất lượng phần mềm. Chúng em hiểu được như thế nào là đảm bảo chất lượng phần mềm,kiểm thử phần mềm và kiểm thử Website và một số phương pháp hữu ích để kiểm thử Website. Ngoài ra thì chúng em cũng đã giới thiệu được một số các công cụ kiểm thử ứng dụng Web với nhứng tính năng, ưu điểm nổi bật và các mặt hạn chế chảu từng công cụ. Qua đây , chúng em cũng giúp cho mọi người lựa chọn được công cụ kiểm thử, đặc biệt là kiểm thử Website cho phù hợp với từng project của mình. Một lần nữa, chúng mình xin cảm ơn thầy giáo và các bạn đã tạo điều kiện để mình làm được nhưng điều trên. Xin chân thành cảm ơn!
  • 28. 28 PHẦN IV. TÀI LIỆU THAM KHẢO Để có được những kiến thức bổ ích này, nhóm chúng em đã không ngừng tìm kiếm các tài liệu trân mạng như: http://www.testingvn.com/viewtopic.php?f=11&t=17767 https://viblo.asia/NguyenThiHuyenCham/posts/d6BAMYV9Gnjz https://viblo.asia/ThuMaiNguyen/posts/KAyQMpapG0Ek http://www.cse.hcmut.edu.vn/~hiep/KiemthuPhanmem/LyThuyetViet/Chuong01. pdf http://dlib.ptit.edu.vn/bitstream/123456789/1246/1/BG_DambaoCLPM.pdf http://forums.testervn.com/archive/index.php/t-1446.htm http://www.testingvn.com/viewtopic.php?f=14&t=438&start http://luanvan.co/luan-van/nghien-cuu-kiem-thu-hieu-nang-cua-ung-dung-web-49498/