應用表面積
在最基本的層面上,驗收測試基本上是黑盒測試,它從根本上關注測試封閉系統的輸入和輸出。因此,驗收測試有三個基本功能:定位資源,讀取資料和寫入資料。對於瀏覽器和 Web 應用程式,這三個功能基本上歸結為以下內容:
- 載入網頁或應用程式檢視
- 檢查使用者介面元素(即 DOM)
- 觸發事件/模擬使用者互動
我們稱之為應用程式的表面區域。表面區域是使用者看到或體驗的任何東西。它是黑盒系統的外部。由於使用者使用 Web 瀏覽器在視訊螢幕上與現代 Web 應用程式互動,因此我們的表面覆蓋範圍由通用資源定位器(URL)和視口定義。所以我們的第一次演練開始時看起來如下:
module.exports = {
"Hello World" : function (client) {
client
// the location of our Meteor app
.url("http://localhost:3000")
// the size of the viewport
.resizeWindow(1024, 768)
// test app output
.verify.elementPresent('h1')
.verify.containsText('h1', "Welcome to Meteor!")
.verify.containsText('p', "You've pressed the button 0 times")
.verify.elementPresent('button')
// simulate user input
.click('button').pause(500)
// test app output again, to make sure input worked
.verify.containsText('p', "button 1 times")
// saving a copy of our viewport pixel grid
.saveScreenshot('tests/nightwatch/screenshots/homepage.png')
.end();
}
};