使用C#+Edge (Chromium)進行Web自動化測試


今天看到了VisualStudio中現在已經自帶了Web單元測試項目模板,便試了一下,發現還比較好用,它默認的是Selenium實現的,測試組在用Selenium+Python來寫過自動化測試,原來它也是支持C#的,Python用起來還是沒有C#順手,看來以后也可以自己用c#來寫寫簡單的Web自動化測試了。

C#的Selenium庫默認支持Chrome,IE,Firefox,Edge等主流瀏覽器,而我最近用的較多的是微軟Chromium內核的Edge,可能由於它還沒有正式發布的原因,現在還沒有沒有Chromium Edge的默認支持。由於Edge (Chromium)的內核基本上和Chrome是一致的,想來應該是可以使用ChromeDriver來驅動了,摸索試了一下,果然可行,步驟如下:

  1. 在微軟WebDriver官網下載Edge (Chromium)的webdriver,需要和當前瀏覽器版本一致
  2. 安裝Nuget包Selenium.WebDriver

默認情況下,ChromeDriver無法支持Edge的webdriver的,我把msedgedriver的名字改成chromedriver試了一下,是可以的。不過Selenium也是可以直接指定webdriver程序名稱的。

var service = ChromeDriverService.CreateDefaultService(@"D:\Develop\WebDriver""msedgedriver.exe");
var option = new ChromeOptions
{
    LeaveBrowserRunning = true,
    BinaryLocation = @"C:\Program Files (x86)\Microsoft\Edge Dev\Application\msedge.exe"
};
//option.AddArgument("--headless");
_driver = new ChromeDriver(serviceoption);

主要需要配置兩個地方:webdriver路徑和edge路徑。各位可以參考自己的實際情況配置,配置完了這個后,后面就和操作chrome一樣了。

PS:本文這里只是在Selenium沒有出官方方案前的一個臨時方案,相信后面會有官方支持的,那時就更加簡單了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM