1. Trang chủ
  2. » Cao đẳng - Đại học

báo cáo thực tập xây dựng ứng dụng hỗ trợ kiểm thử API và ứng dụng thay thế dữ liệu cho TEMPLATE

25 14 0

Đ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

Định dạng
Số trang 25
Dung lượng 2,1 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trân trọng gửi lời cảm ơn Trung tâm Giải pháp và Dịch vụ phần mềm HPT đã tạo điềukiện cho em có cơ hội được thực tập tại công ty.Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt

Trang 1

KHOA CÔNG NGHỆ PHẦN MỀM

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

XÂY DỰNG ỨNG DỤNG HỖ TRỢ KIỂM THỬ API VÀ ỨNG DỤNG THAY THẾ DỮ

LIỆU CHO TEMPLATE

Thực tập sinh : Phạm Quang Nhân

Trang 2

LỜI MỞ ĐẦU

Ngày nay, ngành công công nghiệp phần mềm đang rất phát triển đặc biệt Với tốc độphát triển vô cùng mạnh mẽ, ngành công nghệ phần mềm đã và đang là xu hướng phát triển củathế giới

Ngành phần mềm được sinh ra là do nhu cầu giải quyết các nhu cầu của con người mộtcách đơn giản và nhanh chóng, là một thứ không thể thiếu trong đời sống ngày này 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ệ Ngành công nghiệp phầnmềm non trẻ Việt Nam đã và đang phát triển mạnh mẽ, để hòa nhập với những công ty hàng đầu

về phần mềm trên thế giới Vì lý do này, em quyết định chọn ngành kỹ thuật phần mềm làmđịnh hướng cho việc học tập của mình

Sau ba 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 tìm hiểu, bổ sung kiến thức 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ì Vì vậy, em quyết định chọn Công ty Cổ phần Dịch vụ Công nghệ Tinhọc HPT - 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

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 3

Trân trọng gửi lời cảm ơn Trung tâm Giải pháp và Dịch vụ phần mềm HPT đã tạo điềukiện cho em có cơ hội được thực tập tại công ty.

Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của của các anh chị, em đãtiếp thu được những kiến thức quan trọng để có thể làm được một sản phẩm phần mềm mang lạigiá trị cho công ty Chân thành cảm ơn các anh chị đã bỏ ra nhiều thời gian,công sức để hướngdẫn chúng em hoàn thành đợt thực tập này

Đặc biệt cảm ơn anh Nguyễn Châu Giang, đã training ,mở mang cho em kiến thức về lập

trình , hướng dẫn, giúp đỡ cho em tận tình cả những khó khăn trong công việc, đến những khó

khăn việc làm quen với môi trường mới; cảm ơn anh Nguyễn Trọng Trí, đã chỉ dẫn em về

những kinh nghiệm làm một sản phẩm có giá trị mà em chưa có cơ hội được biết đến và đồngthời là cách làm báo cáo, lên kế hoạch, những kỹ năng không thể thiếu để có thể làm ra một sảnphẩm trong thời gian qua

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ềukiện em làm bài báo cáo này

Phạm Quang NhânTpHCM, ngày 01 tháng 10 năm 2020

Trang 4

NHẬN XÉT CỦA KHOA

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 5

1 Giới thiệu công ty HPT 7

2 Sản phẩm của công ty 8

Chương 2: Nội dung project Tool kiểm thử API 11

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

2 Nghiên cứu kỹ thuật 11

2.1 Đọc tài liệu 11

2.2 Tìm hiểu ngôn ngữ java 13

2.3 Lập trình ODM 13

2.4 Tìm hiểu về API và JSON 14

2.5 Tìm hiểu về multi-thread 15

3 Thực hiện project 15

4 Lịch làm việc 16

Chương 3: Chi tiết về project Tool kiểm thử API 16

1 Giới thiệu về project 16

1.1 Yêu cầu 17

1.2 Các yêu cầu khác 17

2 Thực hiện 17

3 Kế hoạch 17

Chương 4: Nội dung project Thay thế template 20

1 Nghiên cứu kỹ thuật 20

Trang 6

2 Thực hiện project 21

