1. Trang chủ
  2. » Giáo Dục - Đào Tạo

báo cáo thực tập manual test

33 2 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo Cáo Thực Tập Manual Test
Tác giả Nguyễn Trung Đức
Người hướng dẫn Nguyễn Đức Minh
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Phần Mềm
Thể loại báo cáo thực tập
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 33
Dung lượng 1,89 MB

Nội dung

Cộng đồng người dùng thậmchí đã phản ánh rằng "Garoon giảm đáng kể khối lượng công việc quản trị."Điều này làm tăng hiệu quả và tiện ích trong quá trình quản lý hệ thống.Có thể được liên

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

Manual Test

Công ty thực tập: CYBOZU

Người phụ trách: Nguyễn Đức Minh

Thực tập sinh: Nguyễn Trung Đức

TP Hồ Chí Minh, tháng 1 năm 2024

Trang 2

LỜI MỞ ĐẦU

Trong thời đại Cách mạng Công nghiệp 4.0, công nghệ thông tin và đặc biệt làngành Công nghệ Phần mềm đóng một vai trò quan trọng trong sự phát triểntoàn diện của xã hội Công nghệ Web, là cơ sở cho việc sản xuất trang web, đãđáp ứng nhu cầu đa dạng của con người từ mua sắm, cung cấp kiến thức đếngiao tiếp Với hơn 1.5 tỷ trang web hiện đại, nhu cầu tạo ra các trang web mớivẫn không ngừng tăng lên

Để một trang web thu hút người sử dụng, nó cần phải đáp ứng được cả yếu tốhình thức và nội dung Sự đòi hỏi này tạo ra một thách thức lớn cho các độingũ phát triển web, đặt ra câu hỏi làm thế nào để đảm bảo sản phẩm đạt chấtlượng cao về cả hai mặt này

Để đối mặt với thách thức này trong ngành công nghiệp web, em đã chọn conđường trở thành Manual Test Lựa chọn này không chỉ là một sự thay đổi về vịtrí mà em muốn đạt được, mà còn là cam kết đối với việc đóng góp vào chấtlượng của sản phẩm Làm Manual Test cho phép em kiểm tra và đánh giá sảnphẩm từ góc độ người dùng cuối, đảm bảo rằng nó không chỉ đẹp mắt mà cònhoạt động hiệu quả và đáp ứng đúng nhu cầu của người sử dụng Thông quacông việc này, em mong muốn mang lại giá trị và đóng góp vào sự thành côngcủa dự án

Trang 3

LỜI CẢM ƠN

Em xin trân trọng gửi lời cảm ơn công ty Cybozu đã tạo điều kiện cho em cơ hộiđược thực tập tại công ty Dù trong thời gian ngắn nhưng nhờ sự chỉ dẫn nhiệttình của anh Nguyễn Đức Minh , em đã tiếp thu những kiến thức quan trọng để

có thể tham gia một dự án thực tế

Chân thành cảm ơn các bạn cùng nhóm và các anh chị trong công ty đã bỏ ranhiều thời gian, công sức để hướng dẫn, hướng dẫn, giúp đỡ em tận tình trongkhi làm quen môi trường mới cũng như trong việc tiếp cận kiến thức côngnghệ, kỹ năng kiểm thử phần mềm và tư duy sản phẩm để có thể thực hiện tốt

dự án cá nhân và dự án thực tế trong thời gian qua

Em cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗtrợ, tạo điều kiện em làm báo cáo này

TP HCM, ngày 2 tháng 1 năm 2024

Nguyễn Trung Đức

Trang 4

NHẬN XÉT CỦA KHOA

Trang 5

MỤC LỤC

LỜI MỞ ĐẦU

LỜI CẢM ƠN

MỤC LỤC

CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP

1.1 Giới thiệu về Cybozu

1.2 Giới thiệu về các sản phẩm nổi bật của công ty

1.2.1 Garoon

1.2.2 Kintone

1.3 Lịch làm việc khi thực tập tại công ty

CHƯƠNG 2: NỘI DUNG THỰC TẬP

2.1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty

2.2 Nghiên cứu kỹ thuật

2.3.1 Viết tescase cho Garoon

2.3.2 Automation test cho app Đặt lịch

Trang 6

CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP 1.1 Giới thiệu về Cybozu

Cybozu đang phát triển một phần mềm hợp tác để phục vụ cho công việcnhóm trên toàn thế giới Mục tiêu của Cybozu là trở thành nhà sản xuất phầnmềm hợp tác số 1 thế giới Cybozu đã và đang phát triển phần mềm dựa trênnền tảng và on-premise

Phần mềm chính của Cybozu là Garoon, một sản phẩm phần mềm hợp tácdành cho doanh nghiệp, có khả năng đáp ứng nhu cầu của các công ty quy môlớn Sản phẩm chính khác là kintone, một nền tảng ứng dụng doanh nghiệp

Trang 7

không cần mã lập trình cho các nhóm, giúp người dùng nhanh chóng xây dựngứng dụng tuyệt vời và cơ sở dữ liệu động.

Cybozu không chỉ phát triển và tư vấn giải pháp tùy chỉnh và tích hợp cho cácsản phẩm Cybozu mà còn xây dựng Trải nghiệm Phát triển (DX) của sảnphẩm.1.2 Sản phẩm công ty

1.2 Giới thiệu về các sản phẩm nổi bật của công ty

1.2.1 Garoon

Giao diện người dùng của Garoon được tối ưu hóa để đơn giản và dễ sử dụngcho mọi đối tượng người dùng Đây không chỉ là một sản phẩm không yêu cầuchi phí đào tạo, thậm chí trong các công ty với đội ngũ nhân viên có sự chênhlệch về kiến thức Công nghệ thông tin Sự dễ dàng trong việc tiếp cận và sửdụng là một điểm mạnh của sản phẩm này

Các chức năng:

Dễ dàng vận hành ngay cả trong cơ cấu tổ chức phức tạp của một công ty với hàng chục nghìn người

Trang 8

Việc quản lý quyền truy cập được điều chỉnh và tổ chức phân cấp trong Cybozugiúp kiểm soát thông tin một cách hiệu quả, ngay cả trong các tổ chức quy môlớn Với màn hình quản lý dễ hiểu, việc thiết lập các quyền truy cập phức tạpcũng trở nên trực quan và thuận tiện.

Chức năng quản lý hệ thống

Khảo sát người dùng năm 2019

Trang 9

Quản lý vận hành có thể được tổ chức một cách hợp lý thông qua các màn hìnhquản lý dễ hiểu, giúp vận hành diễn ra mà không đòi hỏi kiến thức chuyên mônsâu rộng và dễ dàng chuyển giao quyền quản lý Cộng đồng người dùng thậmchí đã phản ánh rằng "Garoon giảm đáng kể khối lượng công việc quản trị."Điều này làm tăng hiệu quả và tiện ích trong quá trình quản lý hệ thống.

Có thể được liên kết với các hệ thống khác như kintone và Microsoft 365

Do có nhiều giải pháp có thể tích hợp được với Garoon, bạn hoàn toàn có thểtùy chỉnh và kết hợp chúng theo đặc thù và yêu cầu cụ thể của lĩnh vực kinhdoanh mà bạn đang hoạt động Garoon có khả năng hoạt động như một cổngkết nối linh hoạt, cho phép bạn tích hợp nhanh chóng các giải pháp và ứngdụng khác vào hệ thống nội bộ của mình Điều này mang lại lợi ích trong việctối ưu hóa quy trình làm việc và cung cấp một trải nghiệm người dùng liềnmạch và hiệu quả

Trang 10

API cho phép tùy chỉnh an toàn để phù hợp với doanh nghiệp của bạn

Được trang bị API có thể được sử dụng để tùy chỉnh JavaScript / CSS Nó cũng

có các chức năng cho phép vận hành chương trình một cách an toàn, chẳnghạn như giới hạn phạm vi tùy chỉnh

Được hỗ trợ bởi trung tâm khách hàng

Vào năm 2019, trung tâm khách hàng của Cybozu đã nhận được đánh giá cao

Trang 11

