есть файл authtoken в файлах cookie, который используется для проверки пользователя, но когда я пытаюсь запустить тестовый код selenium C# с использованием Nunit и cmd, запуск экземпляра chrome и нет файлов cookie, поэтому он перенаправляет меня на страницу входа. вопрос в том, почему в экземпляре, который запускается во время теста, нет куки, и как я разрешаю эту проблему. это мой код.Почему тестовый чехол селена работает без доступа к куки?
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using System;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
namespace AutomationTest
{
[TestFixture]
public class SeleniumTest
{
private IWebDriver driver;
private StringBuilder verificationErrors;
private string baseURL;
private bool acceptNextAlert = true;
[SetUp]
public void SetupTest()
{
driver = new ChromeDriver();
baseURL = "http://localhost/";
verificationErrors = new StringBuilder();
}
[TearDown]
public void TeardownTest()
{
//try
//{
// driver.Quit();
//}
//catch (Exception)
//{
// // Ignore errors if unable to close the browser
//}
//Assert.AreEqual("", verificationErrors.ToString());
}
[Test]
public void TheSTest()
{
driver.Navigate().GoToUrl(baseURL + "/TrailHead/");
driver.FindElement(By.Id("addNewLeadButton")).Click();
driver.FindElement(By.CssSelector("td.formTitle > input.td-button")).Click();
driver.FindElement(By.Id("township")).Clear();
driver.FindElement(By.Id("township")).SendKeys("2n");
driver.FindElement(By.Id("range")).Clear();
driver.FindElement(By.Id("range")).SendKeys("2e");
driver.FindElement(By.Id("section")).Clear();
driver.FindElement(By.Id("section")).SendKeys("2");
driver.FindElement(By.Id("legal")).Clear();
driver.FindElement(By.Id("legal")).SendKeys("2");
driver.FindElement(By.Id("NRI")).Clear();
driver.FindElement(By.Id("NRI")).SendKeys("2");
driver.FindElement(By.Id("NMA")).Clear();
driver.FindElement(By.Id("NMA")).SendKeys("2");
driver.FindElement(By.Id("tractAskedPrice")).Clear();
driver.FindElement(By.Id("tractAskedPrice")).SendKeys("2");
driver.FindElement(By.CssSelector("div.modalFooter > div.footer-right-button-save")).Click();
driver.FindElement(By.XPath("//div[@onclick='saveAndExit()']")).Click();
// Warning: assertTextPresent may require manual changes
Assert.IsTrue(Regex.IsMatch(driver.FindElement(By.CssSelector("BODY")).Text, "^[\\s\\S]*$"));
}
private bool IsElementPresent(By by)
{
try
{
driver.FindElement(by);
return true;
}
catch (NoSuchElementException)
{
return false;
}
}
private bool IsAlertPresent()
{
try
{
driver.SwitchTo().Alert();
return true;
}
catch (NoAlertPresentException)
{
return false;
}
}
private string CloseAlertAndGetItsText()
{
try
{
IAlert alert = driver.SwitchTo().Alert();
string alertText = alert.Text;
if (acceptNextAlert)
{
alert.Accept();
}
else
{
alert.Dismiss();
}
return alertText;
}
finally
{
acceptNextAlert = true;
}
}
}
}
Добро пожаловать в переполнение стека! Похоже, вам нужно научиться использовать отладчик. Пожалуйста, помогите нам с некоторыми [дополнительными методами отладки] (https://ericlippert.com/2014/03/05/how-to-debug-small-programs/). Если у вас все еще есть проблемы после этого, пожалуйста, не забудьте вернуться с более подробной информацией. –