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

Báo cáo thực tập phát triển ứng dụng JAVA

25 70 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 857,91 KB

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

Nội dung

KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP PHÁT TRIỂN ỨNG DỤNG JAVA Công ty thực tập: KMS Technology Vietnam Người phụ trách: Lương Anh Duy Thực tập sinh: 16520825 - Hồ Thái Ngọc TP...

Trang 1

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

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

PHÁT TRIỂN ỨNG DỤNG JAVA

Công ty thực tập: KMS Technology Vietnam

Người phụ trách: Lương Anh Duy

Thực tập sinh: 16520825 - Hồ Thái Ngọc

TP Hồ Chí Minh, tháng 08 năm 2020

Trang 2

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

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

PHÁT TRIỂN ỨNG DỤNG JAVA

Công ty thực tập: KMS Technology Vietnam

Người phụ trách: Lương Anh Duy

Thực tập sinh: 16520825 - Hồ Thái Ngọc

TP Hồ Chí Minh, tháng 08 năm 2020

Trang 3

Ngày nay, với sự phát triển mạnh mẽ của xã hội thì công nghệ là một phần không thể thiếu Công nghệ phần mềm là một trong số đó, nó có tiềm năng phát triển rất lớn, ngành phát triển nhanh nhất hiện nay và nhu cầu tuyển dụng đang tăng rất mạnh ở khắp mọi nơi trên thế giới Các xu thế hiện đại trong lĩnh vực: Internet of things (IOT), xác thực không cần mật khẩu, trí thông minh nhân tạo (AI) đang được chú trọng bởi các công ty công nghệ trên thế giới, Việt Nam là một trong số đó

Là sinh viên ngành công nghệ phần mềm, việc tiếp cận với một môi trường phát triển phần mềm chuyên nghiệp là điều cấp thiết, qua đó hình thành thế giới quan, có cái nhìn mang tính chiến lược, ước tính ưu điểm và hạn chế của các công nghệ dùng để phát triển phần mềm Vì vậy, em quyết định chọn KMS Technology - 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 dự định này

Trang 4

Trân trọng gửi lời cảm ơn KMS Technology Vietnam đã tạo điều kiệ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 nhóm hướng dẫn, em đã tiếp thu được những kiến thức quan trọng để có thể xây dựng phần mềm ứng

dụng dựa trên nền tảng java Chân thành cảm ơn các anh chị trong Katalon Team đã bỏ

ra nhiều thời gian,công sức để hướng dẫn em hoàn thành chương trình thực tập

Đặc biệt cảm ơn anh Lương Anh Duy, đã training kỹ thuật, hướng dẫn, giúp đỡ

cho chúng em tận tình từ khó khăn trong công việc, đến những khó khăn việc thích ứng

với môi trường mới; cảm ơn anh Mr Huy, hỗ trợ chúng em rất nhiều về các vấn đề kỹ thuật trong quá trình phát triển ứng dụng; cảm ơn anh Mr.Sơn và Mr.Tuan, đã chỉ dẫn

em về cách phân hoạch, lên kế hoạch, những kỹ năng không thể thiếu; để có thể phát

triển và bảo trì phần mềm Katalon Studio 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ều kiện em làm bài báo cáo này

Tên sinh viên thực hiện

16520825 - Hồ Thái Ngọc

TP Hồ Chí Minh, tháng 08 năm 2020

Trang 5

MỤC LỤC

Mục lục 1

1 Giới thiệu công ty thực tập 2

1.1 Giới thiệu công ty KMS Technology Vietnam 2

1.2 Giới thiệu sản phẩm công ty 3

2 Nội dung thực tập 5

2.1 Tìm hiểu văn hóa công ty và kỹ năng cơ bản 5

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

2.2.1 Các công cụ làm việc 5

2.2.2 Nâng cao kiến thức lập trình, phát triển ứng dụng bằng ngôn ngữ Java 6

2.2.3 Tiếp cận UX/UI đảm bảo hiệu năng cho hệ thống bên dưới và trải nghiệm thân thiện cho người dùng 6

2.2.4 Quản lý dữ liệu trên nhiều hệ quản trị cơ sở dữ liệu 6

2.3 Thực hiện dự án 7

2.4 Lịch làm việc 7

3 Chi tiết về dự án 10

3.1 Giới thiệu dự án 10

3.2 Thực hiện dự án 10

3.3 Kế hoạch phát triển 11

3.3.1 Giai đoạn thực nghiệm 11

3.3.2 Giai đoạn phân tích kiến trúc 11

3.3.3 Giai đoạn phát triển 12

3.3.4 Giai đoạn bảo trì, sửa lỗi 17

3.3.5 Giai đoạn kiểm thử 17

4 Kết luận 18

4.1 Kết quả đạt được 18

4.2 Định hướng 18

5 Danh sách bảng 19

