100 câu hỏi và câu trả lời phỏng vấn về Selenium hàng đầu

Mục lục:

Anonim

Hướng dẫn câu hỏi phỏng vấn Java Selenium sau đây bao gồm 100 câu hỏi phỏng vấn quan trọng nhất cho Selenium Webdriver, bao gồm các câu hỏi phỏng vấn Selenium đơn giản cũng như các câu hỏi phỏng vấn phức tạp về Selenium có câu trả lời. Hướng dẫn này có tất cả các câu hỏi phỏng vấn selen cho người mới bắt đầu và câu hỏi phỏng vấn Selenium cho các ứng viên có kinh nghiệm để giúp chuẩn bị cho cuộc phỏng vấn.

Câu hỏi phỏng vấn Selenium dành cho những người có kinh nghiệm và người mới bắt đầu

Sau đây là danh sách các câu hỏi và câu trả lời phỏng vấn Selenium Webdriver hàng đầu:

1) Selen là gì và được cấu tạo bởi những gì?

Selenium là một bộ công cụ để kiểm tra web tự động. Nó bao gồm

  • Selenium IDE (Môi trường phát triển tích hợp): Nó là một công cụ để ghi và phát lại. Nó là một plugin firefox
  • WebDriver và RC: Nó cung cấp các API cho nhiều ngôn ngữ khác nhau như Java, .NET, PHP, v.v. Với hầu hết các trình duyệt Webdriver và RC hoạt động.
  • Grid: Với sự trợ giúp của Grid, bạn có thể phân phối các bài kiểm tra trên nhiều máy để kiểm tra có thể được chạy song song, giúp cắt giảm thời gian cần thiết để chạy trong các bộ kiểm tra của trình duyệt

2) Selenium 2.0 là gì?

Các công cụ kiểm tra web Selenium RC và WebDriver được hợp nhất trong một công cụ duy nhất trong Selenium 2.0

3) Đề cập đến Selenium 3.0 là gì?

Selenium 3.0 là phiên bản mới nhất của Selenium. Nó đã phát hành 2 phiên bản beta của selen 3.0 với một số thay đổi dưới đây:

Dưới đây là một số tính năng mới được thêm vào Selenium 3.0

Bản cập nhật Beta 1 Bản cập nhật Beta 2 (Chỉ dành cho Java)
  • Phiên bản Java tối thiểu hiện là 8+
  • Thuộc tính hệ thống webdriver.gecko.driver hiện buộc máy chủ ở chế độ trình điều khiển firefox cũ hoặc marionette, bỏ qua mọi Khả năng mong muốn liên quan
  • Nó sẽ hỗ trợ cho Firefox Via Mozilla's geckodriver
  • Grid sửa lỗi NPE khi đăng ký khi -browser không được chỉ định
  • Hỗ trợ cho Edge được cung cấp bởi MS
  • Nó hiện hỗ trợ Safari trên MacOS thông qua trình điều khiển Safari của riêng Apple
  • Cập nhật đối số GeckoDriver -port trong tất cả các ràng buộc

4) Bạn sẽ tìm một phần tử bằng cách sử dụng Selenium như thế nào?

Trong Selenium, mọi đối tượng hoặc điều khiển trong một trang web được gọi là một phần tử, có nhiều cách khác nhau để tìm một phần tử trong một trang web mà chúng là

  • TÔI
  • Tên
  • Nhãn
  • Thuộc tính
  • CSS
  • Văn bản liên kết
  • Văn bản liên kết một phần
  • Xpath, v.v.

5) Liệt kê các kiểu kiểm tra được hỗ trợ bởi Selenium?

Đối với thử nghiệm ứng dụng dựa trên web, selen có thể được sử dụng

Các loại kiểm tra có thể được hỗ trợ là

a) Chức năng, Tìm hiểu thêm về Kiểm tra chức năng.

b) Hồi quy

Để xác nhận sau phát hành với công cụ tự động hóa tích hợp liên tục có thể được sử dụng

a) Jenkins

b) Hudson

c) Xây dựng nhanh

d) CruiseCont

6) Giải thích khẳng định trong Selenium là gì và các loại khẳng định là gì?

Khẳng định được sử dụng như một điểm xác minh. Nó xác minh rằng trạng thái của ứng dụng phù hợp với những gì được mong đợi. Các loại xác nhận là "khẳng định", "xác minh" và "chờ đợi".

7) Đề cập đến việc sử dụng X-path là gì?

X-Path được sử dụng để tìm WebElement trong các trang web. Nó cũng hữu ích trong việc xác định các yếu tố động.

Tham khảo Hướng dẫn đầy đủ về XPath

8) Giải thích sự khác biệt giữa gạch chéo đơn và gạch chéo kép trong đường dẫn X?

Dấu gạch chéo đơn '/'
  • Một dấu gạch chéo (/) bắt đầu lựa chọn từ nút tài liệu
  • Nó cho phép bạn tạo biểu thức đường dẫn 'tuyệt đối'
Dấu gạch chéo kép '//'
  • Dấu gạch chéo kép (//) bắt đầu đối sánh lựa chọn ở bất kỳ đâu trong tài liệu
  • Nó cho phép tạo biểu thức đường dẫn 'tương đối'

9) Liệt kê những thách thức kỹ thuật với Selenium?

Những thách thức kỹ thuật với Selenium là
  • Selenium chỉ hỗ trợ các ứng dụng dựa trên web
  • Nó không hỗ trợ so sánh Bitmap
  • Đối với bất kỳ khả năng báo cáo nào liên quan phải phụ thuộc vào các công cụ của bên thứ ba
  • Không có nhà cung cấp hỗ trợ cho công cụ so với các công cụ thương mại như HP UFT
  • Vì không có khái niệm kho lưu trữ đối tượng trong Selenium, khả năng bảo trì các đối tượng trở nên khó khăn

10) Sự khác biệt giữa phím gõ và lệnh gõ là gì?

