Tải bản đầy đủ (.pdf) (31 trang)

Báo cáo thực tập kiểm thử phần mềm tự động (AUTOMATION TESTING)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.4 MB, 31 trang )

1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO THỰC TẬP

KIỂM THỬ PHẦN MỀM TỰ ĐỘNG
(AUTOMATION TESTING)

Công ty thực tập:

Công ty TNHH Pyramid Consulting

Người phụ trách:

Nguyễn Huy Bình

Thực tập sinh:

Ngơ Tấn Phát

Mã số sinh viên:

17520877

TP. Hồ Chí Minh, tháng 12 năm 2021

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>




2

LỜI MỞ ĐẦU

Từ xưa đến nay, kiểm thử phần mềm là một giai đoạn quan trọng trong các quy trình
phát triển phần mềm. Với sự cạnh tranh giữa các ứng hiện nay, thị hiếu của người dùng và
khách hàng phụ thuộc ít nhiều vào chất lượng của ứng dụng đó, do đó kiểm thử phần mềm đã
và đang là nhân tố không thể thiếu để quyết định sự thành bại của một ứng dụng trên thị trường,
cũng như uy tín đối với tổ chức sản xuất ra ứng dụng tương ứng.
Cùng với xu thế phát triển của thế giới, Việt Nam cũng không phải ngoại lệ. Lĩnh vực
kiểm thử phần mềm ở Việt Nam đã và đang phát triển mạnh mẽ, để làm cho các ứng dụng sản
xuất/gia công tại Việt Nam đạt được chất lượng có thể sánh vai với chất lượng của những ứng
dụng được sản xuất ở khắp nơi trên thế giới. Bên cạnh những công ty hàng đầu, những công ty
outsourcing/product ở Việt Nam cũng đã và đang đầu tư rất nhiều chi phí vào giai đoạn kiểm
thử cho một dự án, góp phần rất lớn vào chất lượng của sản phẩm, từ đó mang lại cho người
dùng có được một trải nghiệm tốt nhất.
Ngành kiểm thử phần mềm có 2 loại chính, đó là manual testing (kiểm thử thủ công) và
automation testing (kiểm thử tự động). Mỗi loại kiểm thử đều có những chức năng/ưu điểm và
khuyết điểm riêng.
Sau bốn năm học tập trên trường, do mong muốn có thêm kinh nghiệm thực tế, cũng như
muốn được tham gia kiểm thử trong một môi trường chuyên nghiệp, em có dự định là sẽ thực
tập trong học kì này. Vì vậy, em quyết định chọn Cơng Ty TNHH Pyramid Consulting - một
môi trường lý tưởng, hiện đại, chuyên nghiệp - là nơi sẽ giúp em thực hiện được dự định này.

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>



3

LỜI CẢM ƠN

Em xin gửi lời cám ơn đến Công ty TNHH Pyramid Consulting đã tạo điều kiện để em thực
hiện tốt chương trình thực tập của mình. Đặc biệt, em xin cám ơn anh Nguyễn Huy Bình đã tận
tình hướng dẫn, chỉ dạy để giúp em có thêm kiến thức, kinh nghiệm trong công việc. Nhờ sự chỉ
dạy tân tình của q cơng ty tạo một mơi trường làm việc, sự quan tâm của các anh, các chị
đồng nghiệp nên em mới có được những kiến thức và những trải nghiệm thật sự quý giá. Em
cám ơn sự yêu quý và tinh tưởng của mọi người đã tạo cho em một môi trường làm việc thật
năng động, tuy đôi lúc có chút áp lực về cơng việc nhưng nhờ sự giúp đỡ tận tình và tinh thần
đồn kết của mọi người, nên tất những khó khăn ấy sẽ là động lực để em cố gắng và vươn xa
hơn để có thể trở thành một phần của cơng ty, và cùng nhau tạo nên nhưng giá trị cho công ty.

TP.Hồ Chí Minh, ngày 25 tháng 12 năm 2021
Sinh viên thực tập

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


4

NHẬN XÉT CỦA KHOA

..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................

..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


5

MỤC LỤC

