Đến hiện tại chúng ta đã hoàn thành việc tìm hiểu về các lệnh trong WebDriver và các lệnh điều hướng. Ở bài này chúng ta sẽ tìm hiểu về WebElement. Vậy WebElement là gì và các thao tác với nó như thế nào thì chúng ta sẽ tìm hiểu ở bài này.
1. WebElement là gì?
WebElement trong Selenium đại diện cho một phần tử của html. Một trang web được tạo nên bởi nhiều phần tử html khác nhau, chúng có cấu trúc: <thẻ bắt đầu> [nội dung] </thẻ kết thúc>
Các phần tử html có thể được lồng vào nhau (phần tử này có thể chứa một hoặc nhiều các phần tử khác). Ví dụ:
<html>
<body>
<div class="container-fluid">
<div class="container">
<div class="row">
<div class="col-12" id="content" name="content">
<p>Đến hiện tại chúng ta đã hoàn thành việc tìm hiểu về các lệnh trong <strong>WebDriver </strong>và các lệnh điều hướng. Ở bài này chúng ta sẽ tìm hiểu về <strong>WebElement</strong>. Vậy <strong>WebElement </strong>là gì và các thao tác với nó như thế nào thì chúng ta sẽ tìm hiểu ở bài này.</p>
<h2>1. WebElement là gì?</h2>
<p><strong>WebElement </strong>trong Selenium đại diện cho một <strong>phần tử của html</strong>. Một trang web được tạo nên bởi nhiều<strong> phần tử html</strong> khác nhau, chúng có cấu trúc: <strong><thẻ bắt đầu></strong> <em>[nội dung]</em><strong><em> </em></thẻ kết thúc></strong></p>
<p>Các phần tử html có thể được lồng vào nhau (phần tử này có thể chứa một hoặc nhiều các phần tử khác). Ví dụ:</p>
<p class=""><br></p>
</div>
</div>
</div>
</div>
</body>
</html>
Bất kỳ một thẻ nào của html đều là một WebElement, do cơ chế lồng nhau thì có thể hiểu là một WebElement có thể có nhiều WebElement con, cháu, ....
2. Một số thành phần cấu tạo nên một phần tử html
Như ví dụ trên chúng ta có thể thấy được, một phần tử html có thể có nhiều properties, ví dụ như
<div class="col-12" id="content" name="content">
Có:
- tag name: div
- id:
content
- name:
content
- class:
col-12
- .......
Ngoài ra còn rất nhiều thành phần khác chưa được liệt lê lên như: style, disable, readonly, .... Các thành phần này được gọi chung là attributes của phần tử html. Chúng ta có thể dựa vào một hoặc nhiều attribute để xác định phần tử html và ngược lại có thể lấy các attribute của phần tử khi phần tử đã được xác định.
Vậy một WebElement trong Selenium cũng sẽ tương tự như một phần tử html => phần tử WebElement này cũng có những thành phần trên.
Student feedback
Reviews