1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG HỆ THỐNG TỰ ĐỘNG HÓA THAO TÁC TRÊN CÁC NỀN TẢNG TRÌNH DUYỆT WEB ĐỂ NHẬN TIỀN THƯỞNG

26 8 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

Tiêu đề Xây Dựng Hệ Thống Tự Động Hóa Thao Tác Trên Các Nền Tảng Trình Duyệt Web Để Nhận Tiền Thưởng
Tác giả Bùi Hoàng Lâm, Hoàng Lan Hương, Nguyễn Thị Linh, Nguyễn Đức Huy, Nguyễn Tá Lộc
Người hướng dẫn Thạc sỹ Lê Như Hiền
Trường học Trường Đại học Công nghiệp Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại báo cáo thực nghiệm
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 26
Dung lượng 1,46 MB

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

Nội dung

Cùng với sự phát triển không ngừng của mạng máy tính, công nghệ thông tin có những đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet đã trở thành sản phẩm có giá trị hết sức lớn lao và đã trở thành công cụ không thể thiếu của mỗi người dân trong thời đại hiện nay. Giờ đây việc tìm kiếm thông tin hay làm những công việc online đã trở nên thật dễ dàng với tất cả mọi người, chỉ cần một máy tính hay điện thoại kết nối với Internet là bạn có thể làm được những việc bạn muốn làm hay xử lý công việc từ xa. Với Internet, chúng ta có thể thực hiện được nhiều công việc với tốc độ nhanh hơn và chi phí thấp hơn so với cách thức truyền thống. Chính điều này đã thúc đẩy sự khai sinh và phát triển của nhiều loại hình công việc mới lạ, tạo thêm nhiều cơ hội việc làm cho mọi người.

Trang 1

Giáo viên hướng dẫn : Thạc sỹ Lê Như Hiền Nhóm thực hiện : 03

Nhóm sinh viên :

1 Bùi Hoàng Lâm MSV: 2021607692 LỚP: KHMT02K16

2 Hoàng Lan Hương MSV: 2021606475 LỚP: KHMT02K16

KHOA CÔNG NGHỆ THÔNG TIN

-🙠🕮🙢 -

Trang 2

MỤC LỤC

DANH MỤC HÌNH ẢNH 3

MỞ ĐẦU 4

1 Giới thiệu đề tài 4

2 Mục đích đề tài 5

3 Đối tượng nghiên cứu 5

4 Nhiệm vụ nghiên cứu 5

5 Phương pháp nghiên cứu 5

6 Bố cục 5

CHƯƠNG I CƠ SỞ LÝ THUYẾT 6

1. Selenium 6

1.1 Khái niệm Selenium 6

1.2 Ưu điểm của Selenium trong kiểm thử tự động hóa WebDriver. 6

2 WPF 6

2.1 Khái niệm 6

2.2 Mục tiêu của công nghệ WPF 7

2.3 Một số tính năng của WPF 7

2.4 Thành phần của WPF 8

3 EEPlus 8

3.1 Thư viện EEPlus làm việc với Excel trong lập trình C# 8

3.2 Cài đặt thư viện EEPlus 8

CHƯƠNG II KHẢO SÁT VÀ PHÂN TÍCH 9

1. Khảo sát người dùng 9

1.1 Phương thức khảo sát (Câu hỏi trực tiếp) 9

1.2 Thu hoạch 9

2 Khảo sát và phân tích hệ thống hiện có trên thị trường 9

2.1 Ưu điểm 11

Trang 3

2.2 Nhược điểm 11

3 Khảo sát và phân tích trang web 11

3.1 Khảo sát từng trang web 12

3.2 Nhận xét 14

CHƯƠNG III THIẾT KẾ HỆ THỐNG 15

1 Ý tưởng về hệ thống tự động hóa 15

2 Thiết kế giao diện người dùng với WPF 15

2.1 Các phương tiện được sử dụng: 15

2.2 Kết quả giao diện 17

3 Tự động hóa các thao tác trên WebDriver 17

3.1 Tự động mở trình duyệt web Google Chrome Portable cho hệ thống 17

3.2 Tự động mở trình duyệt web Brave Portable cho hệ thống 20

4 Liên kết dữ liệu hệ thống với Excel Microsoft bằng EEPlus 21

4.1 Tiến hành lấy dữ liệu từ Excel Microsoft ra màn hình console. 21