nhất là 3 sao trong tiêu chuẩn đánh giá HDI "Giám sát" do HDI-Japan (Hiệp hội

hệ điều hành

1.2.2 Kintone

kintone là nền tảng phần mềm quản trị CSDL - đặc biệt trong kinh doanh Phần mềm này cho phép quản trị viên xây dựng các ứng dụng cơ sở dữ liệu và ứng dụng quản trị kinh doanh mà không cần phải viết code

kintone được công bố năm 1997 và trong 20 năm tồn tại của mình, kintone đãtrở thành công cụ phổ biến hàng đầu trong nhiều tổ chức lớn trên thế giới.Trong thời gian gần đây kintone bước đầu gia nhập thị trường Việt Nam vàcũng đã có khá nhiều doanh nghiệp sử dụng kintone đưa ra nhiều sự lựa chọncực kỳ linh hoạt và dễ hiểu trong quá trình xây dựng các ứng dụng này Các tínhnăng đi kèm sẽ giúp bạn tập trung vào các thao tác chuyên môn, tạo ra cácbiểu đồ động phản ánh tình hình dữ liệu thay vì phải bận tâm đến việc pháttriển giải pháp cho việc quản trị dữ liệu

Những tính năng nổi bật của Kintone

Trang 12

Dễ dàng chuyển đổi

Có thể chuyển danh sách thông tin khách hàng, thông tin điều kiện, báo cáo bug đã tạo trên Excel thành database bằng thao tác đơn giản, và có thể chia sẻ trên cloud

Dễ dàng tìm kiếm thống kê

Những dữ liệu đã đăng kí ở trên kintone sẽ được tích lũy và chuyển thành cơ

sở dữ liệu

Trang 13

Chỉ vài cú click chuột là có thể nắm bắt một cách tức thì tình hình dự án haybất kì điều gì.

Không cần kiến thức chuyên môn

Có thể tạo, chỉnh sửa ứng dụng chỉ bằng thao tác chuột Có thể sắp xếp(mapping) tự do cho phù hợp với nghiệp vụ của khách hàng

Trang 14

Tối ưu hóa cho thiết bị di động

kintone hoàn toàn tương thích với mobile, chỉ cần 1 chiếc smartphone ,chúng

Trang 15

ta hoàn toàn giữ kết nối của mình liên tục với mạng lưới CSDL của mình.

1.3 Lịch làm việc khi thực tập tại công ty

Khoảng thời

gian thực tập

21/08/2023-27/10/2023

Thời gian làm

việc trong ngày

Công việc hằng ngày bắt đầu từ lúc 8h30 đến 17h30

Thời gian nghỉ

trưa

Thời gian nghỉ trưa 1 tiếng từ 11h45 tới 12h45

Thời gian báo

cáo

Sau mỗi ngày cuối buổi sẽ báo cáo tiến độ công việc với anhhướng dẫn.Để giải quyết hay trao đổi về dự án

Sprint planning Vào sáng hàng tuần sẽ họp 15 phút để lên kế hoạch cho

tuần tiếp theo.Tổng kết công việc và phân công nhiệm vụ.Weekly review Cuối buổi thứ 6 hàng tuần sẽ có buổi seminar về topic đã

dduwoj giao để tổng kết trao đổi những vấn đề gặp phải và xem lại những nhiệm vụ trong tuần của em

CHƯƠNG 2: NỘI DUNG THỰC TẬP2.1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty

Thời gian: 1 ngày

Trang 16

2.2 Nghiên cứu kỹ thuật

❖ Tìm hiểu và trình bày theo nhóm về sản phẩm Garoon

❖ Giới thiệu Scrum

❖ Giới thiệu Security cơ bản

❖ Định hướng QA

Trang 17

❖ Họp báo cáo tuần

Kết quả: Hiểu về sản phẩm Garoon, cách làm việc nhóm, Scrum Team, các kỹthuật Security và định hướng cho bản thân mình

2.2.2 Tuần 2

Nội dung:

❖ Tổng quan về kiểm thử phần mềm

❖ Cách làm việc trong công ty Nhật (HORENSO)

❖ Giới thiệu qui trình phát triển phần mềm của công ty

❖ Giới thiệu về test case và các kỹ thuật thiết kế test case

❖ Họp báo cáo tuần

Kết quả: Hiểu được tổng quan về kiểm thử phần mềm, cách làm việc của công

ty và các kỹ thuật quan trọng trong việc thiết kế testcase

2.2.3 Tuần 3

Nội dung:

❖ Hướng dẫn cách đọc requirement/spec

❖ Tự đọc/tìm hiểu về requirement và spec

❖ Hướng dẫn cách viết test case/checklist

❖ Thực hành viết test case/ checklist theo yêu cầu

Trang 18

❖ Thực hành viết checklist

❖ Chia sẻ văn hoá của công ty Cybozu

❖ Họp báo cáo tuần

Kết quả: Hiểu được các đọc requirement, viết được testcase, checklist cho sảnphẩm Garoon của công ty

2.2.4 Tuần 4

Nội dung:

❖ Cách báo cáo lỗi hiệu quả

❖ Thực hành kiểm tra theo test case, tìm lỗi và báo cáo lỗi

❖ Tìm hiểu về Web application

❖ Họp báo cáo tuần

Kết quả: Học được cách báo cáo lỗi, kiểm tra lỗi theo testcase và các webapplication

Trang 19

❖ Họp báo cáo tuần

Kết quả: Tìm hiểu được các loại API và sử dụng Postman để test API

❖ Chai Assertion Lib

❖ Test script development

❖ Review, fix issue

Trang 20

Kết quả: Học được cách code automation test, cách sử dụng thử viện và đượcnhận feedback của mentor về code để có thể code tốt hơn trong tương lai

2.2.8 Tuần 8

Nội dung:

❖ XSS, CSRF và Developer tool

❖ Apply testing

❖ Báo cáo cuối khóa

Kết quả: Học được về các loại tấn công đối với server, cách sử dụng các tool để

có thể triển khai việc phát hiện các lỗ hỏng đó

2.3 Thực hiện dự án thực tế

2.3.1 Viết tescase cho Garoon

2.3.1.1 Kỹ thuật áp dụng

2.3.1.1.1 Phân vùng tương đương(Equivalence class)

Phân vùng tương đương: là kỹ thuật thực hiện test theo từng class đồng giá trị (tập hợp điều kiện cùng một thao tác)

Tập hợp giá trị input có cùng một kết quả xử lý, tập hợp thời gian có cùng một kết quả xử lý, tập hợp kết quả export được xử lý cùng một giá trị nhập

2.3.1.1.2 Phân tích giá trị biên(Boundary Value Analysis)

Phương pháp phân tích giá trị biên sẽ đưa ra các giá trị đặc biệt, bao gồm loại

dữ liệu, giá trị lỗi, bên trong, bên ngoài biên giá trị, lớn nhất và nhỏ nhất

Trang 21

2.3.1.1.3 Bảng quyết định(Decision Table)

Bảng quyết định hỗ trợ lựa chọn test case một cách có hệ thống và có nhiều lợiích trong việc nhận biết vấn đề tiềm ẩn và sự không rõ ràng trong bản đặc tả yêu cầu Phương pháp này quyết định số testcase tối thiểu với độ bao phủ tối đa

2.3.1.1.4 Đoán lỗi (Error Guessing)

Đoán Lỗi không có quy tắc rõ ràng để kiểm thử, test case có thể được thiết kế tùy thuộc vào tình hình, hoặc hoặc luồng công việc trong các tài liệu mô tả chức năng hoặc khi một lỗi không mong muốn / không được mô tả trong tài liệu được tìm thấy trong khi hoạt động kiểm thử Phương pháp này sẽ dựa vào kinh nghiệm của Tester(QA) để phân tích và xác định các lỗi có thể xảy ra sau

đó viết các ca kiểm thử để đưa ra các lỗi đó

2.3.1.2 Mô tả dự án

Thực hiện viết testcase đối với chức năng Mention của App Bulletin Board

Trang 23

2.3.1.3 Quá trình thực hiện

❖ Hiểu Yêu Cầu:Trước khi bắt đầu viết test case, kiểm thử viên cần hiểu rõ yêu cầu chức năng và phi chức năng của ứng dụng Điều này bao gồm việc đọc tài liệu yêu cầu, họp với nhóm phát triển, và đảm bảo rằng mọi đặc tả đã được hiểu đúng

❖ Xác định Kịch bản Kiểm thử: Dựa trên yêu cầu, kiểm thử viên sẽ xác định các kịch bản kiểm thử cần được thực hiện Mỗi kịch bản kiểm thử là một tình huống hay hoàn cảnh cụ thể mà người kiểm thử muốn kiểm tra

❖ Chuẩn bị Dữ liệu Kiểm thử:Kiểm thử viên cần chuẩn bị dữ liệu cần thiết cho các kịch bản kiểm thử Điều này có thể bao gồm tạo các bản ghi trong cơ sở dữ liệu, chuẩn bị dữ liệu đầu vào, và thiết lập môi trường kiểm thử

❖ Viết Test Case:Việc viết test case bao gồm mô tả chi tiết về các bước cần thực hiện để kiểm thử một chức năng cụ thể Mỗi test case cần mô tả các bước cụ thể, dữ liệu đầu vào, và kết quả mong đợi Các bước cần được viết một cách rõ ràng và dễ hiểu

❖ Sử dụng Template Test Case:Việc sử dụng một template test case chuẩn giúp đảm bảo rằng mọi test case đều có định dạng và cấu trúc nhất định.Template thường bao gồm các phần như Tiêu đề, Mục mô tả, Bước thựchiện, Dữ liệu kiểm thử, Kết quả mong đợi, và Ghi chú

❖ Kiểm thử Độc lập: Sau khi test case đã được viết, kiểm thử viên thường kiểm thử độc lập để đảm bảo rằng mọi bước là chính xác và kết quả đúng như mong đợi

Trang 24

❖ Đánh giá và Điều chỉnh:Test case cần được đánh giá và điều chỉnh đều đặn để đảm bảo tính hiệu quả và tính đầy đủ của chúng Điều này bao gồm việc cập nhật test case khi có thay đổi yêu cầu hoặc mã nguồn.

2.3.1.4 Kết quả

Đảm bảo tính chính xác và đầy đủ của quá trình kiểm thử Mỗi bước kiểm thử được mô tả chi tiết, từ dữ liệu đầu vào đến kết quả mong đợi, giúp tránh bỏ sót bất kỳ khía cạnh nào của app Bulletin Board

2.3.1.5 Thuận lợi

❖ Do đã làm qua nhiều web khác nhau nên có thể nhanh chóng tiếp cận, hiểu được các lỗi hay xảy ra đối với trang web từ đó có thể tập trung viếttestcase đối với trang web đó

❖ Kỹ năng trình bày ngắn gọn, súc tích, từ ngữ viết testcase đi đúng trọng tâm nên những người thực hiện test bug có thể dễ dàng theo dõi theo tài liệu

2.3.1.6 Khó khăn

❖ Do lần đâu tiền tiếp xúc với testcase nên vẫn chưa biết hướng đi thích hợp trong việc viết testcase như thế nào là hợp lí

❖ Chưa quen với template của công ty nên còn khó khăn trong việc viết

❖ Có quá nhiều luồng riêng biệt nên đôi khi viết testcase còn bị thiếu một vài case quan trọng

Trang 25

2.3.2 Automation test cho app Đặt lịch

2.3.2.1 Kỹ thuật áp dụng

2.3.2.1.1 Javascript

JavaScript là ngôn ngữ lập trình được nhà phát triển sử dụng để tạo trang web tương tác Từ làm mới bảng tin trên trang mạng xã hội đến hiển thị hình ảnh động và bản đồ tương tác, các chức năng của JavaScript có thể cải thiện trải nghiệm người dùng của trang web Là ngôn ngữ kịch bản phía máy khách, JavaScript là một trong những công nghệ cốt lõi của World Wide Web Ví dụ: khi duyệt internet, bất cứ khi nào bạn thấy quảng cáo quay vòng dạng hình ảnh, menu thả xuống nhấp để hiển thị hoặc màu sắc phần tử thay đổi động trên trang web cũng chính là lúc bạn thấy các hiệu ứng của JavaScript

2.3.2.2 Mô tả dự án

Thực hiện viết automation test cho app Schedule của Garoon

Trang 28

2.3.2.3 Quá trình thực hiện

Trang 29

❖ Xác định Phạm Vi Automation:Trước hết, cần xác định rõ phạm vi của việc automation test Điều này bao gồm việc quyết định những kịch bản kiểm thử nào nên được tự động hóa và những kịch bản nào nên duy trì làm kiểm thử thủ công.

❖ Chọn Công Cụ Automation:Chọn công cụ automation phù hợp với yêu cầu của dự án Các công cụ như Selenium, Appium, JUnit, TestNG, hoặc Cucumber là những lựa chọn phổ biến Sự chọn lựa này cần dựa trên ngôn ngữ lập trình sử dụng trong dự án, tính năng của ứng dụng, và nhu cầu kiểm thử cụ thể

❖ Thiết Lập Môi Trường Automation:Thiết lập môi trường automation bao gồm cài đặt và cấu hình công cụ automation, khởi tạo dự án automation,

và đảm bảo rằng tất cả các thành phần cần thiết như driver, frameworks,

và thư viện đều được cài đặt đúng

❖ Phân tích và Thiết Kế Test Cases:Chuyển đổi các test cases từ dạng thủ công sang dạng automation Phân tích và thiết kế các test script theo cú pháp và cấu trúc của ngôn ngữ lập trình sử dụng Xác định dữ liệu cần thiết và các bước thực hiện

❖ Viết Automation Scripts:Viết automation scripts theo các test cases đã thiết kế Scripts này nên được viết một cách cẩn thận để đảm bảo tính

ổn định và linh hoạt Sử dụng các hàm và thư viện để giảm sự lặp lại và tăng tính bảo trì

❖ Chạy và Kiểm Tra Automation Scripts:Chạy automation scripts và kiểm tra kết quả Đảm bảo rằng scripts chạy đúng, và kết quả được so sánh

Ngày đăng: 15/05/2024, 09:10

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Logo Cybozu - báo cáo thực tập manual test
Hình 1.1. Logo Cybozu (Trang 6)
w