Написание скрипта, который делает несколько вещей для автоматизации веб-процесса. Все это код функционально и прекрасно работает в 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 драйвере . Одна вещь, которую я заметил, - то, что это работает локально, могло ли это быть причиной проблемы?
Любая помощь приветствуется. Я горжусь этим проектом и хочу распространить его среди других работников, потому что он экономит много времени. Я не мог найти что-либо, касающееся этой проблемы, конкретно в стеке, так что прости меня, если я что-то пропустил.