TypeKeys () sẽ kích hoạt sự kiện JavaScript trong hầu hết các trường hợp, trong khi .type () thì không. Phím gõ điền thuộc tính giá trị bằng JavaScript trong khi .typekeys () mô phỏng giống như thao tác nhập của người dùng thực tế

11) Sự khác biệt giữa lệnh xác minh và lệnh khẳng định là gì?

Assert: Assert cho phép kiểm tra xem một phần tử có trên trang hay không. Thử nghiệm sẽ dừng ở bước không thành công, nếu phần tử được khẳng định không khả dụng. Nói cách khác, kiểm tra sẽ kết thúc tại điểm kiểm tra không thành công.

Verify: Lệnh Verify sẽ kiểm tra xem phần tử có trên trang hay không, nếu không, thì quá trình kiểm tra sẽ tiếp tục thực thi. Trong quá trình xác minh, tất cả các lệnh sẽ được đảm bảo chạy ngay cả khi bất kỳ thử nghiệm nào không thành công.

12) Chú thích JUnit là gì và các loại chú thích khác nhau hữu ích là gì?

Trong JAVA, một dạng siêu dữ liệu cú pháp đặc biệt có thể được thêm vào mã nguồn Java, đây được gọi là Chú thích. Các biến, tham số, gói, phương thức và lớp được chú thích một số chú thích Junit có thể hữu ích là

  • Kiểm tra
  • Trước
  • Sau
  • Làm lơ
  • BeforeClass
  • Sau giờ học
  • RunWith

13) Trong khi sử dụng lệnh nhấp chuột, bạn có thể sử dụng tọa độ màn hình không?

Để nhấp vào phần cụ thể của phần tử, bạn cần sử dụng lệnh clickAT. Lệnh ClickAt chấp nhận bộ định vị phần tử và x, y phối hợp làm đối số- clickAt (bộ định vị, wireString)

14) Ưu điểm của Selenium là gì?

  • Nó hỗ trợ C #, PHP, Java, Perl, Phython
  • Nó hỗ trợ các hệ điều hành khác nhau như Windows, Linux và Mac OS
  • Nó có các phương pháp mạnh mẽ để định vị các phần tử (Xpath, DOM, CSS)
  • Nó có cộng đồng nhà phát triển cao được hỗ trợ bởi Google

15) Tại sao người kiểm tra nên chọn Selenium chứ không phải QTP?

Selenium phổ biến hơn QTP vì
  • Selenium là một mã nguồn mở trong khi QTP là một công cụ thương mại
  • Selenium được sử dụng đặc biệt để kiểm tra các ứng dụng dựa trên web trong khi QTP cũng có thể được sử dụng để kiểm tra ứng dụng máy chủ khách
  • Selenium hỗ trợ Firefox, IE, Opera, Safari trên các hệ điều hành như Windows, Mac, Linux, v.v. tuy nhiên QTP chỉ giới hạn ở Internet Explorer trên Windows.
  • Selenium hỗ trợ nhiều ngôn ngữ lập trình như Ruby, Perl, Python trong khi QTP chỉ hỗ trợ VB script

16) Bốn tham số bạn phải truyền trong Selenium là gì?

Bốn tham số mà bạn phải chuyển trong Selenium là
  • Tổ chức
  • Số cổng
  • Trình duyệt
  • URL

17) Sự khác biệt giữa phương thức setSpeed ​​() và sleep () là gì?

Cả hai đều sẽ làm chậm tốc độ thực thi.

Thread.sleep (): Nó sẽ dừng luồng (java) hiện tại trong một khoảng thời gian được chỉ định. Nó chỉ được thực hiện một lần

  • Nó có một đối số duy nhất ở định dạng số nguyên
Ví dụ: thread.sleep (2000) - Nó sẽ đợi trong 2 giây
  • Nó chỉ đợi một lần theo lệnh được đưa ra khi ngủ
SetSpeed ​​(): Trong khoảng thời gian cụ thể, nó sẽ dừng việc thực thi mọi lệnh selen.
  • Nó có một đối số duy nhất ở định dạng số nguyên
Ví dụ: selenium.setSpeed ​​(“2000”) - Nó sẽ đợi trong 2 giây
  • Chạy mỗi lệnh sau khi đặt Tốc độ trễ bằng số mili giây được đề cập trong Tốc độ đặt
Lệnh này hữu ích cho mục đích trình diễn hoặc nếu bạn đang sử dụng một ứng dụng web chậm

18) Chính sách xuất xứ tương tự là gì? Làm thế nào bạn có thể tránh chính sách xuất xứ giống nhau?

Các “Chính sách Xuất xứ Same” được giới thiệu vì lý do an ninh, và nó đảm bảo rằng nội dung của trang web của bạn sẽ không bao giờ có thể truy cập bằng một kịch bản từ một trang web khác. Theo chính sách, bất kỳ mã nào được tải trong trình duyệt chỉ có thể hoạt động trong miền của trang web đó.

Để tránh sử dụng phương pháp chèn proxy “Chính sách nguồn gốc”, trong chế độ chèn proxy, Máy chủ Selenium hoạt động như một proxy HTTP được định cấu hình máy khách , nằm giữa trình duyệt và ứng dụng đang được kiểm tra và sau đó che dấu AUT bên dưới một URL hư cấu

19) Trình duyệt có đặc quyền nâng cao là gì?

Mục đích của các đặc quyền nâng cao tương tự như Proxy Injection, cho phép các trang web thực hiện điều gì đó không được phép phổ biến. Sự khác biệt chính là các trình duyệt được chạy trong một chế độ đặc biệt được gọi là các đặc quyền nâng cao. Bằng cách sử dụng chế độ trình duyệt này, lõi Selenium có thể mở AUT trực tiếp và cũng có thể đọc / ghi nội dung của nó mà không cần chuyển toàn bộ AUT thông qua máy chủ Selenium RC.

20) Làm thế nào bạn có thể sử dụng "gửi" một biểu mẫu bằng Selenium?

Bạn có thể sử dụng phương thức "gửi" trên phần tử để gửi biểu mẫu-

element.submit ();

