首页 > 解决方案 > 有没有办法使用硒比较两个文本文件的内容?

问题描述

有没有办法使用 selenium 比较两个文本文件的内容?我想使用自动化比较两个文件的内容。

标签: seleniumautomation

解决方案


我认为您不需要 Selenium,因为 Selenium 是一个浏览器自动化框架,浏览器主要用于访问网页,因此我建议您查看用于自动化的编程语言的文件比较解决方案。

但是,如果您确实需要注意,IWebDriver.Navigate().GoToUrl函数也可用于打开文件系统上的本地文件。

打开文件后,您可以使用IWebDriver.PageSource属性将其内容读入变量

示例代码(假设Selenium 和 C#使用Chrome浏览器)

using OpenQA.Selenium.Chrome;
using System;

namespace selenium_csharp
{
    class Program
    {
        static void Main(string[] args)
        {
            ChromeDriver driver = new ChromeDriver(ChromeDriverService.CreateDefaultService("c:/path/to/chromedriver/folder", "chromedriver.exe"));
            driver.Navigate().GoToUrl("file://c:/somefolder/file1.txt");
            var file1 = driver.PageSource;
            driver.Navigate().GoToUrl("file://c:/somefolder/file2.txt");
            var file2 = driver.PageSource;
            if (file1.Equals(file2))
            {
                Console.WriteLine("Files are equal");
            }
            else
            {
                Console.WriteLine("Files are not equal");
            }
            driver.Quit();
        }
    }
}

推荐阅读