對於 Web 的自動化測試,有的人會用 JMeter 去做,不過 JMeter 比較適合拿來測"服務",要對 UI 做操作, JMeter 顯然不適合,Selenium 就是一個不錯的工具。

Selenium 可以開啟指定的瀏覽器,並輸入網址,然後依照程式的邏輯填入內容到網頁,最後送出資訊。而它支援的程式語言也蠻多的,像是 Java 跟 C# 都有支援,而 Python 跟 Ruby 也有,本篇文章是採用 Ruby。

而以下的程式碼是改自官網的範例,作用是開啟 Google 搜尋並填入 Query,然後得到搜尋結果,最後將網頁畫面存下來。

require 'rubygems'
require 'selenium-webdriver'

driver = Selenium::WebDriver.for :chrome
driver.get 'http://www.google.com.tw'

element = driver.find_element :name => 'q'
element.send_keys 'Sony'
element.submit

puts "Page title is #{driver.title}"
sleep 10
driver.save_screenshot 'google.png'
driver.quit

 

當中的 sleep 10,是程式暫停十秒,用意是等網頁載入完成後再存成圖片。

arrow
arrow
    全站熱搜

    卑微研究生 發表在 痞客邦 留言(0) 人氣()