Ngoài ra, bạn có thể sử dụng phương pháp nhấp vào phần tử gửi biểu mẫu

21) Các tính năng của TestNG là gì và liệt kê một số chức năng trong TestNG giúp nó hoạt động hiệu quả hơn?

TestNG là một khung thử nghiệm dựa trên JUnit và NUnit để đơn giản hóa một loạt các nhu cầu thử nghiệm, từ Kiểm thử đơn vị đến Kiểm thử tích hợp. Và chức năng làm cho khung thử nghiệm hiệu quả là

  • Hỗ trợ cho các chú thích
  • Hỗ trợ kiểm tra theo hướng dữ liệu
  • Cấu hình kiểm tra linh hoạt
  • Khả năng thực thi lại các trường hợp thử nghiệm không thành công

22) Đề cập đến sự khác biệt giữa Chờ đợi ngầm và Chờ đợi rõ ràng là gì?

Chờ ngầm: Đặt thời gian chờ cho tất cả các tìm kiếm Phần tử web liên tiếp. Trong khoảng thời gian được chỉ định, nó sẽ thử tìm kiếm phần tử nhiều lần trước khi ném NoSuchElementException. Nó đợi các phần tử hiển thị.

Chờ rõ ràng: Nó là một bộ hẹn giờ, được sử dụng cho một tìm kiếm cụ thể.

23) Thuộc tính nào bạn nên xem xét trong toàn bộ kịch bản trong khung cho “nếu không có Id khung cũng như không có tên khung”?

Bạn có thể dùng

… Driver.findElements (By.xpath (“// iframe”))….

Thao tác này sẽ trả về danh sách các khung.

Bạn sẽ cần chuyển sang từng khung hình và tìm kiếm công cụ định vị mà chúng tôi muốn.

Sau đó phá vỡ vòng lặp

24) Giải thích sự khác biệt giữa phần tử find () và phần tử find ()?

tìm phần tử ():

Nó tìm thấy phần tử đầu tiên trong trang hiện tại bằng cách sử dụng “cơ chế định vị” đã cho. Nó trả về một WebElement duy nhất

findElements (): Sử dụng "cơ chế định vị" đã cho để tìm tất cả các phần tử trong trang hiện tại. Nó trả về một danh sách các phần tử web.

25) Giải thích chú thích JUnits được liên kết với Selenium là gì?

Chú thích JUnits được liên kết với Selenium là

  • @Before public void method () - Nó sẽ thực hiện phương thức () trước mỗi lần kiểm tra, phương thức này có thể chuẩn bị kiểm tra
  • @Test public void method () - Chú thích @Test xác định rằng phương thức này là một môi trường phương pháp thử nghiệm
  • @A After public void method () - Để thực thi một phương thức trước khi chú thích này được sử dụng, phương thức kiểm tra phải bắt đầu với kiểm tra @ Trước

26) Giải thích khung công tác Datadriven và điều khiển từ khóa là gì?

Khuôn khổ Datadriven: Trong khuôn khổ này, dữ liệu thử nghiệm được tách biệt và giữ bên ngoài Tập lệnh thử nghiệm, trong khi logic của Trường hợp thử nghiệm nằm trong Tập lệnh thử nghiệm. Dữ liệu kiểm tra được đọc từ các tệp bên ngoài (Tệp Excel) và được tải vào các biến bên trong Tập lệnh kiểm tra. Các biến được sử dụng cho cả giá trị đầu vào và giá trị xác minh.

Keyworddriven framework: Các khuôn khổ điều khiển từ khóa yêu cầu phát triển các bảng dữ liệu và từ khóa, độc lập với tự động hóa kiểm tra. Trong bài kiểm tra theo hướng từ khóa, chức năng của ứng dụng đang được kiểm tra được ghi lại trong bảng cũng như hướng dẫn từng bước cho mỗi bài kiểm tra.

27) Giải thích cách bạn có thể đăng nhập vào bất kỳ trang web nào nếu nó hiển thị bất kỳ cửa sổ bật lên xác thực nào cho mật khẩu và tên người dùng?

Chuyển tên người dùng và mật khẩu với url

  • Cú pháp-http: // tên người dùng: password @ url
  • ex- http: // creyate: Địa chỉ email này đang được bảo vệ khỏi spam bots. Bạn cần bật Javascript để xem nó.

28) Giải thích cách xác nhận văn bản của trang web bằng selen 2.0?

WebElement el = driver.findElement (By.id (“ElementID”))

// nhận kiểm tra từ phần tử và được lưu trữ trong biến văn bản

String text = el.getText ();

// xác nhận văn bản từ dự kiến

Assert.assertEquals (“Văn bản phần tử”, văn bản);

29) Giải thích sự khác biệt giữa Tơ Borland và Selenium?

Công cụ kiểm tra lụa Công cụ kiểm tra Selenium
  • Borland Silk test không phải là một công cụ kiểm tra miễn phí
  • Selenium là công cụ tự động hóa kiểm tra hoàn toàn miễn phí
  • Kiểm tra Silk chỉ hỗ trợ Internet Explorer và Firefox
  • Selenium hỗ trợ nhiều trình duyệt như Internet Explorer, Firefox, Safari, Opera, v.v.
  • Thử nghiệm lụa sử dụng ngôn ngữ kịch bản thử nghiệm
  • Bộ Selenium có sự linh hoạt để sử dụng nhiều ngôn ngữ như Java, Ruby, Perl, v.v.
  • Kiểm tra lụa có thể được sử dụng cho các ứng dụng máy chủ khách hàng
  • Selenium chỉ có thể được sử dụng cho ứng dụng web

30) Kho lưu trữ đối tượng là gì?

Kho lưu trữ đối tượng là một thực thể thiết yếu trong bất kỳ quá trình tự động hóa giao diện người dùng nào cho phép người thử nghiệm lưu trữ tất cả các đối tượng sẽ được sử dụng trong các tập lệnh ở một hoặc nhiều vị trí tập trung hơn là nằm rải rác trên các tập lệnh thử nghiệm.