CHƯƠNG 1: GIỚI THIỆU ĐƠN VỊ THỰC TẬP ....................................................... 8
1.1 Thông tin về đơn vị thực tập: .............................................................................. 8
CHƯƠNG 2: NỘI DUNG CƠNG VIỆC THỰC TẬP ................................................. 9
2.1 Tìm hiểu về mơ hình agile, hệ thống ISMS và automation QC .......................... 9
2.2 Các công việc thực hiện trong kỳ thực tập ........................................................ 10

Tuần 1 ...................................................................................................................... 10
Tuần 2 ...................................................................................................................... 10
Tuần 3 ...................................................................................................................... 11
Tuần 4 ...................................................................................................................... 11
Tuần 5 ...................................................................................................................... 12
2.3. Một số hình ảnh về source code bài tập trong quá trình thực tập……………………13
CHƯƠNG 3: DỰ ÁN THỰC TẾ………………………………………………………… 28
3.1 Thơng tin dự án……………………………………………………………………....28
3.2. Công việc trong dự án……………………………………………………………….29
3.3. Một số hình ảnh về những cơng cụ sử dụng trong dự án …………………………...27

CHƯƠNG 4: KẾT LUẬN .......................................................................................... 31
4.1 Những kỹ năng thực hành ................................................................................. 31
4.2 Những kinh nghiệm tích lũy được .................................................................... 31

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


6

DANH MỤC CÁC HÌNH ẢNH

Hình 1.0 Hình ảnh cơng ty ..............................................................................................6
Hình 1.1 Mơ hình Agile ..................................................................................................8
Hình 1.2 Hệ thống ISMS ................................................................................................8
Hình 1.3 Sử dụng Map trong Java ................................................................................13
Hình 1.4 Sử dụng List trong Java .................................................................................14
Hình 1.5 Sử dụng Array trong Java ..............................................................................15

Hình 1.6 Sử dụng OOP trong Java................................................................................16
Hình 1.7 Sử dụng TestNG ............................................................................................17
Hình 1.8 Sử dụng Page Object Model ..........................................................................18
Hình 1.9 Sử dụng Page Factory ....................................................................................19
Hình 2.0 Sử dụng Data Provider ...................................................................................19
Hình 2.1 Sử dụng ngơn ngữ Gherkin ............................................................................20
Hình 2.2 Sử dụng Cucumber BDD ...............................................................................20
Hình 2.3 Cấu hình file test Runner để chạy JUnit ........................................................21
Hình 2.4 Cấu hình file pom.xml ..................................................................................21
Hình 2.5 Viết User Story cho chức năng ......................................................................22
Hình 2.6 Viết các test case trong file Excel ..................................................................22
Hình 2.7 Execute test case trong Test Cycle ................................................................23
Hình 2.8 Các bug của hệ thống .....................................................................................23
Hình 2.9 Giao diện BitBucket .......................................................................................24
Hình 3.0 Path Parameters trong Rest Assured ..............................................................25
Hình 3.1 Query Parameters trong Rest Assured ...........................................................25
Hình 3.2 Sử dụng Rest Assured để lấy response time ..................................................26
Hình 3.3 Kết quả chạy Rest Assured ............................................................................27

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


7

CHƯƠNG 1:
GIỚI THIỆU VỀ ĐƠN VỊ THỰC TẬP

1.1. Thông tin về đơn vị thực tập:


Hình 1.0: Hình ảnh cơng ty

Cơng ty TNHH Pyramid Consulting (Tên tiếng anh: Positive Thinking Company)
là một tập đồn tư vấn cơng nghệ độc lập tồn cầu. Với đội ngũ hơn 3.000 chuyên
gia công nghệ tài năng tại hơn 35 thành phố trên khắp Châu Âu, Mỹ, Châu Á,
Châu Úc và Châu Phi, công ty phục vụ khách hàng ở mọi quy mô. PTC tin rằng
sự hợp tác sẽ làm tốt hơn thế giới của chúng ta. Mơ hình hệ sinh thái mở độc đáo
của PTC cho phép chúng tôi cung cấp các giải pháp công nghệ đầu cuối.
PTC hợp tác với khách hàng của chúng tơi ở mọi giai đoạn trong vịng đời của
các dự án của họ, từ chiến lược đến thực hiện. PTC tư vấn cho khách hàng của
chúng tôi, xây dựng và điều hành các dự án của họ. PTC đặt mục tiêu khai thác
toàn bộ tiềm năng của đồng nghiệp bằng cách cung cấp cho họ một mơi trường
tiến hóa, khuyến khích sự hợp tác, sáng tạo và một tư duy tích cực.

