2012-11-04 25 views
0

我使用selwnium web驅動程序。當我使用硒和nunit來運行我的測試用例時,我發現每次測試用例開始時都會打開一個新頁面,當它完成時,新聞頁面將被刪除。因此我必須在每個測試用例中打開新頁面並登錄。恢復Selenium腳本中下一個測試用例的當前部分

我想讓我的測試用例共享一個網頁,以便它們可以按順序執行。

是硒限制還是實施它的方法?

謝謝!

回答

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

試圖聲明Webdriver實例變量爲statictest class內並初始化一次。你的行爲是因爲不同的webdriver實例不共享相同的session,所以你總是要登錄到期望的頁面。

相關問題