31) Giải thích cách hoạt động của Selenium Grid?

Selenium Grid đã gửi các bài kiểm tra đến trung tâm. Các thử nghiệm này được chuyển hướng đến Selenium Webdriver, khởi chạy trình duyệt và chạy thử nghiệm. Với toàn bộ bộ thử nghiệm, nó cho phép chạy thử nghiệm song song.

32) Chúng ta có thể sử dụng lưới Selenium để kiểm tra hiệu suất không?

Đúng. Nhưng không hiệu quả bằng một công cụ Kiểm tra Hiệu suất chuyên dụng như Loadrunner.

33) Liệt kê những ưu điểm của Webdriver so với Selenium Server?

  • Nếu bạn đang sử dụng Selenium-WebDriver, bạn không cần Selenium Server vì nó đang sử dụng công nghệ hoàn toàn khác
  • Selenium Server cung cấp chức năng Selenium RC được sử dụng để tương thích ngược với Selenium 1.0
  • Trình điều khiển Selenium Web thực hiện các cuộc gọi trực tiếp đến trình duyệt bằng cách sử dụng hỗ trợ tự động hóa riêng của từng trình duyệt, trong khi Selenium RC yêu cầu máy chủ selen đưa Javascript vào trình duyệt

34) Đề cập đến các khả năng của Selenium WebDriver hoặc Selenium 2.0 là gì?

WebDriver nên được sử dụng khi yêu cầu hỗ trợ cải tiến cho

  • Xử lý nhiều khung, cửa sổ bật lên, nhiều cửa sổ trình duyệt và cảnh báo
  • Điều hướng trang và kéo và thả
  • Các phần tử giao diện người dùng dựa trên Ajax
  • Kiểm tra nhiều trình duyệt bao gồm cả chức năng được cải thiện cho trình duyệt không được hỗ trợ tốt bởi Selenium 1.0

35) Trong khi đưa các khả năng vào trình duyệt web để thực hiện các thử nghiệm trên trình duyệt không được trình duyệt web hỗ trợ, hạn chế mà người ta có thể gặp phải là gì?

Hạn chế chính của khả năng tiêm là lệnh “findElement” có thể không hoạt động như mong đợi.

36) Giải thích cách bạn có thể tìm thấy các hình ảnh bị hỏng trong một trang bằng trình điều khiển Web Selenium?

Để tìm các hình ảnh bị hỏng trong một trang bằng cách sử dụng trình điều khiển web Selenium là

  • Tải XPath và nhận tất cả các liên kết trong trang bằng tên thẻ
  • Trong trang nhấp vào từng liên kết
  • Tìm 404/500 trong tiêu đề trang mục tiêu

37) Giải thích cách bạn có thể xử lý màu sắc trong trình điều khiển web?

Để xử lý màu sắc trong trình điều khiển web, bạn có thể sử dụng

Sử dụng hàm getCssValue (arg0) để lấy màu bằng cách gửi chuỗi 'màu' làm đối số

38) Sử dụng trình điều khiển web làm thế nào bạn có thể lưu trữ một giá trị là hộp văn bản?

Bạn có thể sử dụng lệnh sau để lưu trữ một giá trị là hộp văn bản bằng cách sử dụng trình điều khiển web

driver.findElement (By.id (“Hộp văn bản của bạn”)). sendKeys (“từ khóa của bạn”);

39) Giải thích cách bạn có thể chuyển đổi giữa các khung hình?

Để chuyển đổi giữa các frame webdrivers [driver.switchTo (). Frame ()], phương thức sử dụng một trong ba đối số có thể

  • Một số: Nó chọn số theo chỉ số (dựa trên số không) của nó
  • Tên hoặc ID: Chọn khung theo tên hoặc ID của nó
  • WebElement được tìm thấy trước đây: Sử dụng WebElement đã định vị trước đó của nó, chọn một khung

40) Đề cập đến 5 ngoại lệ khác nhau mà bạn có trong trình điều khiển web Selenium?

5 ngoại lệ khác nhau mà bạn có trong trình điều khiển web Selenium là

  • WebDriverException
  • NoAlertPresentException
  • NoSuchWindowException
  • NoSuchElementException
  • TimeoutException

41) Giải thích bằng cách sử dụng Webdriver cách bạn có thể thực hiện nhấp đúp?

Bạn có thể thực hiện nhấp đúp bằng cách sử dụng

  • Cú pháp- Actions act = new Actions (trình điều khiển);
  • act.doubleClick (webelement);

42) Bạn sẽ sử dụng Selenium để tải lên một tệp tin như thế nào?

Bạn có thể sử dụng lệnh “type” để nhập vào hộp nhập tệp của tệp tải lên. Sau đó, bạn phải sử dụng lớp “Robot” trong JAVA để tải tệp lên hoạt động.

43) Việc triển khai trình điều khiển web nào là nhanh nhất?

Việc triển khai HTMLUnit Driver là nhanh nhất, HTMLUnitDriver không thực hiện kiểm tra trên trình duyệt mà chỉ thực hiện yêu cầu http đơn giản, nhanh hơn nhiều so với khởi chạy trình duyệt và thực hiện kiểm tra

44) Giải thích cách bạn có thể xử lý các khung bằng Selenium 2.0?

Để kiểm soát khung HTML, bạn có thể sử dụng phương pháp khung “SwitchTo ”-

driver.switchTo (). frame (“frameName”);

Để chỉ định khung, bạn có thể sử dụng số chỉ mục

driver.switchTo (). frame (“parentFrame.4.frameName”);

Điều này sẽ mang lại quyền kiểm soát trên khung có tên- “frameName” của tên khung phụ thứ 4 “parentFrame”

45) Sự khác biệt giữa getWindowhandles () và getwindowhandle () là gì?

getwindowhandles (): Nó được sử dụng để lấy địa chỉ của tất cả trình duyệt đang mở và kiểu trả về của nó là Set

getwindowhandle (): Nó được sử dụng để lấy địa chỉ của trình duyệt hiện tại, nơi có điều khiển và kiểu trả về là chuỗi

