我有一个测试类导航,并且我派生了从Navigation类派生的类LeadExTest。这两个类都是[TestClass]类型
现在我有一个有序的测试文件,我需要按照下面显示的顺序执行一些测试。 后台管理 做一些动作 退出浏览器
AdminLogin,导航到页面并退出属于Navigation类的浏览器测试方法,并做一些属于leadextest类的操作
当我执行这个有序的测试文件时,管理员登录并执行一些操作测试用例执行得很好,但退出浏览器方法没有被击中。
//Base class
public class Navigation
{
protected static IWebDriver driver;
protected WebDriverWait wait;
protected StringBuilder verificationErrors;
private string baseURL;
//private bool acceptNextAlert = true;
protected static string advertiserId = "6570";
protected static Actions builder;
[TestInitialize]
public void SetupTest()
{
if (driver == null)
{
driver = new FirefoxDriver();
driver.Manage().Window.Maximize();
baseURL = ConfigurationManager.AppSettings["base_url"].ToString();
verificationErrors = new StringBuilder();
//string url = @"https://stage.madisonlogic.com/login.aspx";
//driver.Navigate().GoToUrl(url.ToString());
driver.Navigate().GoToUrl(ConfigurationManager.AppSettings["test_url"].ToString());
builder = new Actions(driver);
}
wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
}
[TestMethod]
public void adminLogin()
{
CommonFunctions.Login(driver, "rlodha", "a");
if (IsElementPresent(By.ClassName("TopTitle")))
Assert.AreEqual("Admin Center | Dashboard", driver.FindElement(By.ClassName("TopTitle")).Text.Trim().ToString());
else
Assert.Fail("Timed Out");
}
[TestMethod]
public void browserQuit()
{
CommonFunctions.BrowserQuit(driver);
Assert.IsNull(driver);
}
//derived class
[TestMethod]
public void Nav_Lead_Delivery()
{
builder.MoveToElement(driver.FindElement(By.Id("Content_AdvertiserMenu1_LeadsBtn"))).Perform();
driver.FindElement(By.Id("Content_AdvertiserMenu1_LeadExportBtn")).Click();
Console.Write("Hi");
}
答案 0 :(得分:1)
嗯,你只是宣称它是另一种测试方法,所以当然这不会起作用。
当调用你的方法时,你需要给MSTest更多关于的线索,所以用ClassCleanup替换它以告诉MSTest在所有测试完成后调用这个方法