Я пишу автоматический тест в .NET, и у меня есть небольшая проблема с [SetUp] - он не работает до [Test], а браузер Chrome даже не открывает новое окно - я понятия не имею, почему.
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System.Net;
using System.Threading;
using Tests.Settings;
namespace Tests.TestCaseScenario
{
public class BaseTestCaseTemplate
{
protected string password;
protected string userName;
protected string websideURL;
public IWebDriver Driver = new ChromeDriver();
//load before each test
[SetUp]
public void SetUp()
{
//load userconfig.json
var UserConfigReader = new UserConfigReader();
var CurrentUserConfig = UserConfigReader.LoadJsonConfigToObj(UserConfigPath);
password = CurrentUserConfig.Password;
userName = CurrentUserConfig.UserName;
websideURL = CurrentUserConfig.WebsiteURL;
Driver.Navigate().GoToUrl(websideURL);
Driver.Manage().Window.Maximize();
}
}
}
А вот мой класс теста
using Microsoft.VisualStudio.TestTools.UnitTesting;
using NUnit.Framework;
namespace Tests.TestCaseScenario
{
[TestClass]
public class SimplyChecking : BaseTestCaseTemplate
{
[Test]
public void ApplicationCheckerSimple()
{
HomePage homePage = new HomePage();
homePage.Login(userName, password);
}
}
}
и класс моей страницы:
using OpenQA.Selenium;
using OpenQA.Selenium.Support.PageObjects;
namespace Tests.Pages
{
public class HomePage : BasePageTemplate
{
[FindsBy(How = How.Id, Using = "UserName")]
private IWebElement UserName;
[FindsBy(How = How.Id, Using = "Password")]
private IWebElement Password;
[FindsBy(How = How.ClassName, Using = "btn-primary")]
private IWebElement LoginButton;
public void Login(string user, string password)
{
UserName.SendKeys(user);
Password.SendKeys(password);
LoginButton.Click();
}
}
}
Тест даже не запускается - он не возвращает никакого значения(пройти или не пройти), но когда я изменяю [Test] на [TestMethod], он запускается и дает отрицательный результат.