3 Lịch làm việc 21

Chương 5: Chi tiết về project Template 22

1 Giới thiệu về project 22

1.1 Yêu cầu 22

1.2 Các yêu cầu khác 22

2 Thực hiện 22

3 Kế hoạch 22

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 7

Chương 1: Giới thiêu công ty thực tập

1 Giới thiệu công ty HPT

Được thành lập vào ngày 13/01/1995, Công ty Cổ phần Dịch vụ Công nghệ Tin họcHPT (HPT Vietnam Corporation) đã xây dựng bề dày uy tín 25 năm thấu hiểu vàphát triển những ứng dụng công nghệ tiên tiến trong lĩnh vực CNTT và Truyềnthông cho khách hàng tại Việt Nam và quốc tế

HPT hiện nay đã phát triển khắp Việt Nam và từng bước vươn ra thị trường thế giới:Trụ sở chính tại TP.HCM, Chi nhánh tại Hà Nội, Chi nhánh tại Đà Nẵng và Chinhánh tại Campuchia

Với triết ký kinh doanh bằng năng lực, sự tận tụy với khách hàng, hợp tác chặt chẽvới các hãng CNTT hàng đầu thế giới, HPT đã thúc đẩy các doanh nghiệp và tổ chứctrên khắp Việt Nam ứng dụng giải pháp, dịch vụ CNTT tiên tiến trên thế giới, manglại hiệu quả thiết thực cho tất cả các lĩnh vực mũi nhọn của nền kinh tế cũng như hỗtrợ công tác quản lý của các cơ quan Nhà nước

Tiến bước vào giai đoạn phát triển tiếp theo, HPT đã trở thành Doanh nghiệp Khoahọc Công nghệ, quyết tâm nâng cao năng lực nghiên cứu và sáng tạo các giải phápcông nghệ cho quốc gia Trụ sở mới của HPT tại khu Công nghệ cao TP.HCM(SHTP) nay đã hoàn thành Từ không gian khoa học này, HPT sẽ đầu tư và triển khainhiều giải pháp, dịch vụ công nghệ mới để mở rộng đối tượng khách hàng mà mìnhphục vụ, thúc đẩy công cuộc chuyển đổi số của quốc gia

Trang 8

2 Sản phẩm của công ty

HPT chuyên cung cấp các dịch vụ Công nghệ thông tin (CNTT) hỗ trợ các doanhnghiệp và tổ chức nhằm mang lại sự ổn định cao nhất cho hệ thống CNTT, từ đóphục vụ tốt hơn cho các mục tiêu quản trị, sản xuất kinh doanh của doanh nghiệp và

tổ chức

Các sản phẩm của HPT tập trung chủ yếu ở 5 mảng

a Giải pháp Công nghệ thông tin

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 9

b Giải pháp Dữ liệu

c Giải pháp Bảo mật

Trang 11

Chương 2: Nội dung project Tool kiểm thử API

Với project 1 với mục tiêu giúp sinh viên viên thực tập có thêm hiểu biết về một trongnhững số cách xử lý đầu vào với số lượng lớn, điều kiện phức tạp, đồng thời đồng thời rènluyện những kỹ năng mềm như làm việc nhóm, thuyết trình, giao tiếp Tại công ty, sinh viên có

cơ hội được học tập, khám phá và làm việc trong một môi trường phát triển phần mềm chuyênnghiệp

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

Nội dung : Giới thiệu về công ty, cách tổ chức của công ty

