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

(Tiểu luận) báo cáo bài tập lớn kiểm thử phần mềm đề tài kiểm thử website pinterest

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 (12.26 MB, 52 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>BỘ GIÁO DỤC VÀ ĐÀO TẠO</b>

<b>TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINHuuu</b>

<b>BÁO CÁO BÀI TẬP LỚN KIỂM THỬ PHẦN MỀM</b>

<i><b>ĐỀ TÀI: </b></i>

<b>KIỂM THỬ WEBSITE PINTEREST</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>LỜI MỞ ĐẦU</b>

Pinterest là một công cụ tuyệt vời để khám phá và chia sẻ ý tưởng trực quan, tạo nên một không gian sáng tạo và đa dạng. Với hàng tỷ Ghim trên nền tảng này, người dùng có thể dễ dàng tìm thấy cảm hứng cho mọi lĩnh vực trong cuộc sống. Nếu bạn đang tìm kiếm cơng thức nấu ăn mới, ý tưởng trang trí nhà cửa, hoặc cảm hứng về thời trang và phong cách, Pinterest sẽ là địa điểm lý tưởng. Người dùng có thể tìm kiếm theo từ khóa, duyệt qua các bảng ghim của người khác, và lưu lại những ý tưởng yêu thích vào bảng cá nhân của mình.

Với giao diện trực quan và dễ sử dụng, Pinterest khơng chỉ là một nguồn thơng tin hữu ích mà cịn là cộng đồng nơi mọi người có thể chia sẻ ý tưởng và tìm kiếm sự sáng tạo từ cộng đồng toàn cầu. Hãy để Pinterest làm nổi bật sự sáng tạo và khám phá trong cuộc sống hàng ngày của bạn!

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>MỤC LỤC</b>

<b>1.Tạo Một Project Unit Test...4</b>

<b>2.Kiểm thử chức năng Login...12</b>

2.2. Thực hiện chức năng kiểm tra login của trang web...12

2.2.1. Viết test case cho chức năng login...12

2.2.2. Thực thi quá trình kiểm thử...18

<b>3.Kiểm thử chức năng tìm kiếm tải ảnh tự động...20</b>

3.1. Mơ tả chức năng...20

3.2. Thực thiện chức năng quá trình kiểm thử...20

3.2.1. Viết test cho chức năng tìm kiếm ảnh tự động tải...20

3.2.2. Thực hiện chức năng test case...24

<b>4.Test API trên Postman...29</b>

4.2. Lấy Quyền trang website để test API...33

4.3. Thực hiện test API...39

4.3.2. Test API Movie...39

4.3.3. Test Deleted Movie...39

4.3.4. Test API Post Favroite...41

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>1. Tạo Một Project Unit Test</b>

Bước 1: Chọn vào create a new project

Hình 1.1 Ấn vào create a new project để tạo project

<b>Too long to read onyour phone? Save to</b>

read later on your computer

Save to a Studylist

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

Bước 2: Chọn vào ngôn ngữ C#

Hình 1.2 Ấn thư mục chọn ngơn ngữ C# Bước 3: Chọn và kiểu bạn muốn viết và chọn test

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

Hình 1.3 Chọn và kiểu muốn viết Bước 4: Tìm đến project Unit Test Project (.Net Framework) và ấn next

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

Quiz Marketing AV81 -vdu về bài test

<b><small>4</small></b>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Hình 1.4 Chọn Project Unit test Bước 5: Đặt tên project và lưu địa chỉ muốn lưu và sau đó ấn next

The summary about principle of… Intergrated

Marketing… <sup>100%</sup><sup> (1)</sup>

<b><small>15</small></b>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

Hình 1.5 Đặt tên cho dự án Bước 6: Tạo dự án thành cơng

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Hình 1.6 Tạo dự án thành công Bước 7: Thêm thư viện selenium vào project

- Ấn vào tool chọn NuGet Package Manager cchọn NuGet Package Manager for Solution

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

Hình 1.7 Cài đặt thư viện selenium - Sau đó chọn Browser tìm đến hai package như sau để cài đặt

Hình 1.8 Tìm kiếm thư viện để cài đặt - Sau đó ấn vào hai package để bấm install để cài đặt thư viện

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

Hình 1.9 Cài đặt thư viện Selenium.WebDriver

- Tiếp theo để cài đến thư viện Selenium.WebDriver.ChromeDriver để thực thi trên test trên chrome

Hình 1.10 Cài đến thư viện Selenium.WebDriver.ChromeDriver - Cài đặt thành cơng

Hình 1.11 Cài đặt thư Viện Thành cơng

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>2. Kiểm thử chức năng Login</b>

2.1. Mô tả chức năng

- Login là người dùng của website đó và cũng hành động đăng nhập vào trang web nào đó để sử dụng tất cả quyền của trang website đó thí dụ chỉnh sửa người dùng thì chỉ khi nào đăng nhập mới chúng ta có thể chỉnh sửa hay quyền đó

- Ở đây chúng ta sẽ kiểm tra trức trên trên website <b>Pinterest </b>là trang website dùng upload các hình ảnh cho người dùng khác coi ngồi ra chúng ta có thể nhận xét các hình ảnh mà người dùng đã đăng và có thích và dowload các hình ảnh đó về. Dưới đây hình ảnh của trang website

<i><b>Hình 2.1.1 Hình trang web Pinterest</b></i>

2.2. Thực hiện chức năng kiểm tra login của trang web 2.2.1. Mô Tả chức năng và lấy năng các các elem

Bước 1: Liệt kê các điều kiện để để chúng ta kiểm thử như sau: - Các điều kiện cần có để tiến thành test chức năng login này bao gồm:

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Đăng nhập đúng email đã đăng kí Đăng nhập đúng với passowrd đã đăng kí Check kiểu nhập có phải đúng là email hay không Đăng nhập thành công

Đăng nhập thất bại

Bước 2: Tiến hành lấy các trường cần test

1. Tiến hàng vào website Ấn inspect vào nút Đăng nhập để devtool để lấy element của nút đăng nhập:

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Hình 2.1 Lấy Element của nút đăng nhập

- Sau đó tìm đến element của của nút đăng nhập Ấn chuột phải Copy Copy Selector

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

Hình 2.2 Lấy Selector của nút Đăng Nhập - Sau đó chúng ta sẽ đoạn code như sau :

Hình 2.3 Selector của nút Đăng Nhập

3. Lấy Element của trường email và passowrd và nút đăng nhập trong form như sau:

- Lấy Elemnt của trường email

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

- Ấn chuột phải trường email sau đó ấn inspcet và tìm kiếm đến element của trường email như sau:

Hình 2.4 Lấy element của trường email như sau Đoạn code thực thi như sau :

Hình 2.5 Element của trường email như sau - Lấy element của trường password như sau:

- Ấn chuột phải trường password sau đó ấn inspcet và tìm kiếm đến element của trường password như sau:

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

Hình 2.6 Lấy Element của trường Password - Đoạn code thực thi như sau:

Hình 2.7 Element của trường Password - Lấy element của nút đăng nhập

- Ấn chuột phải trường button sau đó ấn inspcet và tìm kiếm đến element của trường button như sau:

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Hình 2.8 Lấy trường element của button - Đoạn code thực thi như sau

Hình 2.9 Element của nút đăng nhập trong form 2.2.2. Thực hiện quá trình kiểm thử

Bảng quyết định của chức năng login

- Viết các test case của kiểm thử: - Viết test case 1đăng nhập thành cơng:

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

Hình 2.9 Hình Test Case Login thành công - Viết test case 2 kiểm tra khơng đúng là trường email

Hình 2.9 Hình Test Case CheckEmail - Viết test case 3 Đăng nhập không thành công

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

Hình 2.10 Hình Test Case LoginFail - Thực thi chức năng tất cả test case

Hình 2.11 Hình Chạy tất cả test case

<b>3. Kiểm thử chức năng tìm kiếm tải ảnh tự động</b>

3.1. Mô tả chức năng và lấy các element của trang web

- Chức năng sẽ tìm kiếm hình ảnh mà bạn muốn tìn trên thanh tìm kiếm sau đó nó sẽ tải tất cả ảnh có liên đến từ khóa mà bạn tìm kiếm được sau đó sẽ tải ảnh đó về mục download

3.2. Thực thiện chức năng quá trình kiểm thử 3.2.1. Viết test cho chức năng tìm kiếm ảnh tự động tải Bước 1: Liệt kê những điều kiện cần có

- Những điều kiện cần có để tải ảnh: Ảnh phài được tìm kiếm thấy website

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

Sự kiện click được vảo ảnh Sự kiện tải ảnh

Bước 2: Thực hiện lấy Element cần test như sau - Lấy Element của trường tìm kiếm như sau:

Hình 3.1 Lấy element của trường input - Đoạn code được thi như sau :

Hình 3.2 Đoạn code thực thi của trường input

- Tiếp theo chúng ta tiến hành thực 1 sự kiện đó là ấn Eneter để tìm kiếm sẽ sử dụng thư viện “using OpenQA.Selenium.Interactions” của C# để lấy Action Enter. Đoạn code thực thi sẽ như sau

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

Hình 3.3 Sử dụng thư viện để sử dụng được Enter

- Sau đó lấy div cha chứa các thưa mục hình ảnh vì sao để lấy div cha sau đó tìm đến div con để lấy hình ảnh bởi vì việc này tránh được việc lỗi tìm đến các hình ảnh mà chúng ta khơng cần

Hình 3.4 Tìm div cha chứa các hình ảnh

- Hình trên chúng ta có thể dễ dàng thấy chúng ta tìm đến div cha chứa các hình ảnh sau đó từ cha tìm đến các con như trong hình sao đó trả về list danh sách hình - Sau đó ấn một hình bất kì sau đó tìm đến thư mục tải ảnh về

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

Hình 3.5 Nhấn vào thư mục modal để các thao tác trong đó - Sau khi lấy được thao tác sự action sau đó sau đó tìm đến sự kiện tải ảnh bằng

cách ấn vào modal Tải ảnh về

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

Hình 3.6 Lấy sự kiện tải về - Đoạn code thực thi như sau :

Hình 3.7 Đoạn code thực thua hai sự kiện trên 3.2.2. Thực hiện chức năng test case

- Bảng quyết định Chức năng tìm kiếm và tải ảnh

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

Hình 3.8 Hình Bảng Quyết định

- Viết đoạn code hàm để tái sử dụng cho thuận lợi cho việc code ngoài ra có thể dùng đi nhiều lần khơng phải viết lại dưới đây là hai hàm có thể sử dụng đi nhiều lần:

- Viết hàm InitializeDriver để truy cập vào trang web:

Hình 3.9 Hàm khởi tạo để vô trang web - Viết hàm đăng nhập vào trang web

Hình 3.10 Hàm đăng nhập vào trang web

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

- Viết hàm test case 1 hành động tải nhiều ảnh

Hình 3.11 Hình đoạn code tải nhiều ảnh

- Ở hình này chúng ta sẽ lấy ra trường search input của trang website sau đó chúng sẽ sử dụng sự kiện enter để tìm kiếm , sau đó để kiểm tra bao nhiêu hình tải về chung ổ đĩa thì chúng ta sẽ dụng Directory.GetFile để lấy chiều dài thư mục dowload lúc chưa tải về để đi so sánh về sau khi tải về

Hình 3.12 Hình đoạn code tải nhiều ảnh

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

- Ở hình này chúng ta div cha đẻ lấy các image bên trong div cha trước khi lấy mình sẽ kiểm tra dưới dạng thuộc tích phải là file src thì mới được lấy và trả về danh sách

Hình 3.13 Hình đoạn code tải nhiều ảnh

- Ở hình này sẽ lấy modal để bắt sự kiện tải về khi người dùng ấn vơ modal đó sẽ in ra chỗ sự kiện tải về để tránh khơng tìm thấy sẽ cho ngủ khoảng 5 giây để đảm bảo đoạn khơng bị lỗi nhất có thể sau đó ấn nút tải hình ảnh để hình ảnh về sau đó chờ thời gian , sau khi chờ xong chúng ta back về trang cũ nhưng ở đây chúng ta sẽ có đoạn kiểm tra lại div cha để lấy các thuộc tính cũ nếu khơng lấy thì khơng tìm thấy các “such no element”

- Hình có biến đếm khi biến đếm này khi biến đếm đến hai sự động thoát và trả về assert để kiểm tra test case đã pass hay chưa.

- Viết hàm test case 2 tải một ảnh

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

Hình 3.14 : Hình đoạn code tải 1 ảnh

- Trước khi thật hiện tải 1 ảnh chúng ta tiến hành dùng hàm InitializeDriver() để đăng nhập vào trang web

- Sau đó gọi hàm LoginToPinterest sau đó truyền vào username và password để đăng nhập và webite

- Sau đó cũng lấy các trường để sự kiện dowload như lấy modal và sự kiện tải về

- Ở đây chúng ta cũng kiểm tra thư mục dowload và trước sau khi tải về ở đây chỉ 1 ảnh nếu độ dài lúc chưa và tải về sau tải trừ nhau mà 1 thì pass test case

- Viết hàm test case 3 khơng tìm được ảnh

Hình 3.15 : Hình đoạn code tìm kiếm ảnh

- Trước khi thật hiện tải 1 ảnh chúng ta tiến hành dùng hàm InitializeDriver() để đăng nhập vào trang web

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

- Sau đó gọi hàm LoginToPinterest sau đó truyền vào username và password để đăng nhập và webite

- Ở đây ta sẽ bắt sự kiện input sau đó send key

- Ở đây chúng ta send key ở đoạn chữ vô nghĩa để khơng tìm được để bắt sự kiện đó

- Thực thi tất cả test case như sau

Hình3.16 : Chạy test case thành công

<b>4. Test API trên Postman</b>

- Ở mục này chúng ta sẽ dụng API test của web Chúng ta tiến hành tạo workspace với tiêu đề KTMP_Pexels trên post man

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

Hình 4.1 Tạo Workspace trên postman - Sau đó ấn next để tiêu đề dự án của chúng ta

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

Hình 4.2 Tạo dự án - Sau đó ấn nút create để tạo

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

Hình 4.3 Tạo dự án

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

- Tạo dự án thành công

4.2. Lấy Quyền trang website để test API

- Chúng ta sẽ thực test Api trên trang web The movie database

- Nhưng trước khi thực hiện được điều đó chúng ta sẽ đăng kí tài khoản trên the movie databse

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

Hình 4.1 Hình đăng kí website

- Sau khi đăng kí thành cơng chúng ta sẽ tiến hành đăng kí Api key bằng cách ấn chuột phải vào hình đại diện của bạn sau đó -> ấn vào cài đặt

Hình 4.2 Hình lấy Api key - Sau đó chọn vào Api Key

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

Hình 4.2 Hình ấn vào lấy api key - Sau đó chọn click here

Hình 4.3 Hình ấn vào lấy api key

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

- Sau đó chọn vào mục developer

Hình 4.4 Hình ấn và developer để lấy key - Sau đó kéo xuống vào accept

Hình 4.5 : Hình chấp nhận các điều khoản trên - Sau đó đặt tên dự án và ấn submit dể đăng kí

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

Hình 4.6 : Đăng kí app để test api - Đăng kí thành cơng trả về access_token và Api Key

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

Hình 4.7 : Lấy được access_token và api key

- Sau khi lấy được acess_token chúng ta sẽ vô phần postman -> chọn phần Header -> nhập “Authorization” -> nhập giá trị “Bearer token” lúc này

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

Hình 4.8 : Điền giá trị Authorzation 4.3. Thực hiện test API

4.3.1. Test API Movie

- Tạo một collection có tên là Movie

Hình 4.9 Tạo Collection

- Sau tạo một requets Get trong collection Movie -> tên là TC1_GETMOVIE -> sau đó nhập đường dẫn url để kiểm tra dữ liệu trả về

</div><span class="text_page_counter">Trang 42</span><div class="page_container" data-page="42">

Hình 4.10: Dữ liệu trả về khi send của TC Get movie - Dữ liệu trả về của test case 1 là get movie

- Tạo add requet dưới dạng deleted kiểm tra -> pass đường dẫn sau đó ấn send

</div><span class="text_page_counter">Trang 43</span><div class="page_container" data-page="43">

Hình 4.11 Dữ liệu trả về khi xóa rating của movie 4.3.1.1. Test case 1 Get Movie

- Kiểm tra dữ liệu trả về có phải là 200 hay khơng

Hình 4.12 kiểm tra dữ liệu trả về có phải là 200 hay không - Kiểm tra dữ liệu trả về có phải application/json;chart=utf8

Hình 4.13 kiểm tra dữ liệu trả về có phải application/json;chart=utf8

</div><span class="text_page_counter">Trang 44</span><div class="page_container" data-page="44">

- Kiểm tra các dữ liệu file có thật là đi có file .jpg hay không ở đây sẽ dùng định dạng regex để kiểm tra nếu match với định dạng thì file có di jpg là đúng test case pass

Hình 4.15 Kiểm tra các dữ liệu file có thật là đi có file .jpg hay khơng - Kiểm tra các lúc trả về có dữ liệu đó hay khơng

Hình 4.16 Kiểm tra các lúc trả về có dữ liệu đó hay khơng - Kiểm tra các thuộc tính trong reuslt lúc trả về bằng cách duyệt mảng để xem

mảng đó có chứa các thuộc tính này khơng

Hình 4.17 Kiểm tra thuộc tính trong result - Kiểm tra giá trị biến adult có phải là giá trị false hay khơng

</div><span class="text_page_counter">Trang 45</span><div class="page_container" data-page="45">

Hình 4.17 Kiểm tra giá trị biến adult có phải là giá trị false hay khơng - Thực thi test case 1 get movie

Hình 4.18 : Thực thi các test case 4.3.1.2. Test case 2 Deleted Movie

- Viết hàm kiểm tra dữ liệu trả về có 200

Hình 4.18 Kiểm tra dữ trả về có phải 200 - Kiểm tra giá trị success có phải là giá trị boolean hay khơng

Hình 4.18 Kiểm tra giá trị boolean

- Kiểm tra chữ “The item/record was deleted successfully.” Có đúng với giá trị trả về

</div><span class="text_page_counter">Trang 46</span><div class="page_container" data-page="46">

Hình 4.19 Kiểm tra chữ tra về có khớp hay không - Thực thi test case deleted rating movie

Hình 4.20 Thực hiện test case 4.3.2. Test API Favroite

Tạo một collection có tên là Favorite

- Sau tạo một requets Get trong collection Favorite -> tên là

TC1_AddFavorite -> sau đó nhập đường dẫn url để kiểm tra dữ liệu trả về

Hình 4.21 Tạo collection có tên Favorite

</div><span class="text_page_counter">Trang 48</span><div class="page_container" data-page="48">

Hình 4.21 Tạo request dưới dạng Post 4.3.2.1. Test case 1 Post favorite

- Kiểm tra dữ liệu trả về có phải 201

Hình 4.22 : Kiểm tra dữ liệu trả về 201 - Kiểm tra fromData có đã nhập dữ liệu request hay chưa

Hình 4.22 : Kiểm tra dữ liệu request - Thực thi test case

</div><span class="text_page_counter">Trang 49</span><div class="page_container" data-page="49">

Hình 4.22 : Thực thi test case 1

Hết

</div><span class="text_page_counter">Trang 52</span><div class="page_container" data-page="52">

The slide of IMC Lecture 1 Intergrated

Marketing… <sup>100%</sup><sup> (2)</sup>

Quiz Marketing AV81 -vdu về bài test

</div>

×