一、testNG中注解有哪些

二、TestNG有哪些優點
TestNG的注釋非常強大和方便
TestNG允許並行測試
TestNG可以給予group方式執行測試
TestNG可以生成測試報表,並且報表展示多樣化,可以在其基礎上自行開發測試報告,插件以及測試監聽器等
三、什么是斷言
斷言assert 用於代碼中驗證實際結果符合預期結果,如果測試用例失敗,則拋出異常並且提供斷言日志
四、什么事web自動化
指的是從UI界面,也就是用戶界面層面進行的自動化測試,測試人員通過編程自動化的程序也就是自動化腳本實現打開界面,操作界面的業務邏輯
五、什么是selenium
是一個開源的web自動化測試的框架,支持多種編程語言,支持跨瀏覽器平台進行測試
6、寫出selenium 中你最熟悉的接口或者類
WebDriver InternetExplorerDriver FirefoxDriver ChromeDriver WebElement WebDriverWait By
7、元素定位的類型有哪些
By.id() By.name() By.xpath() By.classname() By.tagName() By.cssSelector() By.linkText() By.partialLinkText() By.xpath()
8、Xpath 是什么?
是web頁面元素定位的一種方式,相當於元素dom中的一個路徑,可以采用絕對路徑和相對路徑的方式進行定位,對於定位頁面元素有很大的幫助,同時需謹慎使用,當頁面結果發生變化,那么定位信息也可能需要變化
9、findElement()和findElements()方法有什么區別
兩個都是查找元素的方式
findElement()查找一個頁面元素,只會返回WebElement對象
findElements()查找頁面是所有符合匹配的元素,返回元素集合
10、登錄按鈕除了click方法還有其他方式嗎?
submit() ,前提是input元素的type 為submit
11、簡述你知道的延遲等待方式
硬性等待,也叫線程等待,通過休眠的方式完成等待如等待5秒Thead.sleep(5000)
隱式等待,通過imlicitlyWait完成延時等待,這種事針對全局設置的等待,如設置超市10秒,使用imlicitlyWait后,如果第一次沒有找到元素,會在10秒之內不斷循環查找元素,如果超時間10秒還沒有找到,則拋出異常
顯式等待,智能等待,針對指定元素定位指定等待時間,指定的范圍內進行元素查找,找到元素則直接返回,超時沒有找到元素則拋出異常
12 、如何提高selenium腳本的執行速度
1、優化等待時間,使用WebDriverWait智能等待代替 線性等待sleep和隱式等待imlicitlyWait
2、減少不必要的操作
3、在服務器允許的情況下,使用多線程實現並發執行測試用例
13 、怎么對含有驗證碼的功能進行自動化測試
圖像識,難度大,效果不好不推薦
屏蔽驗證碼,邀請開發處理,在測試環境,預發和正式環境恢復
萬能驗證碼,使用復雜的其他人無法猜到的驗證碼
14、如何驗證復選按鈕是不是被選中
可以使用元素的is selected()方法,如果返回的是true則說明被選中,否則表明未被選中
15、如何處理alert 彈窗?
先定位跳轉到alert上,然后點擊確認或取消
Alert alert = dirver.swichTo().alert();//切換到alert
alert.accept();//確定
alert.dismiss();//
16、如何用webdriver進行鼠標右鍵點擊操作
使用Actions 類
Actions actions = new Actions(driver)
actions.moveToElement(element).perform();
actions.contextClick.perform();
17、如何使用webdriver 執行拖拽 的操作
還是使用actions類?
Actions actions = new Actions(driver)
WebElement element1 = driver.findElement(by);
WebElement element2 = driver.findElement(by);
actions.dragAndDrop(element1,element2)perform();
18、舉一個WebDriver中方法重載的例子
frame(string, name), frame(int index), frame(Web Element element)
19、下拉菜單如何選擇一個菜單項?
如果下拉菜單是select 標簽,使用方法;select By Value() 或者selectByIndex()或者select ByVisibleText()即可
如果這個下拉菜單不是通過select標簽創建,則直接通過xpath 定位元素然后去點擊選擇
20、自動化測試分為哪幾類
UI自動化
接口自動化
web自動化
終端自動化