<GVHD: Lê Thanh Trọng>

<SVTH: Ngơ Tấn Phát>


8

Các dịch vụ của chúng tôi dựa trên nhiều chuyên môn, bao gồm ứng dụng và nền
tảng, bảo mật, đám mây, dữ liệu và phân tích, siêu tự động hóa và nơi làm việc kỹ
thuật số. Các ngành được hưởng lợi bao gồm, trong số những ngành khác, dịch
vụ ngân hàng và tài chính, bảo hiểm, chăm sóc sức khỏe, bán lẻ, vận tải, viễn
thông và khu vực công. PTC cung cấp dịch vụ của chúng tôi với tư duy hợp tác và
có ý nghĩa. PTC đặt mục tiêu tạo ra các kết quả kinh doanh tích cực hỗ trợ khách
hàng của chúng tôi thông qua môi trường kinh doanh ln thay đổi.Hình 1.0 Hình
ảnh cơng ty.


1.1.1 Cơ sở vật chất
Cơ sở vật chất tương đối tốt, được trang bị đầy đủ các thiết bị như máy tính để bàn,
màn hình trình chiếu đảm bảo đáp ứng tốt quá trình làm việc cho nhân viên. Ngoài ra
các tiện nghi khác như: máy nước nóng, máy lạnh, cà phê,…giúp cho nhân viên có
một mơi trường làm việc đảm bảo cũng như có thể xả stress sau những giờ làm việc
căng thẳng.

1.1.2 Dịch vụ hỗ trợ
Cơng ty ln có chế độ hỗ trợ để giúp sinh viên có thể thực tập một cách tốt nhất:
-

Giữ xe miễn phí

-

Cà phê, đồ ăn vặt và chế độ nghỉ ngơi linh hoạt

-

Phụ cấp hàng tháng

1.1.3 Yêu cầu về thái độ và kỹ năng làm việc
Để đảm bảo cơng việc hồn thành đúng tiến trình, cơng ty u cầu sinh viên có tác
phong tốt trong cơng việc, thái độ làm việc vui vẻ hòa đồng với mọi người. Cơng ty
khơng u cầu sinh viên có kiến thức chuyên môn sâu nhưng yêu cầu sinh viên phải
chịu khó tìm tịi học hỏi những kiến thức chun mơn từ cơ bản đến nâng cao, để đáp
ứng một cách tốt nhất trong quá trình làm việc.

<GVHD: Lê Thanh Trọng>


<SVTH: Ngô Tấn Phát>


9

CHƯƠNG 2:
NỘI DUNG CƠNG VIỆC THỰC TẬP
2.1 Tìm hiểu về một số phần quan trọng được dùng trong quá trình làm
việc tại công ty
- Agile là tập hợp các phương thức phát triển lặp và tăng dần trong đó các yêu cầu và giải
pháp được phát triển thông qua sự liên kết cộng tác giữa các nhóm tự quản và liên chức năng.
Agile là cách thức làm phần mềm linh hoạt để đưa ra sản phẩm
đến tay người dùng các sớm càng tốt. Sau đó khách hàng sẽ dùng thử và phản hồi lại để đội ngũ
phát triển tiếp tục làm ở các giai đoạn tiếp theo

Hình 1.1 Mơ hình Agile
- Được biết ISMS là cụm từ viết tắt của information security management system.
Đây là hệ thống quản lý an ninh thông tin. ISMS là khái niệm được sử dụng nhiều trong những
Doanh Nghiệp công nghệ thông tin và những đơn vị có ứng dụng hệ thống CNTT vào quản lý
sản xuất. Theo tiêu chuẩn ISO 27001, về an toàn thơng tin có liên quan đến các tính chất như

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


