在Selenium脚本中恢复下一个测试用例的当前部分

时间:2012-11-04 05:17:27

标签: selenium nunit selenium-webdriver

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

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

是硒限制,还是实施它?

谢谢!

2 个答案:

答案 0 :(得分:2)

尝试在Webdriver中将static实例变量声明为test class,并初始化一次。您的行为是因为不同的webdriver实例不共享相同的session,因此您始终要登录到所需的页面。

答案 1 :(得分:0)

您可能使用@Before , @After注释。 请尝试使用@BeforeClass, @AfterClass。 e.g:

....
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();
    }
.....