: Nghiên cứu, trình bày một bộ công cụ kiểm thử Tự động,tự động ở những tiêu chí nào.Mục LụcChương 1: Giới thiệu về kiểm thử41.1. Khái niệm kiểm thử:41.2. Khái niệm kiểm thử thủ công41.3. Khái niệm kiểm thử tự động5Chương 2: Trình bày về selenium72.1. Khái niệm72.2.1.Mã nguồn mở72.2.2.Cộng đồng hỗ trợ72.2.3.Selenium hỗ trợ nhiều ngôn ngữ lập trình : Python, Java, C, Ruby.72.2.4.Selenium hỗ trợ chạy trên nhiều OS khác nhau82.2.5.Chạy test case ở backround82.2.6.Không hỗ trợ Win app:82.3. Cấu trúc của selenium9Chương 3: Selenium IDE (Intergrated Development Environment)113.1. Khái niệm113.2. Đặc điểm113.3. Tại sao phải sử dụng SE IDE113.4. Khi nào sử dung SE IDE123.5. Sử dụng SE IDE ở đâu?123.6. Hướng dẫn Sử dụng SE IDE.133.6.1.Cài đặt firefox133.6.2.Cài đặt selenium IDE143.6.3.Cụ thể về SE IDE17Chương 4: Các tiêu chí tự động của SE IDE21Hai tiêu chí cơ bản nhất của sự tự động là21Viết test case21Thực hiện test21
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO BÀI TẬP LỚN NHẬP MÔN CÔNG NGHỆ PHẦN MỀM
Đề tài: Nghiên cứu, trình bày một bộ công cụ kiểm thử
Trang 2Mục Lục
Chương 1: Giới thiệu về kiểm thử 4
1.1 Khái niệm kiểm thử: 4
1.2 Khái niệm kiểm thử thủ công 4
1.3 Khái niệm kiểm thử tự động 5
Chương 2: Trình bày về selenium 7
2.1 Khái niệm 7
2.2.1.Mã nguồn mở 7
2.2.2.Cộng đồng hỗ trợ 7
2.2.3.Selenium hỗ trợ nhiều ngôn ngữ lập trình : Python, Java, C#, Ruby 7
2.2.4.Selenium hỗ trợ chạy trên nhiều OS khác nhau 8
2.2.5.Chạy test case ở backround 8
2.2.6.Không hỗ trợ Win app: 8
2.3 Cấu trúc của selenium 9
Chương 3: Selenium IDE (Intergrated Development Environment) 11
3.1 Khái niệm 11
3.2 Đặc điểm 11
3.3 Tại sao phải sử dụng SE IDE 11
3.4 Khi nào sử dung SE IDE 12
3.5 Sử dụng SE IDE ở đâu? 12
3.6 Hướng dẫn Sử dụng SE IDE 13
3.6.1.Cài đặt firefox 13
3.6.2.Cài đặt selenium IDE 14
Trang 33.6.3.Cụ thể về SE IDE 17
Chương 4: Các tiêu chí tự động của SE IDE 21
Hai tiêu chí cơ bản nhất của sự tự động là 21
Viết test case 21
Thực hiện test 21
Trang 4Chương 1: Giới thiệu về kiểm thử
1.1 Khái niệm kiểm thử:
Kiểm thử phần mềm (kiểm tra, thử nghiệm) là một cuộc kiểmtra được tiến hành để cung cấp cho các bên liên quan thông tin
về chất lượng của sản phẩm hoặc dịch vụ được kiểm thử.Kiểmthử có thể cung cấp cho doanh nghiệp một quan điểm, một cáchnhìn độc lập về phần mềm để từ đó cho phép đánh giá và thấuhiểu được những rủi ro trong quá trình triển khai phần mềm
Tóm lại : kiểm thử phần mềm là tìm ra lỗi của phần mềm
1.2 Khái niệm kiểm thử thủ công
Kiểm thử thủ công: là tester làm mọi công việc hoàn toàn bằng tay, từ viết test case đến thực hiện test, mọi thao tác như nhập điều kiện đầu vào, thực hiện một số sự kiện khác như clicknút và quan sát kết quả thực tế, sau đó so sánh kết quả thực tế với kết quả mong muốn trong test case, điền kết quả test Hiện nay, phần lớn các tổ chức, các công ty phần mềm, hoặc các
nhóm làm phần mềm đều thực hiện kiểm thử thủ công là chủ yếu
Trang 51.3 Khái niệm kiểm thử tự động
Kiểm thử tự động: Kiểm thử phần mềm tự động là thực hiện
kiểm thử phần mềm bằng một chương trình đặc biệt với rất ít
hoặc không có sự tương tác của con người, giúp cho người thực
hiện việc kiểm thử phần mềm (tester) không phải lặp đi lặp lại
các bước nhàm chán.
Như vậy ta có thể thấy cơ bản sự khác nhau giữa kiểm thử thủ công và kiểm thử tự động qua bảng sau:
Trang 6- Thích hợp kiểm thử trong trường hợp các test case chỉ phảithực hiện một số ít lần
- Giảm được chi phí ngắn hạn
-Tốn thời gian Đối với mỗi lần release, người kiểm thử vẫn phải thực hiện lại một tập hợp các test case đã chạy dẫn đến sự mệt mỏi và lãng phí công sức
Tự
động
- Thích hợp với trường hợp phảitest nhiều lần cho một case, có tính ổng định và tin cậy cao hơn
so với kiểm thử thủ công
- Có thể thực hiện các thao tác lặp đi lặp lại (nhập dữ liệu, click, check kết quả ) giúp tester không phải làm những việc gây nhàm chán và dễ nhầm lẫn như vậy
- Giảm chi phí đầu tư dài hạn
- Tốn kém hơn kiểmthử thủ công, chi phíđầu tư ban đầu lớn
- Kiểm thử thủ công
là không thể thay thế vì người ta không thể tự động hóa mọi thứ
Chương 2: Trình bày về selenium
Trang 72.1 Khái niệm
Selenium chính là một công cụ giúp chúng ta tiến hành kiểm thử
tự động
2.2 Các đăc điểm của selenium
có vấn đề về Selenium Vì là hàng miễn phí, cộng đồng lại đôngnên một vấn đề có thể nhiều giải pháp, và có thể một số giảipháp là không hữu ích Mặc khác, chúng ta không thể hối thúchay ra deadline cho sự hỗ trợ
Trang 82.2.3.Selenium hỗ trợ nhiều ngôn ngữ lập trình : Python, Java, C#, Ruby.
2.2.4.Selenium hỗ trợ chạy trên nhiều OS khác nhau
2.2.5.Chạy test case ở backround
có thể làm việc khác trên cùng một PC Điều này hỗ trợ chúng takhông cần tốn quá nhiều tài nguyên máy móc khi chạy test
script
2.2.6.Không hỗ trợ Win app:
trợ làm việc với các Win app, kể cả Win dialog như
Download/Upload – ngoại trừ Browser Alarm Vậy nên, để xử lýcác trường hợp cần tương tác với hệ thống hay một app thứ ba, chúng ta cần một hay nhiều thư viện khác như AutoIt hay CodedUI
Trang 92.3 Cấu trúc của selenium
Selenium gồm 4 phần
Selenium IDESelenium RC (Selenium1– Selenium Remote Control)Selenium Gird
Selenium WebDriver (Selenium 2)
Trang 10Trong đó:
Là một công cụ cho phép chúng ta Record/Playback một test script Đây là một add-on hỗ trợ cho FireFox
Chúng ta chỉ có thể Record trên trình duyệt FireFox, nhưng
bù lại, chúng ta có thể Playback trên các trình duyện khác như là IE, Chrome…
Là một hệ thống hỗ trợ người dùng thực thi test script trên nhiều trình duyệt một cách song song mà không cần phải chỉnh sửa test script
Là một thư viện cho phép chúng ta lập trình (scripting) test script trên các ngôn ngữ lập trình khác nhau như Python, Java, C#, Ruby
Trang 11Chương 3: Selenium IDE (Intergrated Development Environment) 3.1 Khái niệm
Selenium IDE là 1 thành phần của Selenium Nó hoạt động như 1 trình duyệt Firefox add-on Tác dụng chính của Selenium IDE là ghi lại quá trình tạo ra một mẫu test case và có khả năng phát lại quá trình tạo ra test case đó Hơn nữa, nó hỗ trợ lưu test case dưới nhiều định dạng file khác nhau như html, java, php…
3.2 Đặc điểm
3.3 Tại sao phải sử dụng SE IDE
Selenium IDE được sử dụng bởi các ưu điểm sau:
Trang 123.4 Khi nào sử dung SE IDE
Ta sử dụng Selenium IDE khi:
khá tốn thời gian trọng việc ghi và tạo các test case
Selenium IDE kiểm thử và ghi lại quá trình kiểm thử trực tiếp trên trình duyệt
Sử dụng trong những dự án có chức năng test cần kiểm thử
file định dạng khác nhau nên không mất công sức tạo lại test case
3.5 Sử dụng SE IDE ở đâu?
Hiện tại Selenium IDE được sử dụng trên trình duyệt firefox
3.6 Hướng dẫn Sử dụng SE IDE.
3.6.1.Cài đặt firefox
Trang 143.6.2.Cài đặt selenium IDE
Bước1:Truy cập trang web http://docs.seleniumhq.org/download sau đó
di chuyển xuống phần Selenium IDE để lựa chọn phiên bảnSelenium IDE cần download
Trang 15Click vào link chứa Selenium IDE cần download Sau đó nhấnAdd to Firefox, trình duyệt Firefox sẽ tự động add Selenium IDE
Trang 173.6.3.Cụ thể về SE IDE
Giao diện của SE IDE
Bắt đầu từ trên xuống, sẽ giải thích từng mục như sau:
Base URL: Đây là URL mà kiểm thử sẽ bắt đầu từ nó Tất
cả các lệnh mở sẽ liên quan đến Base URL nếu đường dẫn đầy đủ không được chèn vào
Thanh trượt tốc độ: đây là thanh trượt dưới các
nhãn Fast và Slow trên màn hình
Chạy tất cả các testcase trên IDE
Chạy 1 testcase trên IDE
Trang 18 Select box Command có 1 danh sách tất cả các lệnh cần để
tạo 1 testcase.Bạn có thể nhập vào để sử dụng hàm có sẵn hoặc dùng nó như 1 drop-down
Text box Target cho phép bạn nhập vị trí của thành phần
bạn muốn làm việc cùng
Nút Fine có thể được click để làm nổi bật thành phần trên
trang
Text box Value là nơi bạn đặt giá trị cần thay đổi Ví dụ,
nếu bạn muốn testcase của bạn nhập vào 1 ô nhập trên trangweb, bạn sẽ nhập giá trị bạn muốn vào ô giá trị
Bảng Test sẽ theo dõi tất cả lệnh, đích và giá trị của bạn Nó
được cấu tạo cách này là do phiên bản gốc của Selenium được tạo mẫu trên FIT test
FIT được tạo bởi Ward Cunningham và nghĩa là Framework for Integrated Testing
Kiểm thử về cơ bản được thiết kế để chạy từ file HTML và IDE giữ ý tưởng này cho việc kiểm thử của nó
Nếu bạn click vào Source tab, bạn sẽ thấy HTML lưu trữ việc
kiểm thử Từng dòng sẽ giống như:
Vùng bên dưới textbox Value sẽ chỉ ra Selenium log khi
kiểm thử đang chạy Nếu có 1 mục lỗi, sẽ có 1 đầu vào [error]
Trang 19Vùng này cũng sẽ hiển thị trợ giúp về các lệnh Selenium khibạn làm việc trong selectbox Command Điều này có thể rất hữu ích khi gõ lệnh vào Selenium IDE thay vì sử dụng tính năng ghi lại.
Log tab sẽ chỉ ra log xảy ra trong suốt quá trình kiểm thử.
Reference tab cung cấp cho bạn tài liệu về lệnh bạn đang đánh
dấu
Chú ý quan trọng: Các qui tắc cho tự động
Chúng ta đã cài đặt Selenium IDE và hiểu nó là gì, giờ có thể nghĩ đến việc làm việc thông qua việc kiểm thử đầu tiên Có
1 vài điều chúng ta cần xem xét khi tạo kiểm thử đầu tiên của mình Qui định này áp dụng cho bất kỳ hình thức kiểm thử tự động nào và cần được bám sát 1 cách đặc biệt khi tạo kiểm thử với giao diện người dùng
Việc kiểm thử luôn luôn nên có 1 điểm khởi đầu Với
Selenium, điều này nghĩa là mở 1 trang nhất định và bắt đầu
luồng làm việc
Kiểm thử không phải dựa vào các kiểm thử khác để chạy Nếu kiểm thử sẽ thêm 1 cái gì đó thì không cần phải có 1 kiểm thử riêng biệt để xóa nó đi Điều này để chắc chắn rằng nếu có gì
đó sai trong 1 kiểm thử không có nghĩa là bạn có nhiều tính năng không cần thiết để kiểm tra
Trang 20Chỉ nên kiểm thử 1 thứ ở 1 thời điểm.
Qui tắc này cũng như hầu hết các qui tắc khác, có thể bị phá
vỡ Tuy nhiên, việc phá vỡ chúng có nghĩa là bạn sẽ gặp phải vấn
đề sau đó Và khi bạn có hàng trăm, thậm chí hàng nghìn testcasenhững vấn đề nhỏ này có thể cho thấy phần lớn test suite đang thất bại
Với những qui tắc này trong đầu, chúng ta hãy tạo kiểm thử Selenium IDE đầu tiên nhé
Thời điểm hành động- ghi lại bước kiểm thử đầu tiên của bạn với Selenium IDE
Chúng ta sẽ ghi lại kiểm thử đầu tiên sử dụng Selenium IDE Để bắt đầu ghi, cần phải khởi động Mozilla Firefox Sau khi
nó được tải lên, bạn cần khởi động Selenium IDE
Bạn sẽ thấy nó bên dưới dropdown Tools trên Mozilla
Firefox hay trên danh sách dropdown Web Developer Khi đã tải
nó lên, sẽ trông như ảnh màn hình tiếp theo Chú ý rằng nút ghi lại đã có khi bạn tải IDE lên
Chương 4: Các tiêu chí tự động của SE IDE
Trang 21Trải qua quá trình test em rút ra các tiêu chí tự động của bộcông cụ kiểm thử tự động Selenium IDE như sau :