4.2 Đưa vào trong project 22

KẾT LUẬN 23

TÀI LIỆU THAM KHẢO 25

1 Sách tài liệu 25

2 Web 25

Trang 4

DANH MỤC HÌNH ẢNH

Hình II.2.1: BF4-IDO 10

Hình II.2.2: Project BF4 – IDO 10

Hình II.3.1.a: Website 5ire 12

Hình II.3.1.b: Website Galxe OB PASS 12

Hình II.3.1.c.1: Website Neon Dex 13

Hình II.3.1.c.2: Website sau bước đầu kiểm thử 13

Hình III.2.2: Giao diện hệ thống AutoTool1308 17

Hình III.3.1.a.1: Tải trình Google Chrome Portable bản 133 xuống 18

Hình III.3.1.a.2: Sau khi giải nén file Google Chrome Portable 18

Hình III.3.1.b.1: Dowload phiên bản tương ứng 19

Hình III.3.1.b.2: Kết quả 19

Hình III.3.1.b.3: Code mở Google Chrome Portable 19

Hình III.3.2.a.1: Tải trình Brave Portable xuống 20

Hình III.3.2.a.2: Sau khi giải nén file Brave Portable 20

Hình III.3.2.b: Code mở trình duyệt Brave Portable 21

Hình III.4.1.1: Test code 21

Hình III.4.1.2: Kết quả sau khi chạy thử 22

Hình III.4.2: Hàm lấy dữ liệu từ Excel trong Project 22

Trang 5

MỞ ĐẦU

1 Giới thiệu đề tài

Cùng với sự phát triển không ngừng của mạng máy tính, công nghệ thông tin có những đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao khác Mạng Internet đã trở thành sản phẩm có giá trị hết sức lớn lao và đã trở thành công cụ không thể thiếu của mỗi người dân trong thời đại hiện nay

Giờ đây việc tìm kiếm thông tin hay làm những công việc online đã trở nên thật dễ dàng với tất cả mọi người, chỉ cần một máy tính hay điện thoại kết nối với Internet là bạn có thể làm được những việc bạn muốn làm hay

xử lý công việc từ xa

Với Internet, chúng ta có thể thực hiện được nhiều công việc với tốc độ nhanh hơn và chi phí thấp hơn so với cách thức truyền thống Chính điều này đã thúc đẩy sự khai sinh và phát triển của nhiều loại hình công việc mới lạ, tạo thêm nhiều cơ hội việc làm cho mọi người

Một trong số những công việc online hiện đang được chú ý trên thị trường chính là kiếm tiền thưởng từ việc kiểm thử các trình duyệt web Công việc này vô cùng đơn giản, dễ dàng, không giới hạn độ tuổi, trình độ hay đối tượng, có thể thực hiện ở bất kì đâu nên đã nhanh chóng thu hút một lượng người tham gia vô cùng lớn

Nhưng phần thưởng được trả ngẫu nhiên cho người tham gia, mà lượng người tham gia ngày càng lớn nên đòi hỏi mỗi người dùng phải sử dụng nhiều tài khoản khác nhau để tham gia kiểm thử để gia tăng cơ hội nhận thưởng hoặc trúng nhiều phần thưởng hơn Từ đó, người dùng đòi hỏi phải

có công cụ hỗ trợ kiểm thử để tăng năng suất lao động của mình

Chính vì nắm bắt được những điều trên nên nhóm của chúng em đã lựa chọn chủ đề này nhằm mục đích xây dựng hệ thống tự động hóa thao tác trên các nền tảng trình duyệt Web để biến công việc kiểm thử bằng sức người thành kiểm thử tự động bằng hệ thống hỗ trợ, giúp người tham gia

Trang 6

kiểm thử tiết kiệm thời gian và công sức mà vẫn tăng khả năng nhận tiền thưởng

2 Mục đích đề tài

Mục đích của đề tài là xây dựng một hệ thống có khả năng:

- Tự động hóa điều khiển thao tác trên website

- Tự động hóa các thao tác dự án yêu cầu

- Tự động hóa với số lượng tài khoản lớn tăng khả năng nhận thưởng

3 Đối tượng nghiên cứu

Đối tượng nghiên cứu của đề tài là:

- UI web

- HTML

- Locator và Element

4 Nhiệm vụ nghiên cứu

Nhiệm vụ nghiên cứu của đề tài bao gồm:

