顯示具有 test 標籤的文章。 顯示所有文章
顯示具有 test 標籤的文章。 顯示所有文章

2014年5月30日 星期五

Selenium - 如何移動『滑鼠』至隱藏的元件


今天偷到一點時間,繼續來研究selenium(再不研究會不敢改client了@@)。

遇到一個問題,例如這種常見的隱藏選單列:(圖片打馬賽克請見諒)

 MenuA,MenuB,MenuC是母選單,實際功能的子選單需將滑鼠移到各個母選單上才會在下方出現子選單:


今天我需要selenium模擬滑鼠移到其中的母選單『MenuB』,該怎麼做呢?
請參考如下片段:

        
 WebDriver _driver;
 //....
 WebElement element1 = _driver.findElement(By.xpath("//span[@id='MenuB']"));
 builder.moveToElement(element1).perform(); 

如上述,只要找到MenuB 母選單的element後,執行moveToElement()就可以了。

Cucumber - 使用時無法執行@Before 與 @After



最近開始嘗試使用cucumber + selenium,但測試的時候發現無法順利執行被
@Before或@After annotation標注的function,

原來當我們使用cucumber時,這些annotation的import位置為:

import cucumber.api.java.After;

import cucumber.api.java.Before;

而非JUNIT的
org.junit.After
org.junit.Before


雖然是小問題但沒想到還真要花些時間找呢~

2013年5月16日 星期四

dbunit初體驗 - QueryDataSet.addTable((tableName, query) 出現 org.dbunit.dataset.DataSetException: java.sql.SQLSyntaxErrorException: user lacks privilege or object not found:


照者Juni in Action 中的第17章 p338的做法輸入:
QueryDataSet data = new QueryDataSet(_dbunitConnection);
data.addTable("TableName","select * from TableName where id="+value );

卻一直出現

org.dbunit.dataset.DataSetException: java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: value

的錯誤,後來才發現因為我要比較的對象id為String,因此前後應加上單引號,上述應更正如下:
data.addTable("TableName","select * from TableName where id='"+value+"'");

OK 更改完畢,順利通過^^
這個錯誤也有可能是在使用之前Table未建立而產生