10

sãn sàng, bảo mật, tính tồn vẹn của thơng tin. Ngồi ra việc an tồn thơng tin cịn bao gồm có

các tính chất khác như trách nhiệm, xác thực, tính tin cậy và xác nhận.

Hình 1.2 Hệ thống ISMS

Automation Test có thể hiểu rất đơn giản là thay vì test bằng tay, ta để máy thực hiện
việc testing mà Tester phải làm (Khởi động hệ thống, nhập dữ liệu đầu vào, kiểm tra so sánh với
dữ liệu đầu ra và ghi kết quả). Automation Testing đóng một vai trị quan trọng góp phần nâng
cao năng suất kiểm thử, giảm thiểu lỗi cũng như sự nhàm chán với việc kiểm thử bằng tay trong
một thời gian dài hoặc lặp đi lặp lại.

2.2 Các cơng việc thực hiện trong q trình thực tập:
Tuần 1:
Thứ 2: Được giới thiệu về các quy định, nội quy của cơng ty, cài đặt máy móc và giới
thiệu với cơng ty.
Thứ 3: Giới thiệu tồn cảnh về QC và học về mơ hình Alige
Thứ 4:
Học lớp giao tiếp tiếng anh và giao tiếp trong công ty (Communication skill)
Học các vận hành của QC và cách để giám sát chất lượng của sản phẩm.
Thứ 6:

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


11

Học về kiểm thử tương đương và kiểm thử giá trị biên
Học cách Product Owner làm việc và phân tích yêu cầu của khách hàng cùng với
Product Owner (phần 1)


Tuần 2:
Thứ 2:
Học về các mơ hình phát triển, xác định cấp độ kiểm thử
Học cách để thuyết trình hay hơn, về các kỹ năng thuyết trình (phần 1)
Cách tạo test case dùng Zephyr và đăng nó lên JIRA. (phần 1)
Thứ 4:
Học về kiểm thử trên Web (phần 1)
Học về ngôn ngữ Java (phần 1)
Cách tạo test case dùng Zephyr và đăng nó lên JIRA. (phần 2)
Học kiểm thử trên Web (phần 2)
Thứ 6:
Học về cách test layout trên web sử dụng CSS Viewer
Học cách Product Owner làm việc và phân tích yêu cầu của khách hàng cùng với
Product Owner (phần 2)
Hiểu rõ về quy trình kiểm thử của cơng ty, công việc của Leader QC và cách làm việc
với khách hàng.

Tuần 3:
Thứ 2:
Học tiếng anh
Học viết báo cáo cho QC
Học cách kiểm thử trên Mobile (phần 1)
Thứ 5:
Học cách kiểm thử trên Mobile (phần 2)
Học về kiểm thử trạng thái
Học cách để thuyết trình hay hơn, về các kỹ năng thuyết trình (phần 2)
Học về ngơn ngữ Java (phần 2)
Nắm hết các cơ bản về QC và cách làm việc cho hiệu quả


<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


12

Tuần 4:
Thứ 2:
Học tiếng anh
Viết test case bằng Zephyr và đăng lên JIRA (phần 2)
Học về cách tìm bug và viết báo cáo cho bug (phần 1)
Thứ 5:
Học về Selenium Webdriver (phần 1)
Học về kiểm thử bảng chân trị
Học cách Product Owner làm việc và phân tích yêu cầu của khách hàng cùng với
Product Owner (phần 3)
Thuyết trình về tất cả những gì đã thu thập được (bằng tiếng anh)

Tuần 5
Thứ 2 và thứ 4:
Học tiếng anh
Học cách Product Owner làm việc và phân tích yêu cầu của khách hàng cùng với
Product Owner (phần 4)
Học về TestNG
Học Selenium Web Driver (phần 2)
Thứ 5:
Học API Testing (phần 1)
Học layout testing
Học Static testing technique (Kiểm thử từ bước có yêu cầu hệ thống)

Học sử dụng Git trên BitBucket