46) Giải thích cách bạn có thể chuyển trở lại từ một khung?

Để chuyển trở lại từ một khung, hãy sử dụng phương thức defaultContent ()

Syntax-driver.switchTo (). DefaultContent ();

47) Liệt kê các loại định vị?

Các loại định vị khác nhau là

  • By.id ()
  • Bằng tên()
  • By.tagName ()
  • By.className ()
  • By.linkText ()
  • By.partialLinkText ()
  • By.xpath
  • By.cssSelector ()

48) Lệnh nào được sử dụng để hiển thị các giá trị của một biến vào bảng điều khiển hoặc nhật ký đầu ra?

  • Để hiển thị một chuỗi không đổi, có thể sử dụng lệnh là echo
  • Nếu để hiển thị giá trị của một biến, bạn có thể sử dụng lệnh như echo $ {tên biến >>

Trên đây là sử dụng PHP. Nếu bạn đang sử dụng Java, hãy thay thế echo bằng System.out.println

49) Giải thích cách bạn có thể sử dụng kịch bản khôi phục với Selenium?

Các tình huống khôi phục phụ thuộc vào ngôn ngữ lập trình bạn sử dụng. Nếu bạn đang sử dụng Java thì bạn có thể sử dụng xử lý ngoại lệ để khắc phục tương tự. Bằng cách sử dụng “Thử Catch Block” trong các bài kiểm tra Java Selenium WebDriver của bạn

50) Giải thích cách lặp qua các tùy chọn trong tập lệnh thử nghiệm?

Để lặp lại các tùy chọn trong tập lệnh thử nghiệm, bạn có thể lặp lại các tính năng của ngôn ngữ lập trình, ví dụ: để nhập dữ liệu thử nghiệm khác nhau vào một hộp văn bản, bạn có thể sử dụng vòng lặp “for” trong Java

// kiểm tra việc thu thập dữ liệu trong một mảng

String [] testData = {“test1”, “test2”, “test3”};

// lặp qua từng dữ liệu thử nghiệm

For (string s: test data) {selenium.type (“elementLocator”, testData); }

51) Làm thế nào bạn có thể chuẩn bị báo cáo html tùy chỉnh bằng cách sử dụng TestNG trong khuôn khổ kết hợp?

Có ba cách

  • Junit: Với sự giúp đỡ của ANT
  • TestNG: Sử dụng inbuilt default.html để lấy báo cáo HTML. Ngoài ra báo cáo XST từ các kết hợp ANT, Selenium, Testng
  • Sử dụng các báo cáo tùy chỉnh của riêng chúng tôi bằng cách sử dụng XSL jar để chuyển đổi nội dung XML sang HTML

52) Từ tập lệnh thử nghiệm của bạn, làm thế nào bạn có thể tạo báo cáo thử nghiệm html?

Để tạo báo cáo kiểm tra html có ba cách

  • TestNG: Sử dụng inbuilt default.html để lấy báo cáo HTML. Ngoài ra báo cáo XLST từ tổ hợp ANT, Selenium, TestNG
  • JUnit: Với sự trợ giúp của ANT
  • Sử dụng các báo cáo tùy chỉnh của riêng chúng tôi bằng cách sử dụng XSL jar để chuyển đổi nội dung XML sang HTML

53) Giải thích cách bạn có thể chèn một điểm ngắt trong Selenium IDE?

Trong Selenium IDE để chèn một điểm ngắt

  • Chọn “Chuyển đổi điểm ngắt” bằng cách nhấp chuột phải vào lệnh trong Selenium IDE
  • Nhấn “B” trên bàn phím và chọn lệnh trong Selenium IDE
  • Nhiều điểm ngắt có thể được đặt trong Selenium IDE

54) Giải thích trong Selenium IDE cách bạn có thể gỡ lỗi các bài kiểm tra?

  • Chèn điểm ngắt từ vị trí mà bạn muốn thực hiện kiểm tra từng bước
  • Chạy trường hợp thử nghiệm
  • Tại điểm ngắt đã cho, việc thực thi sẽ bị tạm dừng
  • Để tiếp tục với câu lệnh tiếp theo, hãy nhấp vào nút màu xanh lam
  • Nhấp vào nút “Chạy” để tiếp tục thực hiện tất cả các lệnh cùng một lúc

55) Selenese là gì và các loại Selenese là gì?

Selenese là một bộ lệnh selen được sử dụng để chạy thử nghiệm

Có ba loại Selenese

  • Hành động: Nó được sử dụng để thực hiện các hoạt động và tương tác với các phần tử mục tiêu
  • Khẳng định: Nó được sử dụng như một điểm kiểm tra
  • Accessors: Nó được sử dụng để lưu trữ các giá trị trong một biến

56) Giải thích những hạn chế của Selenium IDE là gì?

Những hạn chế của Selenium IDE

  • Xử lý ngoại lệ không có mặt
  • Selenium IDE chỉ sử dụng các ngôn ngữ HTML
  • Không thể đọc cơ sở dữ liệu bên ngoài với IDE
  • Không thể đọc từ các tệp bên ngoài như .txt, .xls
  • Không thể thực hiện câu lệnh điều kiện hoặc câu lệnh rẽ nhánh như câu lệnh if, else, select

57) Hai chế độ xem trong Selenium IDE là gì?

Có thể mở Selenium IDE dưới dạng cửa sổ bật lên hoặc trong thanh bên

58) Trong IDE selen, bộ định vị phần tử nào có thể được sử dụng để định vị các phần tử trên trang web?

Trong selen chủ yếu có 4 chất định vị được sử dụng

  • Bộ định vị đường dẫn X
  • Bộ định vị css
  • Id html
  • Tên html

59) Trong Selenium IDE, làm thế nào bạn có thể tạo số và ngày ngẫu nhiên cho dữ liệu thử nghiệm?

Trong Selenium IDE, bạn có thể tạo các số ngẫu nhiên bằng cách sử dụng Java Script

kiểu

css = input # s

javascript {Math.random ()}

