Selenium Webdriver C# не перемещается после публикации в exe - PullRequest
0 голосов
/ 19 февраля 2020

Написание скрипта, который делает несколько вещей для автоматизации веб-процесса. Все это код функционально и прекрасно работает в Visual Studio. Как только код опубликован для распространения, драйвер Chrome запускается, но не выполняет инструкции в коде.

(Вещи должны быть опущены, потому что это корпоративная вещь anet, но я могу убедиться, что все, что касается этих пропущенных вещей, работает нормально.)

Синтаксис: Вот рабочий код .

 public static HashSet<string> GetTestPlans(string username) 
    {
        try
        {
            ChromeOptions option = new ChromeOptions(); //Define option for chrome driver
            option.AddArgument("--headless"); //Define browser as headless
            IWebDriver Test = new ChromeDriver(); //New chrome driver

            string year = new System.DateTime().Year.ToString(); //I don't know why this is here, maybe forgot to delete
            HashSet<string> returnplanners = new HashSet<string>(); /
            HashSet<string> cleaned = new HashSet<string>(); 


            Test.Navigate().GoToUrl("<link>"); 
            IWebElement planners = Test.FindElement(By.Id("<id>")); 
            IReadOnlyCollection<IWebElement> plans = planners.FindElements(By.TagName("a")); 

            foreach (IWebElement i in plans) //Iterate through 
            {
                string inner = i.Text; //Convert <a> tag to string 

                returnplanners.Add(inner); //add it to hashset for drop down menu

            }
            Test.Quit(); //Exit driver 
            return returnplanners;
    }
        catch (SystemException e)
        {
            HashSet<string> returnplanners = new HashSet<string>();
            return returnplanners;
        }

Я включил только инициализацию веб-драйвера, потому что было бы слишком много затемненного текста, чтобы опубликовать полный код программы. Это только первый используемый пример использования веб-драйвера (я был новичком в Selenium, когда начал это). Я уверен, что устранение первой проблемы решит все проблемы с веб-драйверами

Зависимости: Изображение зависимостей . Я считаю, что у меня есть все, что описано в этом разделе. Код прекрасно работает в Visual Studio. Я включил самый последний драйвер Chrome внизу, чтобы учесть, что это устаревший драйвер. Я также попытался специально указать на обновленный драйвер при запуске драйвера Пример. IWebDriver Test = new ChromeDriver("<Path to driver>");, который тоже не работал.

Актуальная программа: Вот изображение файлов приложения для опубликованного Проект и Вот изображение опубликованной программы . Наконец, изображение экспортированной программы, работающей и останавливающейся на chrome драйвере . Одна вещь, которую я заметил, - то, что это работает локально, могло ли это быть причиной проблемы?

Любая помощь приветствуется. Я горжусь этим проектом и хочу распространить его среди других работников, потому что он экономит много времени. Я не мог найти что-либо, касающееся этой проблемы, конкретно в стеке, так что прости меня, если я что-то пропустил.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...