Tuần 6:
Từ ngày 15/4/2021, công ty đã ra dự án cho nhóm thực tập cùng làm về đặt bệnh việc để
khám, có 3 phần gồm (khách hàng, phòng khám và quản trị). Dùng ReactJS, Java
Sprint, Microservice, … đẩy lên heroku. QC làm thuần tuần 1, từ tuần 2 có áp dụng
Automation. Dùng Selenium (Page Object Model và Page Pactory, DataProvider,
BDD). Qua đó tiếp thu được nhiều kiến thực thực tế về cách làm việc trong mơ hình
Agile, kiểm thử bằng tay và kiểm thử tự động.

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


13

2.3. Một số hình ảnh về source code bài tập trong quá trình thực tập:

Hình 1.3 Sử dụng Map trong Java

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


14

Hình 1.4 Sử dụng List trong Java


<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


15

Hình 1.5 Sử dụng Array trong Java

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


16

Hình 1.6 Sử dụng OOP Trong Java

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


17

Hình 1.7 Sử dụng TestNG

<GVHD: Lê Thanh Trọng>

<SVTH: Ngơ Tấn Phát>



18

Hình 1.8 Sử dụng Page Object Model

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


19

Hình 1.9 Sử dụng Page Factory

Hình 2.0 Sử dụng Data Provider
<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


20

Hình 2.1 Sử dụng Gherkin

<GVHD: Lê Thanh Trọng>

<SVTH: Ngơ Tấn Phát>



21

Hình 2.2 Sử dụng Cucumber BDD

Hình 2.3 Cấu hình file test Runner để chạy Junit

Hình 2.4 Cấu hình file pom.xml

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


22

Hình 3.0 Path Parameters trong Rest Assured

Hình 3.1 Query Parameters trong Rest Assured

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


23

Hình 3.2 Sử dụng Rest Assured để lấy response time

<GVHD: Lê Thanh Trọng>


<SVTH: Ngô Tấn Phát>


24

Hình 3.3 Kết quả chạy Rest Assured

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


25

CHƯƠNG 3:
DỰ ÁN THỰC TẾ
(**Lưu ý: Dự án này thuộc quyền sở hữu của cơng ty, và phía cơng ty chỉ cho phép tiết lộ
thông tin tổng quan của dự án, và không cho phép chia sẻ hay tiết lộ mã nguồn dự án ra bên
ngoài. Nếu bị phát hiện sẽ bị xử lý theo pháp luật. Mong quý thầy cơ thơng cảm).

3.1. Thơng tin dự án:
Theo như chính sách bảo mật của công ty, em chỉ được phép mô tả ngắn gọn về dự án mà em đã
tham gia:
 HICLINIC là một ứng dụng web cho phép người dùng đặt bác sĩ từ các phịng khám để
họ có thể tự khám. HICLINIC sử dụng 3 urls cho 3 portal khác nhau (admin portal, clinic
portal và patient portal) và lần lượt dành cho 3 kiểu người dùng khác nhau (admin hệ
thống, nhân viên phòng khám và bệnh nhân). Admin portal dùng để quản lý đơn hàng
của bác sĩ cũng như doanh thu và cho phép phòng khám đăng ký khám chữa bệnh. Clinic
portal cho phép các phòng khám đăng ký khám bệnh trên ứng dụng để có thể tiếp cận
khách hàng. Patient portal bệnh nhân được sử dụng để cho phép bệnh nhân tìm kiếm

phịng khám và bác sĩ để đặt lịch khám.
 Dự án được chia ra làm 3 sprint để phát triển
 Team dự án gồm 15 developer, 7 tester, 3 product owner, 1 project manager
 Team dự án trên được chia ra làm 3 team nhỏ, mỗi team đều có đầy đủ các vai trị khác
nhau (developer, tester, product owner) và vai trò của mỗi scrum team là phát triển từng
portal trên.
 Dự án được phát triển theo mơ hình Agile/Scrum
 Một sprint trong dự án kéo dài 2 tuần
 Công cụ quản lý sử dụng trong dự án:
 Jira:

Quản lý task của từng thành viên trong dự án

 Confluence:

Quản lý tài liệu liên quan đến dự án

<GVHD: Lê Thanh Trọng>

<SVTH: Ngô Tấn Phát>


×