- Xác định và làm rõ các vấn đề liên quan đến đề tài

- Xác định công cụ thực hiện và các thành phần của hệ thống

- Khảo sát, phân tích thiết kế hệ thống tự động hóa

- Khảo sát, phân tích các khả năng xảy ra lỗi của hệ thống

5 Phương pháp nghiên cứu

Phương pháp nghiên cứu đề tài:

- Nghiên cứu, tìm hiểu, phân tích, xây dựng nội dung của một hệ thống tự động hóa

- Sử dụng kiến thức đã học để xây dựng demo cho hệ thống tự động hóa

6 Bố cục

Mở đầu

Chương I: Cơ sở lý thuyết

Chương II: Khảo sát

Chương III: Thiết kế hệ thống

Kết luận và tài liệu

Trang 7

CHƯƠNG I CƠ SỞ LÝ THUYẾT

1 Selenium

1.1 Khái niệm Selenium

Selenium là một bộ công cụ kiểm thử tự động (Automation Testing)

mã nguồn mở hoàn toàn miễn phí và hỗ trợ hoạt động trên trình duyệt có nhiều nền tảng khác nhau như Linux, Windows, Mac, cho các ứng dụng web Với Selenium, bạn hoàn toàn có khả năng viết các test script bằng nhiều loại ngôn ngữ lập trình phổ biến khác nhau như C#, Java, Ruby, Python, PHP, Perl, Javascript,

Selenium khá giống với HP Quick Test nhưng điểm khác biệt lớn nhất của Selenium chính là khả năng dựa trên nền tảng web để tập trung vào tự động hoá các ứng dụng Kiểm thử Selenium không chỉ là một công

cụ độc lập mà nó còn là một bộ công cụ của phần mềm Mỗi bộ công cụ sẽ phục vụ cho từng yêu cầu kiểm thử khác biệt

1.2 Ưu điểm của Selenium trong kiểm thử tự động hóa WebDriver

₋ Mã nguồn mở

₋ Hỗ trợ đa ngôn ngữ

₋ Hoạt động trên nhiều hệ điều hành

₋ Hoạt động trên nhiều trình duyệt

₋ Dễ triển khai

₋ Không yêu cầu khởi động máy chủ

2 WPF

2.1 Khái niệm

mới hỗ trợ việc xây dựng giao diện đồ hoạ trên nền Windows

và có nhiều sự thay đổi về mọi mặt

Trang 8

₋ WPF được xem như thế hệ kế tiếp của WinForms, WPF tăng cường khả năng lập trình giao diện của lập trình viên bằng cách cung cấp các API cho phép tận dụng những lợi thế về đa phương tiện hiện đại

2.2 Mục tiêu của công nghệ WPF

₋ WPF được xây dựng nhằm vào ba mục tiêu cơ bản dưới đây:

• Cung cấp được một nền tảng thống nhất để xây dựng giao diện của người dùng

• Giúp người lập trình và người thiết kế giao diện làm việc cùng nhau một cách dễ dàng

• Cung cấp một công nghệ chung để xây dựng giao diện người dùng trên cả Windows và trình duyệt Web

₋ Trước khi WPF ra đời, việc tạo giao diện người dùng theo những yêu cầu mô tả ở ví dụ trên đòi hỏi cần áp dụng nhiều công nghệ khác nhau Giúp việc lập trình WPF trở nên dễ dàng

₋ Để tạo form, control và các tính năng kinh điển khác của một giao diện

đồ họa Windows, lập trình viên sẽ chọn Windows Forms, một phần của NET Framework Nếu cần hiển thị văn bản, Windows Forms có một số tính năng hỗ trợ văn bản trực tiếp

• Tất cả các thuộc tính của đối tượng trong WPF đều có thể được

xử lý để trở nên sinh động hơn

• Các lớp quản lý hiệu ứng tùy theo loại của thuộc tính được xử lý

₋ Nền tảng thống nhất để xây dựng giao diện người dùng

Trang 9

2.4 Thành phần của WPF

namespace System.Windows

Windows độc lập hay là một XBAP, một ứng dụng WPF điển hình bao giờ cũng gồm một tập các trang XAML và phần code tương ứng được viết bằng C# hoặc Visual Basic, còn gọi là các file code-behind

dùng, những công nghệ mà WPF chứa đựng có thể phân chia thành những thành phần độc lập

3 EEPlus

