0

我正在使用 selwnium 网络驱动程序。当我使用 selenium 和 nunit 运行我的测试用例时,我发现每次测试用例启动时都会打开一个新页面,完成后新页面将被破坏。因此,我必须在每个测试用例中打开新页面并登录。

我想让我的测试用例共享一个网页,以便它们可以按顺序执行。

是硒限制,还是实现它的一种方式?

谢谢!

4

2 回答 2

2

尝试在您的内部声明Webdriver实例变量并仅初始化一次。您的行为是因为不同的 webdriver 实例不共享相同的,因此您必须始终登录到所需的页面。statictest classsession

于 2012-11-04T17:45:50.260 回答
0

您可能使用@Before , @After注释。尝试@BeforeClass, @AfterClass 改用。例如:

....
static WebDriver driver;
@BeforeClass
    public static void firefoxSetUp() throws MalformedURLException {


        driver = new FirefoxDriver();  

        driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
        driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
        driver.manage().window().setSize(new Dimension(1920, 1080));
    }
    @Before
    public void homePageRefresh() throws IOException {
        driver.manage().deleteAllCookies();
        driver.get(propertyKeysLoader("login.base.url"));
    }


    @AfterClass
    public static void closeFirefox(){
        driver.quit();
    }
.....
于 2012-11-04T15:00:37.543 回答