Va cho

kiểu

css = input # s

javascript {new Date ()}

60) Làm thế nào bạn có thể chuyển đổi bất kỳ bài kiểm tra Selenium IDE nào từ Selenese sang ngôn ngữ khác?

Bạn có thể sử dụng tùy chọn định dạng của Selenium IDE để chuyển đổi các bài kiểm tra sang một ngôn ngữ lập trình khác

61) Sử dụng Selenium IDE có thể lấy dữ liệu từ một ô bảng html cụ thể không?

Bạn có thể sử dụng lệnh "storeTable"

Ví dụ lưu trữ văn bản từ ô 0,2 từ một bảng html

storeTable

Css = # bảng 0.2

textFromCell

62) Giải thích điều gì có thể khiến thử nghiệm Selenium IDE không thành công?

  • Khi bộ định vị đã thay đổi và Selenium IDE không thể định vị phần tử
  • Khi phần tử Selenium IDE đang chờ truy cập không xuất hiện trên trang web và hoạt động đã hết thời gian chờ
  • Khi phần tử Selenium IDE đang cố gắng truy cập không được tạo

63) Giải thích cách bạn có thể gỡ lỗi các bài kiểm tra trong Selenium IDE?

  • Chèn điểm ngắt từ vị trí mà bạn muốn thực hiện từng bước
  • Chạy trường hợp thử nghiệm
  • Tại điểm ngắt đã cho, việc thực thi sẽ bị tạm dừng
  • Để tiếp tục với bước tiếp theo, hãy nhấp vào nút Xanh lam
  • Để chạy các lệnh cùng một lúc, hãy nhấp vào nút chạy

64) Từ Selenium IDE, bạn có thể thực thi một dòng đơn như thế nào?

Từ Selenium IDE, lệnh đơn dòng có thể được thực thi theo hai cách

  • Chọn “Thực thi lệnh này” bằng cách nhấp chuột phải vào lệnh trong Selenium IDE
  • Nhấn phím “X” trên bàn phím sau khi chọn lệnh trong Selenium IDE

65) Chế độ xem nguồn hiển thị tập lệnh của bạn trong Selenium IDE ở định dạng nào?

Trong chế độ xem nguồn Selenium IDE hiển thị tập lệnh của bạn ở định dạng XML

66) Giải thích cách bạn có thể chèn điểm bắt đầu trong Selenium IDE?

Theo hai cách, selen IDE có thể được thiết lập

  • Nhấn phím “S” trên bàn phím và chọn lệnh trong Selenium IDE
  • Trong Seleniun IDE, nhấp chuột phải vào lệnh và chọn “Đặt / Xóa điểm bắt đầu”

67) Điều gì sẽ xảy ra nếu bạn đã viết bộ định vị phần tử của riêng mình và bạn sẽ kiểm tra nó như thế nào?

Để kiểm tra bộ định vị, người ta có thể sử dụng “Nút Tìm” của Selenium IDE, khi bạn nhấp vào nó, bạn sẽ thấy trên màn hình một phần tử được đánh dấu miễn là bộ định vị phần tử của bạn đúng hoặc nếu không sẽ xuất hiện thông báo lỗi

68) Biểu thức chính quy là gì? Làm cách nào bạn có thể sử dụng các biểu thức chính quy trong Selenium?

Biểu thức chính quy là một chuỗi văn bản đặc biệt được sử dụng để mô tả một mẫu tìm kiếm. Trong Selenium IDE, biểu thức chính quy có thể được sử dụng với từ khóa- regexp: như một tiền tố cho giá trị và các mẫu cần được bao gồm cho các giá trị mong đợi.

69) Mở rộng cốt lõi là gì?

Nếu bạn muốn “mở rộng” chức năng defualt được cung cấp bởi Thư viện chức năng Selenium, bạn có thể tạo một Tiện ích mở rộng cốt lõi. Chúng còn được gọi là “Tiện ích mở rộng người dùng”. Bạn thậm chí có thể tải xuống Core Extension được tạo sẵn được tạo bởi những người đam mê Selenium khác.

70) Bạn sẽ xử lý như thế nào khi làm việc với nhiều cửa sổ trong Selenium?

Chúng ta có thể sử dụng lệnh selectWindow để chuyển đổi giữa các cửa sổ. Lệnh này sử dụng tiêu đề của Windows để xác định cửa sổ nào cần chuyển sang.

71) Bạn sẽ xác minh vị trí cụ thể của một phần tử web như thế nào

Bạn có thể sử dụng verifyElementPositionLeft & verifyElementPositionTop. Nó thực hiện so sánh pixel về vị trí của phần tử từ Trái và Đầu trang tương ứng

72) Làm thế nào bạn có thể truy xuất thông báo trong hộp cảnh báo?

Bạn có thể sử dụng lệnh storeAlert, lệnh này sẽ tìm nạp thông báo của cảnh báo bật lên và lưu trữ nó trong một biến.

73) Selen RC (Điều khiển từ xa) là gì?

Selenium IDE có những hạn chế về hỗ trợ trình duyệt và hỗ trợ ngôn ngữ. Bằng cách sử dụng Selenium RC, giới hạn có thể được giảm bớt.

  • Trên các nền tảng khác nhau và trình duyệt web khác nhau để tự động hóa ứng dụng web, selenium RC được sử dụng với các ngôn ngữ như Java, C #, Perl, Python
  • Selenium RC là một nền tảng java và sử dụng bất kỳ ngôn ngữ nào nó có thể tương tác với ứng dụng web
  • Sử dụng máy chủ, bạn có thể bỏ qua hạn chế và chạy tập lệnh tự động hóa của mình chạy trên bất kỳ ứng dụng web nào

74) Tại sao Selenium RC được sử dụng?

