Я новичок в C# и для моего первого проекта я пытаюсь автоматизировать некоторые задачи с помощью веб-интерфейса.
Мое понимание публичных классов и методов в C# заключается в том, что они должны быть видны остальной части проекта, над которым я работаю, но в данном случае это не так.
Я получаю ошибку «имя типа’ ClearAllUnraisedAlerts ‘не существует в типе’ ClearAlerts'», и я надеюсь, что кто-то может сказать мне, какое ложное предположение или ошибку новичка я делаю здесь.
моя программа.cs is
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ManagedWorkspaceAutomator
{
class Program
{
static void Main(string[] args)
{
AutomationFunctions.AlertsBoard.ClearAlerts test = new AutomationFunctions.AlertsBoard.ClearAlerts.ClearAllUnraisedAlerts();
}
}
}
Который пытается вызвать ClearAllUnraisedAlerts метод в AutomationFunctionsAlertsBoardClearAlerts.цезий
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenQA.Selenium;
namespace ManagedWorkspaceAutomator.AutomationFunctions.AlertsBoard
{
public class ClearAlerts
{
private IWebDriver _driver;
public void ClearAllUnraisedAlerts()
{
_driver = new OpenQA.Selenium.Firefox.FirefoxDriver();
PageModels.LoginPage login = new PageModels.LoginPage(_driver);
login.EnterUsername = "testuser";
login.EnterPassword = "testpass";
login.ClickLogin();
}
}
}
Для полноты, это моя pagemodel, в PageModelsLoginPage.цезий
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenQA.Selenium;
namespace ManagedWorkspaceAutomator.PageModels
{
public class LoginPage
{
protected readonly IWebDriver WebDriver;
public LoginPage(IWebDriver webdriver)
{
this.WebDriver = webdriver;
string title = WebDriver.Title;
if(!title.Equals("Managed Workspace Login"))
{
throw new InvalidOperationException("This is not the Login Page. Current page is: " + title);
}
}
/*
A property to enter username on login page
*/
public string EnterUsername
{
set
{
IWebElement usernameField = WebDriver.FindElement(By.Id("txbUserName"));
usernameField.Clear();
usernameField.SendKeys(value);
}
}
/*
A property to enter password on login page
*/
public string EnterPassword
{
set
{
IWebElement passwordField = WebDriver.FindElement(By.Id("txbPassword"));
passwordField.Clear();
passwordField.SendKeys(value);
}
}
/*
A method to click the login button on the page
*/
public void ClickLogin()
{
IWebElement loginButton = WebDriver.FindElement(By.Id("SubmitB"));
loginButton.Click();
}
}
}
Способ инициализации объекта неправильный. Пожалуйста, сделайте это