6 Danh sách hình ảnh 20

7 Tài liệu tham khảo 21

Trang 6

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

1.1 Giới thiệu công ty KMS Technology Vietnam

KMS Technology là nhà cung cấp phần mềm, dịch vụ thử nghiệm và tư vấn giải pháp Có trụ sở tại Atlanta, GA với các văn phòng ở California và Việt Nam Công ty xây dựng, cung cấp các giải pháp phần mềm hàng đầu trong ngành

KMS Technology cung cấp dịch vụ và giải pháp tối ưu phần mềm cho hơn 99% khách hàng là các công ty ở Mỹ với các dịch vụ: phát triển phần mềm theo yêu cầu, bảo trì hệ thống sản phẩm phần mềm, quản lý ứng dụng; kiểm thử và bảo đảm chất lượng phần mềm Đến nay nó đã mở rộng quy mô lên gần 1000 nhân viên trong đội ngũ nhân

sự của mình Những thành tựu đáng kể mà KMS Technology gặt hái được không phải công ty nào cũng dễ dàng có được (Table 1) Chất lượng vượt trội ở dịch vụ đã giúp cho KMS Technology 3 năm liền nhận giải thưởng Sao Khuê cho hạng mục: Dịch vụ gia công, xuất khẩu phần mềm xuất sắc

Hiện tại, công ty tập trung vào hai khía cạnh mang tính chiến lược:

- Software development services: Cung cấp sản phẩm giúp đẩy nhanh quá trình đưa phần mềm có chất lượng tiến vào thị trường

• Application Transformation

• Mobile App Development

• Ongoing Platform Maintenance

Hình 1 Công ty KMS Technology.

Trang 7

Table 1 Các con số thống kê về KMS

Ra mắt vào năm 2015, Katalon là một công cụ automation test mã nguồn mở thiết

kế theo khung end-to-end automation platform Katalon Studio hỗ trợ web, API và mobile automation Hiện tại đã có hơn 65000 người sử dụng, được bình chọn 2019 &

2020 Gartner Customer's Choice

- Katalon Studio: Robust test generation on all platforms

- Katalon Runtime Engine: Smart execution engine for enhanced automation efficiency

- Katalon Analytics: AI-based analytics for automation true value

Hình 2 Dự án Katalon.

Trang 8

1.2.1.2 Kobiton

Sản phẩm hợp tác của KMS Technology và Kinetic Ventures Kobiton phát hành chính thức vào năm 2017 Nó là một nền tảng mobile testing, giúp tăng tốc độ phân phối và thử nghiệm các ứng dụng di động bằng cách hỗ trợ các mẫu thử nghiệm thủ công và tự động trên các thiết bị thực, hoặc áp dụng điện toán đám mây

Kobiton hiện đang bổ sung các tính năng mới, như ‘Record&Playback’ cho phép người dùng trong doanh nghiệp tạo dựng kịch bản kiểm thử trên hàng trăm thiết bị khác nhau, đồng thời kiểm soát lỗi hoặc sự cố có thể ảnh hưởng đến người dùng cuối bằng

AI Việc tích hợp AI là bước tiến quan trọng giúp doanh nghiệp áp dụng kiểm thử tự động ở quy mô lớn hơn Hiện tại có hơn 580 doanh nghiệp, 67000 người sử dụng

Hình 3 Dự án Kobiton.

Trang 9

2 NỘI DUNG THỰC TẬP

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

Thời gian: 2 ngày

Thời gian: 1 tuần

Hình 4 UpStar Labs (KMS Technology)

Trang 10

Nội dung: Người hướng dẫn yêu cầu thực tập sinh sử dụng các công cụ hỗ trợ cho quá

trình phát triển dự án

- Công cụ quản lý phiên bản (version control): GitHub, GitBash

- Công cụ phát triển phẩn mềm (IDE): Eclipse

- Công cụ giao tiếp: KMS - Workplace, Skyper

- Công cụ soạn thảo: Visual Studio Code, Notepad ++

Thực hiện:

- Nhận nhiệm vụ thông qua các Assignment trên GitHub hoặc trực tiếp từ người hướng dẫn, tạo phiên làm việc tương ứng, đóng góp mã nguồn (code) cho dự án Katalon Studio

- Mọi thông tin trao đổi qua KMS - Workplace

- Làm quen cách quản lý, soạn thảo, kiểm thử phần mềm từ các công cụ được yêu cầu

Kết quả: Thông thạo thao tác phụ vụ việc quản lý và phát triển mã nguồn các dự án đang được tham gia

2.2.2 Nâng cao kiến thức lập trình, phát triển ứng dụng bằng ngôn ngữ Java

Thời gian: 2 tuần

Nội dung: Được hướng dẫn các nguyên lý, mẫu thiết kế, các ngoại lệ trong Java Thực hiện: Áp dụng một số nguyên lý vào dự án Katalon Studio