Selenium IDE không hỗ trợ trực tiếp nhiều chức năng như câu lệnh điều kiện, Lặp lại, ghi nhật ký và báo cáo kết quả kiểm tra, xử lý lỗi không mong muốn, v.v. vì IDE chỉ hỗ trợ ngôn ngữ HTML. Để xử lý các vấn đề như vậy, Selenium RC được sử dụng, nó hỗ trợ các ngôn ngữ như Perl, Ruby, Python, PHP bằng cách sử dụng các ngôn ngữ này, chúng ta có thể viết chương trình để đạt được các vấn đề IDE.

75) Giải thích sự khác biệt chính giữa trình điều khiển web và RC là gì?

Sự khác biệt chính giữa Selenium RC và Webdriver là, selenium RC đưa chức năng javascript vào trình duyệt khi trang được tải. Mặt khác, Selenium Webdriver điều khiển trình duyệt bằng cách sử dụng các trình duyệt được tích hợp sẵn hỗ trợ

76) Ưu điểm của RC là gì?

Ưu điểm của RC là

  • Có thể đọc hoặc ghi dữ liệu từ / sang .xls, .txt, v.v.
  • Nó có thể xử lý các đối tượng động và các phần tử giao diện người dùng dựa trên Ajax
  • Các vòng lặp và điều kiện có thể được sử dụng để có hiệu suất tốt hơn và tính linh hoạt
  • Hỗ trợ nhiều ngôn ngữ lập trình và hệ điều hành
  • Đối với bất kỳ trình duyệt hỗ trợ tập lệnh JAVA nào, có thể sử dụng Selenium RC

77) Giải thích framework là gì và các framework có sẵn trong RC là gì?

Một tập hợp các thư viện và lớp được gọi là Framework và chúng rất hữu ích khi người kiểm thử phải tự động hóa các trường hợp kiểm thử. NUnit, JUnit, TestNG, Bromine, RSpec, unittest là một số framework có sẵn trong RC.

78) Làm thế nào chúng ta có thể xử lý cửa sổ bật lên trong RC?

Để xử lý cửa sổ bật lên trong RC, sử dụng phương thức selectWindow, cửa sổ bật lên sẽ được chọn và phương thức windowFocus sẽ cho phép điều khiển từ cửa sổ hiện tại đến cửa sổ bật lên và thực hiện các hành động theo tập lệnh

79) Những hạn chế kỹ thuật khi sử dụng Selenium RC là gì?

Ngoài hạn chế về "chính sách nguồn gốc" đối với js, Selenium cũng bị hạn chế thực hiện bất kỳ điều gì nằm ngoài trình duyệt.

80) Chúng ta có thể sử dụng Selenium RC để chạy thử nghiệm trên hai trình duyệt khác nhau trên một hệ điều hành mà không có Selenium Grid không?

Có, có thể xảy ra khi bạn không sử dụng khung kiểm tra JAVA. Thay vì sử dụng khung kiểm tra Java nếu bạn đang sử dụng trình điều khiển máy khách java của selenium thì TestNG cho phép bạn làm điều này. Bằng cách sử dụng thuộc tính "song song = thử nghiệm", bạn có thể đặt các thử nghiệm được thực hiện song song và có thể xác định hai thử nghiệm khác nhau, mỗi thử nghiệm sử dụng trình duyệt khác nhau.

81) Tại sao sử dụng TestNG với Selenium RC?

Nếu bạn muốn tự động hóa hoàn toàn với các nền tảng máy chủ và máy khách khác nhau, Bạn cần một cách để gọi các thử nghiệm từ quy trình dòng lệnh, các báo cáo cho bạn biết điều gì đã xảy ra và sự linh hoạt trong cách bạn tạo các bộ thử nghiệm của mình. TestNG mang lại sự linh hoạt đó.

82) Giải thích cách bạn có thể nắm bắt nhật ký phía máy chủ Selenium Server?

Để nắm bắt nhật ký phía máy chủ trong Selenium Server, bạn có thể sử dụng lệnh

  • java -jar .jar -log selenium.log

83) Ngoài cổng mặc định 4444, bạn có thể chạy Selenium Server như thế nào?

Bạn có thể chạy máy chủ Selenium trên java-jar selenium-server.jar-port khác với cổng mặc định của nó

84) Trung tâm lưới Selenium giữ liên lạc với máy tớ RC như thế nào?

Tại thời điểm xác định trước, trung tâm lưới selen tiếp tục thăm dò tất cả các nô lệ RC để đảm bảo rằng nó có sẵn để thử nghiệm. Tham số quyết định được gọi là “remoteControlPollingIntervalSeconds” và được xác định trong tệp “grid_configuration.yml”

85) Sử dụng Selenium, bạn có thể xử lý độ trễ của mạng như thế nào?

Để xử lý độ trễ mạng, bạn có thể sử dụng driver.manage.pageloadingtime cho độ trễ mạng

86) Để nhập giá trị vào hộp văn bản, ta có thể dùng lệnh gì?

Để nhập giá trị vào hộp văn bản, chúng ta có thể sử dụng lệnh sendkeys ()

87) Làm thế nào để bạn xác định một đối tượng bằng cách sử dụng selen?

Để xác định một đối tượng bằng Selenium, bạn có thể sử dụng

isElementPresent (Bộ định vị chuỗi)

isElementPresent lấy một bộ định vị làm đối số và nếu tìm thấy sẽ trả về một Boolean

88) Trong Selenium Breakpoints và Startpoints là gì?

  • Điểm ngắt: Khi bạn triển khai một điểm ngắt trong mã của mình, việc thực thi sẽ dừng ngay tại đó. Điều này giúp bạn xác minh rằng mã của bạn đang hoạt động như mong đợi.
  • Điểm khởi động Điểm khởi động cho biết điểm bắt đầu thực thi từ đó. Startpoint có thể được sử dụng khi bạn muốn chạy testscript từ giữa đoạn mã hoặc một điểm ngắt.

89) Đề cập tại sao chọn Python thay vì Java trong Selenium?

Một số điểm có lợi cho Python hơn Java để sử dụng với Selenium là,

  • Các chương trình Java có xu hướng chạy chậm hơn so với các chương trình Python.
  • Java sử dụng dấu ngoặc nhọn truyền thống để bắt đầu và kết thúc khối, trong khi Python sử dụng thụt đầu dòng.
  • Java sử dụng kiểu gõ tĩnh, trong khi Python được gõ động.
  • Python đơn giản hơn và nhỏ gọn hơn so với Java.

