【发布时间】:2018-10-15 11:16:12
【问题描述】:
我是 specflow 中的一个新成员,我正在实施框架。当我创建一个具有多个场景的功能文件并执行我的测试时,它打开一个浏览器实例并运行成功,当我添加一个具有多个场景的功能文件并执行我的测试而不是启动多个浏览器实例时,每个场景的一个实例任何人都可以提供帮助找出我的代码有什么问题
Start.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TechTalk.SpecFlow;
namespace Orange_HRM
{
class Start : SeleniumDriver
{
[BeforeScenarioBlock]
public void Setup()
{
Intitialize();
WebDriver.Navigate().GoToUrl(BaseAddress);
}
[AfterScenarioBlock]
public void TearDown()
{
Close();
}
}
}
SeleniumDriver.cs
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Orange_HRM
{
class SeleniumDriver
{
public static IWebDriver WebDriver;
public static string BaseAddress
{
get { return Constants.Url; }
}
public static void Intitialize()
{
WebDriver = new ChromeDriver();
WebDriver.Manage().Window.Maximize();
TurnOnWait();
}
public static void Navigate()
{
WebDriver.Navigate().GoToUrl(BaseAddress);
}
public static void Close()
{
WebDriver.Close();
}
public static void Quit()
{
WebDriver.Quit();
}
private static void TurnOnWait()
{
WebDriver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5);
WebDriver.Manage().Timeouts().PageLoad = TimeSpan.FromMinutes(2);
}
}
}
【问题讨论】:
-
请问您的 main() 方法或类 Orange_HRM 的对象创建在哪里以及使用 System.Threading.Tasks 命名空间的目的是什么
-
参考帖子 stackoverflow.com/questions/5028926/…> 和帖子 sqa.stackexchange.com/questions/5755/…> 和帖子 stackoverflow.com/questions/25467957/…>
标签: selenium selenium-webdriver c#-4.0 specflow