Kết quả: Củng cố lại kiến thức Java Core, tiếp cận theo hướng đối tượng

2.2.3 Tiếp cận UX/UI đảm bảo hiệu năng cho hệ thống bên dưới và trải

nghiệm thân thiện cho người dùng

Thời gian: 1 tuần

Nội dung: Tìm hiểu chủ đề UX Writing

Thực hiện: Thiết kế giao diện, nội dung thông báo tuân theo các nguyên lý thiết kế cốt

lõi

Kết quả: Áp dụng cho quá trình thiết kế giao diện trong một phần nhỏ của dự án Katalon

Studio

2.2.4 Quản lý dữ liệu trên nhiều hệ quản trị cơ sở dữ liệu

Thời gian: 1 tuần

Nội dung: Sử dụng, thao tác tương tự với một số hệ quản trị CSDL trên cùng một bộ dữ

liệu thử nghiệm

Trang 11

Thực hiện: Đánh giá sự phù hợp của từng loại dữ liệu với hệ quản trị CSDL, khảo sát

thuận lợi, khó khăn của SQL và NoSQL

Kết quả: Ứng dụng phát triển chức năng kiểm thử có sử dụng data

2.3 Thực hiện dự án

Sau một tháng được học tập và thực hành, thực tập sinh đã nắm được những kiến thức phục vụ cho phát triển dự án thực, có khả năng quản lý và hoàn thành công việc được giao

Trong tháng thứ hai, người hướng dẫn giúp thực tập sinh áp dụng những kiến thức sẵn có để mở rộng hoặc bảo trì một số chức năng trong dự án Katalon Studio đang song song giữa hai giai đoạn phát triển và phát hành

Trong tháng thứ ba, thực tập sinh được thực hành phát triển một vài chức năng từ giai đoạn thiết kế đến triển khai và kiểm thử Viết báo cáo phân tích kỹ thuật cho dự án Chi tiết sẽ được nói ở phần sau

- Tìm hiểu văn hóa

công ty, qui trình làm

việc, làm bài test

- Học trao đổi thông tin

Trang 13

cho chức năng test –

data trong Katalon:

MySQL, MS SQL,

H2, MongoDB

dự án Katalon

Hoàn thành

10 - Thiết lập, kiểm soát

Exception trong java

Hoàn thành

12 - Thống kê các thư viện

trọng tâm được sử

dụng trong dự án

- Lập báo cáo kỹ thuật

và rủi ro phát sinh của

các thư viện mục tiêu

tổng kết

Hoàn thành

Trang 14

3 CHI TIẾT VỀ DỰ ÁN

3.1 Giới thiệu dự án

Katalon Studio, sản phẩm cung cấp các giải pháp và công cụ hỗ trợ kiểm thử tự động hiệu quả, đẩy nhanh tiến trình đưa sản phẩm tiến vào thị trường, cũng như tạo ra cộng đồng kiểm thử tự động lớn, mang tính đột phá Sản phẩm tập trung vào yếu tố:

accessibility, flexibility Katakon giải quyết các tác vụ phức tạp để người dùng tập trung

vào kế hoạch kiểm thử

Trang 15

- Thực tập sinh tham gia bộ phận phát triển, bảo trì phân khúc desktop-testing và web-testing trong KS Team

3.3 Kế hoạch phát triển

3.3.1 Giai đoạn thực nghiệm

- Viết test case, test suit trên Katalon Studio 6.14

- Thực hiện kiểm thử một login-form bằng KS-testing thông qua công cụ web record

- Thực hiện kiểm thử một bảng dữ liệu được lưu trên MySQL 8.x

3.3.2 Giai đoạn phân tích kiến trúc

- Phân tích cách tổ chức nhóm chức năng của phần mềm theo plugins

- Phân tích ưu điểm và hạn chế của kiến trúc phần mềm

- Phân tích cách tiếp cận theo hướng đối tượng

- Phân tích sự phù hợp giữa kiến trúc và chiến lược kinh doanh

Hình 7 Ứng dụng Katalon Studio trên Desktop.

Trang 16

3.3.3 Giai đoạn phát triển

- Phát triển chức năng tắt tiến trình web browser đang hoạt động

1 // command used to kill a task

2 taskkill /f /im chromedriver.exe

3 taskkill /f /im IEDriverServer.exe

4 taskkill /f /im geckodriver.exe

5 taskkill /f /im firefox.exe

6 taskkill /f /im chrome.exe

Trang 17

- Phát triển chức năng cập nhật web browser

- Phát triển, kiểm thử chức năng data-testing với hệ quản trị CSDL: MySQL

Hình 10 Chứng năng được áp dụng từ Katalon Studio version 7.0

1 // Ensure we have MySQL 8.x Driver in classpath

