Bảng cheat Selenium C#
Các biểu thức đường dẫn này trông rất giống các biểu thức đường dẫn bạn sử dụng với các hệ thống tệp máy tính truyền thống Show Hàm chuẩn XPathXPath bao gồm hơn 200 chức năng tích hợp Có các hàm cho giá trị chuỗi, giá trị số, booleans, so sánh ngày và giờ, thao tác nút, thao tác trình tự, v.v. Ngày nay, các biểu thức XPath cũng có thể được sử dụng trong JavaScript, Java, Lược đồ XML, PHP, Python, C và C++ và nhiều ngôn ngữ khác Ban đầu, tôi đã tạo cheat sheet trong khi chúng tôi phát triển các phiên bản đầu tiên của khung kiểm tra tự động BELLATRIX. Hầu hết những thứ trong đó vẫn có liên quan Khởi tạo//NuGet. selen. Trình điều khiển web. ChromeDriversử dụng OpenQA. selen. Chrome ; IWebDriver trình điều khiển = . selen. mozilla. firefox. Trình quản lý web ChromeDriver();// NuGet: Selenium.Mozilla.Firefox.Webdriversử dụng OpenQA. selen. Firefox ; IWebDriver trình điều khiển = . selen. Trình điều khiển web. PhantomJS FirefoxDriver();// NuGet: Selenium.WebDriver.PhantomJSsử dụng OpenQA. selen. PhantomJS ; IWebDriver trình điều khiển = . selen. Trình điều khiển web. IEDriver PhantomJSDriver();// NuGet: Selenium.WebDriver.IEDriversử dụng OpenQA. selen. IE ; IWebDriver trình điều khiển = . selen. Trình điều khiển web. EdgeDriver InternetExplorerDriver();// NuGet: Selenium.WebDriver.EdgeDriversử dụng OpenQA. selen. Edge ; IWebDriver trình điều khiển = new EdgeDriver(); Bộ định vịnày . trình điều khiển. FindElement (Bởi. Tên lớp ( " Tên lớp " . ));this.trình điều khiển. FindElement (Bởi. CssSelector ( " css " . ));this.trình điều khiển. FindElement (Bởi. Id ( " id " . ));this.trình điều khiển. FindElement (Bởi. Văn bản liên kết ( " văn bản " . ));this.trình điều khiển. FindElement (Bởi. Tên ( " tên " . ));this.trình điều khiển. FindElement (Bởi. Văn bản liên kết một phần ( " pText " . ));this.trình điều khiển. FindElement (Bởi. Tên thẻ ( " đầu vào " . ));this.trình điều khiển. FindElement (Bởi. XPath ( " //*[@id='editor'] . "));// Find multiple elementsIReadOnlyCollection<IWebElement> anchors = this.trình điều khiển. FindElements (Bởi. Tên thẻ ( " a " . ));// Search for an element inside anothervar div = this.trình điều khiển. FindElement (Bởi. Tên thẻ ( " div " . )).FindElement (Bởi. TagName( " a " )); Hoạt động các yếu tố cơ bảnIWebElement phần tử = trình điều khiển. FindElement (Bởi. Id ( " id " . Nhấp vào));element.Click (); phần tử. Phần tử SendKeys ("someText"); . Xóa phần tử (); . Gửi (); chuỗi Văn bản bên trong = element.Text ; bool isEnabled = . Đã bật ; bool isDisplayed = . Đã hiển thị ; bool isSelected = . Đã chọn ; IWebElement phần tử = . FindElement (Bởi. Id ( " id " . ));SelectElement select = new SelectElement(element);select.SelectByIndex (1); chọn . SelectByText ("Ford"); select . SelectByValue ("ford"); select . Bỏ chọn tất cả (); chọn . Bỏ chọn theo chỉ mục (1); chọn . Bỏ chọn theo văn bản ("Ford"); chọn . DeselectByValue ("ford"); IWebElement seredOption = select.SelectedOption ; IList < IWebElement . > allSelected = select.AllSelectedOptions ; bool isMultipleSelect = . select.IsMultiple ; Hoạt động các phần tử nâng cao// Kéo và thảIWebElement phần tử = trình điều khiển. FindElement (Bởi. XPath ( " //*[@id='project'] . DragAndDropToOffset "));Actions move = new Actions(driver);move.DragAndDropToOffset (phần tử, 30, 0). Thực hiện (); // Cách kiểm tra xem một phần tử có hiển thị hay không . IsTrue (trình điều khiển. FindElement (Bởi. XPath( " //*[@id='tve_editor']/div ")).Displayed);// Tải tệp lênIWebElement phần tử = driver.FindElement (Bởi. Id ( " RadUpload1file0 " . Trình điều khiển web. Loạt. Kiểm traTrình điều khiển Web. xml"));String filePath = @"D:WebDriver.Series.TestsWebDriver.xml" ; phần tử. SendKeys (filePath); // Cuộn tiêu điểm để điều khiểnIWebElement liên kết< . FindElement = driver.FindElement (Bởi. Văn bản liên kết một phần ( " Bài trước . ));string js = string.Định dạng ("cửa sổ. cuộn ( 0 , { . Vị trí. Y);});", link.Location.Y);((IJavaScriptExecutor)trình điều khiển). ExecuteScript(js);liên kết. Click();// Chụp ảnh màn hình thành phầnIWebElement element = driver. FindElement(By. XPath( "//*[@id='tve_editor']/div"));var cropArea = new Rectangle(element.Location , phần tử. Size); var bitmap = bmpScreen. Bản sao (cropArea, bmpScreen. PixelFormat); bitmap. Lưu (fileName); // Tập trung vào một điều khiểnIWebElement liên kết< . FindElement = driver.FindElement (Bởi. Văn bản liên kết một phần ( " Bài trước . ));// Wait for visibility of an elementWebDriverWait wait = new WebDriverWait(driver, TimeSpan.Từ giây ( 30 )); wait.Until (Điều kiện dự kiến. VisibilityOfAllElementsLocateBy (By. XPath( " //*[@id='tve_editor']/div[2]/div[2]/div/div "))); Thao tác trình duyệt cơ bản// Điều hướng đến trangnày . trình điều khiển. Điều hướng (). GoToUrl ( @" http. //google. com " ); // Lấy tiêu đề của trangcom . com . string title = this.trình điều khiển. Tiêu đề ; // Lấy URL hiện tạichuỗi url = this.trình điều khiển. Url ; // Lấy mã nguồn HTML của trang hiện tạichuỗi html = this.trình điều khiển. Nguồn trang ; Hoạt động trình duyệt nâng cao// Xử lý cửa sổ bật lên JavaScriptIAlert a = driver.SwitchTo (). Cảnh báo (); a. Chấp nhận (); a. Loại bỏ (); // Chuyển giữa các cửa sổ hoặc tab trình duyệtReadOnlyCollection < . WindowHandles string> windowHandles = driver.WindowHandles ; chuỗi firstTab = . Đầu tiên (); chuỗi lastTab = windowHandles.Last (); cuối cùng. Chuyển sang (). Cửa sổ (lastTab); // Lịch sử điều hướngnày.trình điều khiển. Điều hướng (). Quay lại (); này . trình điều khiển. Điều hướng (). Làm mới (); cái này . trình điều khiển. Điều hướng (). Chuyển tiếp (); // Tùy chọn 1. liên kết. SendKeys (chuỗi. Empty); // Tùy chọn 2. (( IJavaScriptExecutor ) trình điều khiển . ExecuteScript ( " arguments[0]. focus(); " , liên kết); // Phóng to cửa sổthis . .trình điều khiển. Quản lý (). Cửa sổ. Tối đa hóa (); // Thêm cookie mớiCookie cookie = new OpenQA.Selen. Cookie ("khóa", "giá trị"); cái này . trình điều khiển. Quản lý (). Bánh quy. AddCookie (cookie); // Lấy tất cả cookievar cookies = this.trình điều khiển. Quản lý (). Bánh quy. AllCookies; // Xóa cookie theo tênthis . trình điều khiển. Quản lý (). Bánh quy. Xóa Tên cookie ( " Tên cookie " . );// Delete all cookiesthis.trình điều khiển. Quản lý (). Bánh quy. Xóa tất cả cookie (); //Chụp ảnh toàn màn hìnhẢnh chụp màn hình< . screenshot = ((ITakesScreenshot)driver).Nhận ảnh chụp màn hình (); ảnh chụp màn hình. SaveAsFile (@"pathToImage", ImageFormat. Png); // Đợi cho đến khi trang được tải hoàn toàn qua JavaScriptWebDriverWait chờ = new WebDriverWait(this.trình điều khiển , Khoảng thời gian. Từ giây ( 30 )); wait.Until ((x) =>{ return (( IJavaScriptExecutor)this.driver).ExecuteScript(" trả lại tài liệu. readyState " ). Bằng( " hoàn thành " );}); . . // Switch to framesthis.trình điều khiển. Chuyển sang (). Khung ( 1 ); . .trình điều khiển. Chuyển sang (). Khung ( " Tên khung " . );IWebElement element = this.trình điều khiển. FindElement (Bởi. Là ( " id " . ));this.trình điều khiển. Chuyển sang (). Khung (phần tử); // Chuyển sang tài liệu mặc địnhnày< . .trình điều khiển. Chuyển sang (). Nội dung mặc định (); Cấu hình trình duyệt nâng cao// Sử dụng cấu hình Firefox cụ thểFirefoxProfileManager profileManager = . SetPreference FirefoxProfileManager();FirefoxProfile profile = profileManager.GetProfile ("HARDDISKUSER"); IWebDriver trình điều khiển = new FirefoxDriver(profile);// Set a HTTP proxy FirefoxFirefoxProfile firefoxProfile = new FirefoxProfile();firefoxProfile.SetPreference ("mạng. Ủy quyền. type", 1); firefoxProfile. SetPreference ("mạng. Ủy quyền. http", " proxy của tôi. com "); firefoxProfile. SetPreference ("mạng. Ủy quyền. http_port", 3239); IWebDriver trình điều khiển = mới FirefoxDriver(firefoxProfile);// Set a HTTP proxy ChromeChromeOptions options = new ChromeOptions();var proxy = new Proxy();proxy.Kind = ProxyKind. Thủ công; proxy. Tự động phát hiện = false; proxy. HttpProxy =proxy. SslProxy = "127. 0. 0. 1. 3239"; tùy chọn. Proxy = proxy; tùy chọn. AddArgument ("ignore-certificate-errors"); IWebDriver trình điều khiển = . Chấp nhận Chứng chỉ không đáng tin cậy new ChromeDriver(options);// Accept all certificates FirefoxFirefoxProfile firefoxProfile = new FirefoxProfile();firefoxProfile.AcceptUntrustedCertificates = true; firefoxProfile. AssumeUntrustedCertificateIssuer = false; IWebDriver trình điều khiển = new FirefoxDriver(firefoxProfile);// Accept all certificates ChromeDesiredCapabilities capability = DesiredCapabilities.Chrome (); Môi trường. SetEnvironmentVariable ("trình điều khiển web. trình duyệt Chrome. người lái xe", "C. Đường dẫn đếnTrình điều khiển Chrome. exe"); khả năng. SetCapability (CapabilityType. AcceptSslCertificates, true); IWebDriver trình điều khiển = mới RemoteWebDriver(capability);// Set Chrome options.Tùy chọn Chrome tùy chọn = mới Tùy chọn Chrome . Chrome();DesiredCapabilities dc = DesiredCapabilities.Chrome (); dc. Khả năng đặt (ChromeOptions. Khả năng, tùy chọn); IWebDriver trình điều khiển = mới< . GetProfile< . GetProfile RemoteWebDriver(dc);// Turn off the JavaScript FirefoxFirefoxProfileManager profileManager = new FirefoxProfileManager();FirefoxProfile profile = profileManager.GetProfile ("HARDDISKUSER"); hồ sơ. SetPreference ("javascript. đã bật", sai); IWebDriver trình điều khiển = mới FirefoxDriver(profile);// Set the default page load timeoutdriver.Manage (). Hết giờ (). SetPageLoadTimeout ( new TimeSpan ( . AddExtension 10));// Start Firefox with pluginsFirefoxProfile profile = new FirefoxProfile();profile.AddExtension (@"C. tiện ích mở rộng Vị trí tiện ích mở rộng. xpi"); IWebDriver trình điều khiển = mới FirefoxDriver(profile);// Start Chrome with an unpacked extensionChromeOptions options = new ChromeOptions();options.AddArguments ("load-extension=/pathTo/extension"); Khả năng mong muốn khả năng = new DesiredCapabilities();capabilities.SetCapability (ChromeOptions. Khả năng, tùy chọn); Khả năng mong muốn dc = Khả năng mong muốn. Chrome (); dc. Khả năng đặt (ChromeOptions. Khả năng, tùy chọn); IWebDriver trình điều khiển = mới RemoteWebDriver(dc);// Start Chrome with a packed extensionChromeOptions options = new ChromeOptions();options.AddExtension (Đường dẫn. GetFullPath ( " localpathto/extension. crx " )); Khả năng mong muốn khả năng = new DesiredCapabilities();capabilities.SetCapability (ChromeOptions. Khả năng, tùy chọn); Khả năng mong muốn dc = Khả năng mong muốn. Chrome (); dc. Khả năng đặt (ChromeOptions. Khả năng, tùy chọn); IWebDriver trình điều khiển = mới RemoteWebDriver(dc);// Change the default files’ save locationString downloadFolderPath = @"c:temp" ; Hồ sơ Firefox hồ sơ = new FirefoxProfile();profile.SetPreference ("trình duyệt. Tải xuống. folderList", 2); hồ sơ. SetPreference ("trình duyệt. Tải xuống. dir", downloadFolderPath); hồ sơ. SetPreference ("trình duyệt. Tải xuống. giám đốc. alertOnEXEOpen", false); hồ sơ. SetPreference ("trình duyệt. ứng dụng trợ giúp. không bao giờ hỏi. saveToDisk","ứng dụng/msword, ứng dụng/nhị phân, ứng dụng/ris, văn bản/csv, hình ảnh/png, ứng dụng/pdf, văn bản/html, văn bản/đơn giản, ứng dụng/zip, ứng dụng/x-zip, ứng dụng/x- . this.trình điều khiển = new Trình điều khiển Firefox (hồ sơ); Tải xuống Selenium WebDriver C# Cheat Sheet Đào tạo trực tuyếnC# JAVA KHÔNG CHỨC NĂNG CẤP ĐỘ. 1 4 giờ mỗi ngày BELLATRIX50 Tìm hiểu thêm CẤP ĐỘ. 2 4 giờ mỗi ngày BELLATRIX20 Tìm hiểu thêm CẤP ĐỘ. 3 (Lớp chính) Sau khi thảo luận về các đặc điểm cốt lõi, chúng ta sẽ bắt đầu viết từng phần của tính năng cốt lõi. 4 giờ mỗi ngày BELLATRIX20 Tìm hiểu thêm CẤP ĐỘ. 1 4 giờ mỗi ngày BELLATRIX50 Tìm hiểu thêm CẤP ĐỘ. 2 4 giờ mỗi ngày BELLATRIX20 Tìm hiểu thêm CẤP ĐỘ. 3 (Lớp chính) Sau khi thảo luận về các đặc điểm cốt lõi, chúng ta sẽ bắt đầu viết từng phần của tính năng cốt lõi. 4 giờ mỗi ngày BELLATRIX20 Tìm hiểu thêm 4 giờ mỗi ngày BELLATRIX50 Tìm hiểu thêm Tải xuống mã nguồn đầy đủ Dòng WebDriverTự động hóa web Chụp toàn bộ ảnh chụp màn hình bằng WebDriver với HTML2Canvas. js06/08/2017 / Bởi Anton AngelovTự động hóa web Selenium WebDriver +. MẠNG 5. 0 – Điều Mọi Người Nên Biết02/07/2017 / Bởi Anton AngelovTự động hóa web Trình định vị WebDriver bị đánh giá thấp nhất – XPath20/01/2015 / Bởi Anton Angelovdòng chảy Bắt đầu với SpecFlow sau 10 phút23/10/2016 / Bởi Anton AngelovTự động hóa web Tự động hóa lưới Telerik Kendo với WebDriver và JavaScript29/11/2015 / Bởi Anton Angelovdòng chảy Dòng thông số nâng cao. Sử dụng Hook để mở rộng quy trình thực hiện kiểm thử30/10/2016 / Bởi Anton Angelovdự án mã
Nguyên tắc cơ bản về tự động kiểm tra webCẤP ĐỘ. 1
Khoảng thời gian. 20 giờ4 giờ mỗi ngày -50% mã giảm giáBELLATRIX50 Tìm hiểu thêm Tự động kiểm tra nâng caoCẤP ĐỘ. 2
Khoảng thời gian. 30 giờ4 giờ mỗi ngày -20% mã phiếu giảm giáBELLATRIX20 Tìm hiểu thêm Enterprise Test Automation FrameworkCẤP ĐỘ. 3 (Lớp chính) Sau khi thảo luận về các đặc điểm cốt lõi, chúng ta sẽ bắt đầu viết từng phần của tính năng cốt lõi. Khoảng thời gian. 30 giờ4 giờ mỗi ngày -20% mã phiếu giảm giáBELLATRIX20 Tìm hiểu thêm Nguyên tắc cơ bản về tự động kiểm tra webCẤP ĐỘ. 1
Khoảng thời gian. 20 giờ4 giờ mỗi ngày -50% mã giảm giáBELLATRIX50 Tìm hiểu thêm Tự động kiểm tra nâng caoCẤP ĐỘ. 2
Khoảng thời gian. 30 giờ4 giờ mỗi ngày -20% mã phiếu giảm giáBELLATRIX20 Tìm hiểu thêm Enterprise Test Automation FrameworkCẤP ĐỘ. 3 (Lớp chính) Sau khi thảo luận về các đặc điểm cốt lõi, chúng ta sẽ bắt đầu viết từng phần của tính năng cốt lõi. Khoảng thời gian. 30 giờ4 giờ mỗi ngày -20% mã phiếu giảm giáBELLATRIX20 Tìm hiểu thêm Kiểm tra năng suất
Khoảng thời gian. 24 tiếng4 giờ mỗi ngày -30% mã giảm giáBELLATRIX50 Tìm hiểu thêm Nhận quyền truy cập tức thì vào Mã nguồn mới nhấtVà tham gia Cộng đồng Automate The PlanetNhận mã nguồn đầy đủ Quyền riêng tư của bạn được bảo vệ Đặt mua* biểu thị bắt buộc Địa chỉ email * Tên Đăng ký cho
Tôi đồng ý với Chính sách quyền riêng tư và nhận bản tin và sản phẩm mới Bạn có thể hủy đăng ký bất cứ lúc nào bằng cách nhấp vào liên kết ở cuối email của chúng tôi. Để biết thông tin về thực hành quyền riêng tư của chúng tôi, vui lòng truy cập trang web của chúng tôi |