90) Đề cập đến những thách thức trong Xử lý cuộc gọi Ajax trong Selenium Webdriver là gì?

Những thách thức phải đối mặt trong Xử lý cuộc gọi Ajax trong Selenium Webdriver là

  • Sử dụng lệnh "pause" để xử lý cuộc gọi Ajax không hoàn toàn đáng tin cậy. Thời gian tạm dừng kéo dài làm cho bài kiểm tra chậm không thể chấp nhận được và làm tăng thời gian kiểm tra. Thay vào đó, "waitforcondition" sẽ hữu ích hơn trong việc thử nghiệm các ứng dụng Ajax.
  • Rất khó để đánh giá rủi ro liên quan đến các ứng dụng Ajax cụ thể
  • Được nhà phát triển trao toàn quyền tự do sửa đổi ứng dụng Ajax khiến quá trình thử nghiệm trở nên khó khăn
  • Việc tạo yêu cầu kiểm tra tự động có thể khó đối với các công cụ kiểm tra vì ứng dụng AJAX như vậy thường sử dụng kỹ thuật mã hóa hoặc tuần tự hóa khác nhau để gửi dữ liệu POST.

91) Đề cập đến IntelliJ là gì?

Intellij là một IDE giúp bạn viết mã tốt hơn và nhanh hơn cho Selenium. Intellij có thể được sử dụng trong tùy chọn Java bean và Eclipse.

92) Đề cập đến những cách bạn có thể tùy chỉnh báo cáo TestNG?

Bạn có thể tùy chỉnh báo cáo TestNG theo hai cách,

  • Sử dụng giao diện ITestListener
  • Sử dụng giao diện IReporter

93) Để tạo báo cáo pdf, hãy đề cập đến API Java là gì?

Để tạo báo cáo pdf, bạn cần Java API IText.

94) Đề cập đến người nghe trong Selenium WebDriver là gì?

Trong Selenium WebDriver, Người nghe "lắng nghe" sự kiện được xác định trong tập lệnh selen và xử lý theo đó. Nó cho phép tùy chỉnh các báo cáo hoặc nhật ký TestNG. Có hai trình nghe chính tức là Trình nghe WebDriver và Trình nghe TestNG.

95) Đề cập đến các loại Trình nghe trong TestNG là gì?

Các loại Trình nghe trong TestNG là,

  • IAnnotationTransformer
  • IAnnotationTransformer2
  • IConfigurable
  • IConfigurationListener
  • IExecutionListener
  • IHookable
  • IInvokedMethodListener
  • IInvokedMethodListener2
  • IMethodInterceptor
  • IReporter
  • ISuiteListener
  • ITestListener

96) Đề cập đến khả năng mong muốn là gì? Nó hữu ích như thế nào về Selenium?

Khả năng mong muốn là một loạt các cặp khóa / giá trị lưu trữ các thuộc tính của trình duyệt như tên trình duyệt, phiên bản trình duyệt, đường dẫn của trình điều khiển trình duyệt trong hệ thống, v.v. để xác định hành vi của trình duyệt tại thời điểm chạy.

Đối với Selenium,

  • Nó có thể được sử dụng để cấu hình phiên bản trình điều khiển của Selenium WebDriver.
  • Khi bạn muốn chạy các trường hợp thử nghiệm trên một trình duyệt khác với các hệ điều hành và phiên bản khác nhau.

97) Để Kiểm tra Cơ sở dữ liệu trong Selenium Webdriver, API nào là bắt buộc?

Để Kiểm tra cơ sở dữ liệu trong Selenium Webdriver, bạn cần API JDBC (Java Database Connectivity). Nó cho phép bạn thực thi các câu lệnh SQL.

98) Đề cập khi nào sử dụng AutoIT?

Selenium được thiết kế để tự động hóa các ứng dụng dựa trên web trên các trình duyệt khác nhau. Nhưng để xử lý cửa sổ GUI và cửa sổ bật lên không phải HTML trong ứng dụng, bạn cần AutoIT. biết thêm về Cách sử dụng AutoIT với Selenium

99) Đề cập tại sao bạn cần Xử lý phiên khi làm việc với Selenium?

Trong khi làm việc với Selenium, bạn cần Xử lý phiên. Điều này là do, trong quá trình thực thi kiểm tra, Selenium WebDriver phải tương tác với trình duyệt mọi lúc để thực hiện các lệnh nhất định. Tại thời điểm thực thi, cũng có thể trước khi quá trình thực thi hiện tại hoàn tất, người khác bắt đầu thực thi một tập lệnh khác, trong cùng một máy và trong cùng một loại trình duyệt. Vì vậy, để tránh tình huống như vậy, bạn cần Xử lý phiên.

100) Đề cập đến những ưu điểm của việc sử dụng Git Hub cho Selenium là gì?

Ưu điểm của việc sử dụng Git Hub cho Selenium là

  • Nhiều người khi họ làm việc trên cùng một dự án, họ có thể cập nhật chi tiết dự án và thông báo cho các thành viên khác trong nhóm đồng thời.
  • Jenkins có thể giúp bạn xây dựng dự án từ kho lưu trữ từ xa thường xuyên. Điều này giúp bạn theo dõi các bản dựng bị lỗi.

Chuẩn bị cho cuộc phỏng vấn xin việc của bạn !!! Xem qua Hướng dẫn về Selenium để chuẩn bị tốt hơn. Kiểm tra kiến ​​thức của bạn với Selenium Quiz

Tải xuống PDF miễn phí: Câu hỏi & câu trả lời phỏng vấn Selenium

Bản pdf câu hỏi phỏng vấn Selenium chi tiết này sẽ giúp bạn xóa tan những nghi ngờ về các câu hỏi phỏng vấn selen và cũng sẽ giúp bạn vượt qua cuộc phỏng vấn.