2 Class.forName ("com.mysql.cj.jdbc.Driver");

3 // create our database connection

4 String dbname = "information_schema";

5 String url = " jdbc:mysql://localhost:3306/" + dbname;

6 String username = "root";

7 String password = "";

8 Connection conn = DriverManager.getConnection(url, username, password);

9 // our SQL SELECT query

10 String query = "SELECT * FROM ENGINES";

11 // create the java statement

12 Statement st = conn.createStatement();

13 // execute the query, and get a java resultset

14 ResultSet rs = st.executeQuery(query);

Trang 18

- Phát triển, kiểm thử chức năng data-testing với hệ quản trị CSDL: H2

- Thử nghiệm chức năng data-testing với hệ quản trị CSDL: MariaDB

- Tái thiết lập giao diện form setting data-connector

25 // Ensure we have mariadb Driver in classpath

26 Class.forName("org.mariadb.jdbc.Driver");

27 // create our mysql database connection

28 String host = "localhost";

29 String dbname = "information_schema";

30 String url = "jdbc:mariadb://" + host + "/" + dbname;

31 String username = "root";

32 String password = "";

33 Connection conn = DriverManager.getConnection(url, username, password);

34 // our SQL SELECT query

35 String query = "SELECT * FROM ENGINES";

36 // create the java statement

17 // create our database connection

18 Connection conn = DriverManager.getConnection ("jdbc:h2:~/test", "sa","");

19 // our SQL SELECT query

20 String query = "SELECT * FROM ENGINES";

21 // create the java statement

22 Statement st = conn.createStatement();

23 // execute the query, and get a java resultset

24 ResultSet rs = st.executeQuery(query);

Trang 19

Hình 12 Form thiết lập test data sau khi làm lại

Trang 20

- Tạo dialog hiển thị thông tin chi tiết của một số ngoại lệ (exception)

- Nâng cấp thao tác kéo thả trên cây thư mục quản lý Test Suite, Test Case

Hình 13 Kéo thả test case trên cây thư mục.

Hình 14 Binding dữ liệu cho test suite có data.

Trang 21

3.3.4 Giai đoạn bảo trì, sửa lỗi

- Cập nhật lại thư viện hỗ trợ JDBC trong chức năng data-testing có dữ liệu

- Lấy thông tin một số ngoại lệ hiển thị cho người dùng, do thao tác sai

- Sử dụng Jenkins trên hệ đều hành Windows, Ubuntu

3.3.5 Giai đoạn kiểm thử

- Kiểm thử khả năng hoạt động các chức năng đã tham gia phát triển ở giai đoạn phát triển được trình bài ở mục phát triển trước khi release phiên bản 7.0, 7.1

- Viết test case (White-box testing) cho quá trình kiểm thử

Trang 22

4 KẾT LUẬN

4.1 Kết quả đạt được

Trong ba tháng thực tập, giúp em tiếp cận được môi trường làm việc chuyên nghiệp:

- Củng cố kiến thức hướng đối tượng, java core

- Nắm bắt các principles, một số design patterns trong Java

- Nắm bắt một số nguyên tắc trong thiết kế UX/UI

- Phát triển chức năng ứng dụng theo qui trình kiểm soát chặt chẽ

- Có khả năng ứng dụng nhiều hệ quản trị CSDL để thiết kế và lưu trữ dữ liệu

- Thiết kế dữ liệu theo nhiều hướng ràng buộc

- Hiểu được một số rủi ro khi sử dụng Maven dependencies

- Làm quen với các phương pháp kiểm thử phần mềm, kiểm thử tự động

- Tham gia dự án Katalon Studio thực tế, hoàn thành hơn 10 chức năng có giá trị

Trang 23

5 DANH SÁCH BẢNG

Table 1 Các con số thống kê về KMS 3Table 2 Lịch làm việc 7

Trang 24

6 DANH SÁCH HÌNH ẢNH

Hình 1 Công ty KMS Technology 2

Hình 2 Dự án Katalon 3

Hình 3 Dự án Kobiton 4

Hình 4 UpStar Labs (KMS Technology) 5

Hình 5 Sự hỗ trợ từ Katalon 10

Hình 6 Các nền tảng kết nối với Katalon Studio 10

Hình 7 Ứng dụng Katalon Studio trên Desktop 11

Hình 8 Chức năng cập nhật WebDrivers 12

Hình 9 Chức năng tìm và tắt WebDriver processes 12

Hình 10 Chứng năng được áp dụng từ Katalon Studio version 7.0 13

Hình 11 Khung ghi query 15

Hình 12 Form thiết lập test data sau khi làm lại 15

Hình 13 Kéo thả test case trên cây thư mục 16

Hình 14 Binding dữ liệu cho test suite có data 16

Trang 25

7 TÀI LIỆU THAM KHẢO

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

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w