Được nghe người phụ trách giới thiệu về công ty, quá trình thành lập và phát triên(như đã nhắc đến ở trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức củacông ty

Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công tynhư thời gian đi làm, các quy định cần phải tuân thủ, cách sử dụng email trong côngviệc…

Kết quả : Hiểu thêm về công ty HPT, quá trình thành lập và phát triển Có thêm các kỹ

năng về việc sử dụng email trong công việc, làm việc có kế hoạch, có kỷ luật, có tráchnhiệm hơn

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

2.1 Đọc tài liệu

Thời gian : 6 ngày

Nội dung : Đọc tài liệu về IBM ODM.

Trong thời gian này, supervisor đã hướng dẫn thực tập sinh tìm hiểu về IBM-làmột trong số các công ty công nghệ thông tin có quy mô lớn nhất thế giới, và cáccông nghệ IBM cung cấp mà HPT trực tiếp sử dụng, đặc biệt là ODM một bộ công cụ

xử lý các điều kiện với số lượng lớn và phức tạp

Trang 12

ODM – Trình quản lý các hoạt động ra quyết định là một sản phẩm được cung cấpbởi IBM-là một trong số các công ty cộng nghệ thông tin có quy mô lớn nhất thế giới,chuyên về lĩnh vực cung cấp các sản phẩm, dịch vụ phần cứng – phần mềm và dịch

vụ IBM đã tồn tại trong nhiều thập kỷ qua trở thành nhà cung cấp máy tính lớn nhất.Bên cạnh đó Ibm đã chuyển trọng tâm từ phần cứng sang phần mềm và dịch vụ Đếnnhững năm 2010, IBM lại nhấn mạnh và đầu tư nhiều hơn vào các lĩnh vực dịch vụdưa trên đám mây

ODM kết hợp các công cụ dò tìm và thay đổi để cung cấp một hệ thống quản lýquy tắc kinh doanh dễ phát triển, theo dõi, kiểm tra và thử nghiệm

ODM bao gồm hai thành phần chính:

_ Decision server: để quản lý các quyết định và phát hiện sự kiện Máy chủ quyếtđịnh cung cấp thời gian chạy và các thành phần phát triển để tự động hóa phản ứngcủa các quyết định có nhiều biến động dựa trên bối cảnh cụ thể của một quy trình,giao dịch hoặc tương tác Bạn có thể giám sát mạng kinh doanh để khám phá và thựchiện hành động trên các mẫu dữ liệu dựa trên sự kiện, sau đó xử lý thông tin này dựatrên hàng trăm hoặc thậm chí hàng nghìn quy tắc kinh doanh để xác định cách phảnhồi trong hệ thống front-end và back-end

_ Decision center: đưa việc quản lý quyết định vào tay những người điều hànhdoanh nghiệp Với Decision center, người dùng doanh nghiệp có thể quản lý cácquyết định và sự kiện trực tiếp dựa trên kiến thức tổ chức và các phương pháp haynhất, với sự phụ thuộc hạn chế vào bộ phận CNTT Mức độ phụ thuộc có thể daođộng từ việc người dùng doanh nghiệp đánh giá logic nghiệp vụ do nhà phát triểnthực hiện, đến việc kiểm soát hoàn toàn đối với đặc điểm kỹ thuật, tạo, thử nghiệm vàtriển khai logic nghiệp vụ của người dùng doanh nghiệp

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 13

Thực hiện : đọc và tìm hiểu các tài liệu đã nêu trên.

Kết quả : Có cái nhìn tổng quan về IBM ODM.

2.2 Tìm hiểu ngôn ngữ java

Thời gian : 2 ngày

Nội dung : Được training về các kỹ thuật java, những kiến thức quan trọng cho việc

thiết kệ bộ rules ODM

- Lập trình hướng đối tượng

Các kiến thức cơ bản về lập trình hướng đối tượng như khái niêm, các đặc tínhnhư tính kế thừa, tính đóng gói, tính ảo hóa, tính đa hình

Thực hiện :

- Tham gia đầy đủ các buổi training của công ty

- Làm các bài thực hành, kiểm tra về kiến thức đã học

Kết quả :

- Nâng cao kỹ năng lập trình với ngôn ngữ java

- Ngoài ra còn được biết thêm một số quy tắc trong việc viết code sao cho đúngchuẩn, dễ đọc, dễ hiểu

2.3 Lập trình ODM

Thời gian : 4 ngày

Nội dung: Các kiến thức cơ bản về ODM để có thể làm ra một bộ rules đơn giản.

- Khái niệm cơ bản về ODM.

Nắm được các khái niệm cơ bản về ODMNgoài ra, trainer còn cung cấp cho thực tập sinh những khái niệm cơ bản trongODM như properties, decision table, decision flow, …, là những khái niệm rất cơbản để thiết kế rules

Thực hiện :

Trang 14

- Tìm kiếm tài liệu trên mạng để tìm hiểu thêm

Kết quả :

- Hiểu được những khái niệm cơ bản trong lập trình đồ họa với ODM

- Đã thiết kế được bộ rules cơ bản và deploy lên server thành các api để sử dụng

2.4 Tìm hiểu về API và JSON

Thời gian : 6 ngày

Nội dung : Sau khi đã tìm hiểu về bộ rules ODM, công ty có nhu cầu xây dựng một

công cụ để có thể kiểm thử bộ rules với số lượng lớn và thời gian đáp ứng nhanh

- Tìm hiểu về API và làm quen với kiểu dữ liệu JSON:

API (Application Programming Interface) là một tập các quy tắc và cơ chế mà

theo đó, một ứng dụng hay một thành phần sẽ tương tác với một ứng dụng hay thànhphần khác API có thể trả về dữ liệu mà bạn cần cho ứng dụng của mình ở những kiểu

dữ liệu phổ biến như JSON hay XML

REST (REpresentational State Transfer) là một dạng chuyển đổi cấu trúc dữ

liệu, một kiểu kiến trúc để viết API Nó sử dụng phương thức HTTP đơn giản để tạo cho giao tiếp giữa các máy Vì vậy, thay vì sử dụng một URL cho việc xử lý một số thông tin người dùng, REST gửi một yêu cầu HTTP như GET, POST, DELETE, vv đến một URL để xử lý dữ liệu

RESTful API là một tiêu chuẩn dùng trong việc thiết kế các API cho các ứng

dụng web để quản lý các resource RESTful là một trong những kiểu thiết kế API được sử dụng phổ biến ngày nay để cho các ứng dụng (web, mobile ) khác nhau giao tiếp với nhau

REST hoạt động chủ yếu dựa vào giao thức HTTP Các hoạt động cơ bản nêu

trên sẽ sử dụng những phương thức HTTP riêng

 GET (SELECT): Trả về một Resource hoặc một danh sách Resource

 POST (CREATE): Tạo mới một Resource

 PUT (UPDATE): Cập nhật thông tin cho Resource

 DELETE (DELETE): Xoá một Resource

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 15

Create, Read, Update, Delete – Tạo, Đọc, Sửa, Xóa.

Với bộ rules được public thành API từ ODM, kiểu dữ liệu trả về mặc định là JSONJSON là viết tắt của JavaScript Object Notation, là một kiểu định dạng dữ liệutuân theo một quy luật nhất định mà hầu hết các ngôn ngữ lập trình hiện nay đều

có thể đọc được JSON là một tiêu chuẩn mở để trao đổi dữ liệu trên web

Thực hiện :

- Tham gia đầy đủ các buổi training

- Tạo ứng dụng gọi API ODM và tương tác với kiểu dữ liệu json

Kết quả:

- Đã có thể tạo ra những ứng dụng gọi API cơ bản

2.5 Tìm hiểu về multi-thread

Thời gian : 6 ngày

Nội dung : Để đáp ứng được nhu gọi kiểm thử với số lượng lớn lên đến hàng ngàn

trường hợp đối với 1 API nên cần phải sử dụng đa luồng

Về cơ bản, MultiThread là khả năng của một nền tảng (hệ điều hành, máy ảo vv) hoặccác ứng dụng/chương trình để tạo ra một quá trình bao gồm nhiều Thread được thựcthi Khi tạo ra các Thread chạy song song, chương trình sẽ có hiệu năng tốt hơn là chỉluôn chạy một luồng main thread

Trang 16

3 Thực hiện project

Sau một tháng được training và thực hành, thực tập sinh đã nắm được những kiến thực

cơ bản về java, ODM, API, JSON, Trong tháng thứ hai, trainer đã hướng dẫn thực tậpsinh áp dụng những kiến thức đã học để thực hiện một công cụ kiểm thử api sinh ra từODM

Chi tiết đồ án sẽ được nói ở phần sau

4 Lịch làm việc

Tuần Công việc Người hướng dẫn

Mức độ hoàn thành

Nhận xét của người hướng dẫn

1

- Tìm hiểu về công

ty, cách tổ chức củacông ty

- Làm quen với cáccông cụ làm việctrong công ty

- Học cách trao đổi,làm việc qua email

Anh Nguyễn ChâuGiang

2

- Tìm hiểu ngôn ngữlập trình java

- Thực hành java

- Làm bài test java

Anh Nguyễn ChâuGiang

3 - Lập trình ODM Anh Nguyễn ChâuGiang

4

- Tìm hiểu về API vàJSON

- Tìm hiểu về multithread

Anh Nguyễn ChâuGiang và anhNguyễn Trọng Trí

5 Giai đoạn Alpha:- Lên kế hoạch

- Viết Framework

Anh Nguyễn ChâuGiang và anhNguyễn Trọng Trí

7 Giai đoạn Beta:- Viết các chức năng

nâng cao hơn

Anh Nguyễn ChâuGiang và anhNguyễn Trọng Trí

8 Giai đoạn Beta và giai

đoạn kết thúc, báo cáo :

- Progress bar

- Fix bug, cơ chế

Anh Nguyễn ChâuGiang và anhNguyễn Trọng Trí

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 17

Chương 3: Chi tiết về project Tool kiểm thử API

1 Giới thiệu về project

Với mỗi rules API, input có rất nhiều trường lên đến hàng chục, các tester phải kiểm thử rất nhiều lần để có thể phủ được hết các trường hợp Việc viết các case

đã tốn nhiều thời gian, việc gọi API để so sánh còn tốn nhiều thời gian hơn Từ

đó, công ty có nhu cầu phát sinh công cụ kiểm thử rules ODMCông cụ được phát triển trên nền tảng NET(C#)

1.1 Yêu cầu

Với yêu cầu input là 1 file excel chứa nhiều input cho 1 rule được chon trước,kèm theo output mong muốn kết quả sẽ là 1 file excel với input cũ, output mongmuốn và output thực tế và kết quả trả về là đúng hay sai đồng thời là tổng hợpđúng bao nhiêu % trên tổng số testcase

1.2 Các yêu cầu khác

Đáp ứng nhiều kiểu input khác nhau trong file excel:

- Object

- Json string

- Các biến của 1 json string

- Tùy chỉnh được số thread sẽ sử dụng

2 Thực hiện

- Phạm Quang Nhân

3 Kế hoạch

Giai đoạn Alpha:

- Hoàn thành input file excel và gọi api để kiểm thử

- Chỉ hổ trợ chế độ Single Thread

Trang 18

Kết quả :

- Hầu hết các tính năng trên đã được thực hiện

Giai đoạn Beta:

- Hoàn thành chế độ Multi Thread

- Hỗ trợ tạo file backlog

- Chuyển ứng dụng sang dạng Web (ASP.NET MVC)

- Hỗ trợ file excel lớn

- Thời gian đáp ứng 10k dòng trong file excel khoảng 30 giây

- Kết quả : Đã hoàn thành toàn bộ những tính năng trên

Phạm Quang Nhân

Thực tập tốt nghiệp

Trang 20

Chương 4: Nội dung project Thay thế dữ liệu cho

Template

Với project 2 với mục tiêu giúp sinh viên viên thực tập có thêm hiểu biết cách xử

lý file văn bản, tham gia xây dựng nâng cấp một module đã có trong hệ thống xử

lý của công ty

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

1.1 Đọc tài liệu

Thời gian : 4 ngày

Nội dung : Đọc tài liệu về module xử lý văn bản cũ.

Đọc tài liệu tương tác với trình văn bản Microsoft office word

Thực hiện : đọc và tìm hiểu các tài liệu đã nêu trên.

Kết quả : Biết các cách tương tác cơ bản với file word.

1.2 Tìm hiểu về đệ quy

Nội dung : sử dụng đệ quy để lấy dữ liệu từ json

- Với dữ liệu json:

Các trường dữ liệu có nhiều tầng, mỗi tầng là có thể có nhiều tầng khác nên để cóthể lấy hết mọi trường dữ liệu cần sử dụng đệ quy

Ngày đăng: 05/09/2021, 21:07

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w