3.1 Thư viện EEPlus làm việc với Excel trong lập trình C#

Là công cụ tính toán với hiệu suất được cải thiện và nhiều tính năng/khả năng mới Các tính năng đáng chú ý nhất bao gồm hỗ trợ cho công thức mảng/công thức mảng động/lan tỏa và hỗ trợ cho một số chức năng mới phụ thuộc vào chức năng này Chúng tôi cũng đã cải thiện khả năng hỗ trợ xử lý các địa chỉ phức tạp và cách sử dụng các toán tử có phạm vi/địa chỉ

3.2 Cài đặt thư viện EEPlus

Nhấn chuột phải vào project → Manage Nuget Package → Browse

→ gõ EEPlus → Install

Trang 10

CHƯƠNG II KHẢO SÁT VÀ PHÂN TÍCH

1 Khảo sát người dùng

Sau khi khảo sát thị trường, nhóm chúng em đã tiến tới khảo sát khách hàng, những người đang làm việc trong thị trường công việc này cũng như những người đang có ý định hoạt động trong thị trường này Các nhóm khách hàng nhóm 3 tiến hành khảo sát (chủ yếu là những nhóm khách hàng hoạt động trên nền tảng mạng xã hội telegram):

- CrickDAO Comunity (25,666 thành viên)

- Bybit Việt Nam (22,169 thành viên)

- Trade Coin Undergroud (48,968 thành viên)

- HC CAPITAL (38,353 thành viên)

1.1 Phương thức khảo sát (Câu hỏi trực tiếp)

- Số lượng tài khoản kiểm thử mà người dùng nắm giữ

- Tỉ lệ nhận phần thưởng sau khi tham gia kiểm thử từ các dự án

1.2 Thu hoạch

- Thông thường, những người tham gia kiểm thử sẽ thử nghiệm ít nhất 10 tài khoản kiểm thử đối với một dự án để có cơ hội nhận được phần thưởng

- Người tham gia kiểm thử có mong muốn kiểm thử nhiều dự án một lúc

- Người tham gia kiểm thử có nhu cầu sử dụng các loại công cụ hỗ trợ trong quá trình kiểm thử trang web của các dự án để đẩy nhanh tiến độ công việc

2 Khảo sát và phân tích hệ thống hiện có trên thị trường

Sau khi khảo sát người dùng và các công cụ hỗ trợ mà người tham gia kiểm thử sử dụng, nhóm 3 đã tiến hành khảo sát một trong số những công cụ hỗ trợ hiện có trên thị trường: BF4 – IDO

Trang 11

Hình II.2.1: BF4-IDO

Hình II.2.2: Project BF4 – IDO

Trang 12

2.1 Ưu điểm

- Tiết kiệm thời gian khi vào các trang web cần kiểm thử (Khi chúng ta

dán các link web cần kiểm thử vào file ds_whitelist.txt hoặc TextBox ‘Link

muốn vào (phân cách bởi SPACE)’) thì hệ thống sẽ tự động mở ra trình

duyệt Google Chrome Portable và truy cập vào link tương ứng

- Khi người tham gia kiểm thử nhấn các nút tắt của hệ thống, hệ thống BF4 – IDO sẽ truy cập bào bộ dữ liệu lưu trong file thongtin_account.txt

và truyền vào những vị trí cần truyền những dữ liệu được gán sẵn vào phím tắt

=> Tiết kiệm được một phần thời gian cho người tham gia kiểm thử

2.2 Nhược điểm

- Chưa thể tự động hóa được các thao tác trên các trang trình duyệt web, người tham gia kiểm thử vẫn phải thao tác tay các hoạt động, sự kiện của trang web

- Chỉ có thể chạy đơn luồng (một dự án mỗi lần chạy)

- Vẫn còn cần người giám sát hệ thống

3 Khảo sát và phân tích trang web

Để đưa ra các hướng giải quyết cho hệ thống tự động hóa các thao tác trên trình duyệt web để nhận tiền thưởng, nhóm 3 đã tiến hành khảo sát một số các trang web được dự án yêu cầu kiểm thử

Các trang web nhóm 3 đã tiến hành khảo sát và phân tích:

Trang 13

3.1 Khảo sát từng trang web

a 5ire

Hình II.3.1.a: Website 5ire

- Các chức năng cần kiểm thử: Test chức năng ‘faucet’ của trang

Trang 14

- Các chức năng cần kiểm thử:

Participate’, button bên dưới label AT sẽ biến thành button

‘Claim’, chúng ta cần nhấn vào button ‘Claim’ đó

c Neon Dex

Hình II.3.1.c.1: Website Neon Dex

Hình II.3.1.c.2: Website sau bước đầu kiểm thử

Trang 15

- Các chức năng cần kiểm thử:

với ví của dự án

Sau khi kết nối ta sẽ test chức năng ‘swap’ của dự án:

truyền dữ liệu (số tiền mong muốn) vào các box nhập sau

đó click vào button bên dưới

3.2 Nhận xét

Sau khi tiến hành kiểm thử và phân tích một số trang web của các

dự án, chúng ta thấy tất cả các chức năng cần phải kiểm thử đều chưa được

tự động hóa, vẫn còn cần hoạt động của con người đối với các hoạt động click button, truyền dữ liệu vào box

Tuy nhiên, các thao tác này đều có thể được tự động hóa bằng Selenium WebDriver

Chúng ta có thể phân các hoạt động cần tự động hóa thành một trường hoạt động, từ đó xây dựng một hệ thống tự động hóa đối với các hoạt động kiểm thử này bằng Selenium WebDriver

Trang 16

CHƯƠNG III THIẾT KẾ HỆ THỐNG

1 Ý tưởng về hệ thống tự động hóa

Dựa vào tất cả các kiến thức và thông qua quá trình khảo sát và phân tích, nhóm 3 hướng tới một hệ thống tự động hóa thao tác trên các nền tảng trình duyệt Web để nhận tiền thưởng

Ý tưởng về hệ thống:

- Xây dựng giao diện dễ sử dụng, dễ tiếp cận được với đa số người dùng không biết về công nghệ thông tin

- Từ giao diện phát triển các chức năng như:

▪ Tự động truy cập vào link các website cần test trên Google Chrome Portable

▪ Tự động hóa các thao tác click trên trang web

▪ Đối với các box cần điền dữ liệu, hệ thống cần liên kết với dữ liệu người dùng trong Excel Microsoft để tự động điền vào các box trên website

▪ Chạy đa luồng (thực hiện nhiều dự án cùng lúc): Chạy đa nền tảng như Google Chrome Portable, Google Brave Portable

▪ Tự động đổi IP ngăn bot dự án check được người dùng đang cheat

2 Thiết kế giao diện người dùng với WPF

2.1 Các phương tiện được sử dụng:

- Button:

phần giao diện người dùng (UI) cơ bản có thể chứa nội dung đơn giản, chẳng hạn như văn bản và cũng có thể chứa nội dung phức tạp,

• Cấu trúc: <Button> </Button>

Trang 17

- CheckBox:

thể hiện các tùy chọn mà người dùng có thể chọn hoặc xóa Bạn có thể sử dụng một hộp kiểm duy nhất hoặc bạn có thể nhóm hai hộp kiểm trở lên

• Cấu trúc: <CheckBox> </CheckBox>

- ComboBox:

chọn Danh sách được hiển thị và ẩn khi điều khiển mở rộng và thu gọn Ở trạng thái mặc định, danh sách được thu gọn, chỉ hiển thị một lựa chọn Người dùng nhấp vào một nút để xem danh sách đầy đủ các tùy chọn

• Cấu trúc: <ComboBox> </ComboBox>

(UI) Trước đây,Label chỉ chứa văn bản, nhưng vì Label đi kèm với

ContentControl nên nó có thể chứa văn bản hoặc UIElement

• Cấu trúc: <Label> </Label>

Trang 18

2.2 Kết quả giao diện

Hình III.2.2: Giao diện hệ thống AutoTool1308

3 Tự động hóa các thao tác trên WebDriver

3.1 Tự động mở trình duyệt web Google Chrome Portable cho hệ thống

a Tải Google Chrome Portable

cho web hiện đại Chrome được thiết kế để hoạt động nhanh theo mọi cách có thể Thật nhanh chóng để khởi động từ máy tính để bàn của bạn, tải các trang web trong tích tắc và chạy các ứng dụng web phức tạp nhanh như chớp Cửa sổ trình duyệt của Chrome được sắp xếp hợp lý, gọn gàng và đơn giản

tính năng chống phần mềm độc hại và lừa đảo tích hợp sẵn, các bản cập

Ngày đăng: 07/08/2023, 01:30

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w