Браузер Chrome запускается дважды при указании файла для загрузки с помощью Selenium Webdriver c # Nunit - PullRequest
0 голосов
/ 29 мая 2019

Я запускаю свой тестовый пример в 2 разных браузерах "Chrome" и "Firefox". Я пытаюсь указать путь к файлу, который нужно загрузить во время выполнения [test] для "Chrome".Весь код работает как положено, я могу сохранить свой файл по указанному пути.Мой "Firefox" работает нормально, но не для "Chrome".Просто каждый раз, когда я запускаю свой скрипт, он открывает 2 браузера "Chrome", ((1-й) просто открывается и ничего не делает), (2-й) (запускает скрипт как положено)).Таким образом, в каждом тестовом примере, который я запускаю, он будет запускать весь тестовый пример во втором браузере Chrome. Более того, я не мог использовать метод [TearDown], чтобы закрыть браузер, потому что вместо этого он запускался во втором браузере Chrome.1-й "Хром

 [TestFixture(typeof(ChromeDriver))]
[TestFixture(typeof(FirefoxDriver))]



public class Program<TWebDriver> where TWebDriver : IWebDriver, new()

{
    IWebDriver driver;
    IWebElement element;

    [SetUp]
    public void StartBrowser1()
    {

        driver = new TWebDriver();

        ICapabilities caps = ((RemoteWebDriver)driver).Capabilities;
        string browserName = string.Empty;
        if (caps.HasCapability("browserName"))
        {
            browserName = caps.GetCapability("browserName").ToString();

            if (browserName.Equals("chrome"))
            {
                String myDownloadFolder = @"c:\temp\GoogleChrome\";
                var options = new ChromeOptions();
                options.AddUserProfilePreference("download.default_directory", myDownloadFolder);
                driver.Manage().Window.Maximize();
                driver = new ChromeDriver(options);
            }


            }
            // For firefox 
            else if (browserName.Equals("firefox"))
            {
                String myDownloadFolder = @"c:\temp\MozillaFirefox\";
                FirefoxProfile fp = new FirefoxProfile();
                fp.SetPreference("browser.download.folderList", 2);
                fp.SetPreference("browser.download.dir", myDownloadFolder);
                fp.SetPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf");
                // disable Firefox's built-in PDF viewer
                fp.SetPreference("pdfjs.disabled", true);}

                Base.Login(driver);  //  base class , the code for the base class

                /* public static void Login(IWebDriver driver)
                 {
                driver.Manage().Window.Maximize();
                driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5);
                driver.Navigate().GoToUrl("http://192.163.0.1/admin/Login/Login.aspx");
                driver.FindElement(By.Id("ctl00_MainContent_ucLogin_txtUserID")).SendKeys("abc");
                driver.FindElement(By.Id("ctl00_MainContent_ucLogin_txtPassword")).SendKeys("123456");
                driver.FindElement(By.Id("ctl00_MainContent_ucLogin_cmdLogin")).Click();
                }
                */
            }                                                    


[TearDown]
    public void CloseBrowser()
    {
        Base.Logout(driver);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...