我想在三个浏览器上执行测试,并且我希望有条件地执行此测试。有条件地执行不同浏览器上的自动化测试
示例 - 如果浏览器名称为chrome,请转至Google.com并搜索硒测试。如果浏览器名称是Firefox,则搜索MongoDB。 这只是一个示例代码解决方案,但我需要在我的项目中实现这个概念。
我使用Nunit的TestFixture属性在多个浏览器上执行测试,我想继续使用NUnit。
这是我正在使用的代码示例。
注意:由于Test Fixture属性中的搜索参数,您可能无法在Test Explorer中看到测试。
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.IE;
using OpenQA.Selenium.Chrome;
using NUnit;
namespace MultipleBrowserTesting
{
[TestFixture(typeof(FirefoxDriver), "MongoDB")]
[TestFixture(typeof(ChromeDriver), "Selenium Testing")]
[TestFixture(typeof(InternetExplorerDriver), "ElasticSearch")]
public class BlogTest<TWebDriver> where TWebDriver : IWebDriver, new()
{
private IWebDriver _driver;
[Test]
public void Can_Visit_Google(string searchString)
{
_driver = new TWebDriver();
// Navigate
_driver.Manage().Window.Maximize();
_driver.Navigate().GoToUrl("http://www.google.ie/");
_driver.FindElement(By.Id("lst-ib")).SendKeys("searchString");
_driver.FindElement(By.Name("btnK")).Click();
FixtureTearDown();
}
[TestFixtureTearDown]
public void FixtureTearDown()
{
// if (_driver != null)
_driver.Close();
}
}
}
我想我以错误的方式传递参数。我已经提到这个链接。
请务必接受答案,以便将问题标记为已回答。你现在不需要这样做......你可以等,只是请不要忘记在一两天内回来。 :) – JeffC
感谢您的信息@JeffC。会这样做。干杯! – Vish