初探前端測試
by alincode
Who I am
- alincode
- JAVA for 5 years
- SDET for 7 months (freelancer)
- NodeJS for 6 months (remote)
為什麼寫這本書
IT 鐵人賽
這本書帶給我了什麼
好處 & 壞處
我學到了什麼
如果不跳脫
一般的框框思考
你很難改變什麼
大綱
前端測試
初探 WebdriverIO
第一個測試程式
前端測試
什麼是前端測試
位在測試的哪個階段
功能測試
測試什麼?
測試什麼?
誰可能需要?
QA
PM
Small Team
Big Team
為什麼需要?
什麼時候該導入?
如何開始?
先省略一些東西
看看 webdriverio 吧
What
End to End
Testing Framework
Selenium
JsonWireProtocol
WebdriverIO
!=
WebdriverJS
ref: http://blog.durandal.io/2015/02/16/end-to-end-testing-with-aurelia-and-protractor/
Flow
WebdriverIO
特色
容易擴充
易替換
遠大抱負
容易擴充
CUSTOM COMMANDS
CUSTOM COMMANDS
Page Object
define elements
define or overwrite page method
Page Object
但
似乎有點簡陋
易替換
BDD / TDD framework
Reporter
Cloud Service
Module is king
遠大抱負
special bindings for Appium
mobile test
WebdriverCSS - CSS regression testing
Who
130 contributors
github
getter
grow up fast
第一個前端自動化測試
Setup
JDK
selenium
java -jar
/your/download/directory/selenium-server-standalone-2.42.2.jar
|
npm install selenium-standalone -g
selenium-standalone install
mkdir webdriverio-sandbox
cd webdriverio-sandbox
npm init -y
npm install webdriverio -D
Standalone Mode
selenium-standalone start
node test.js
WDIO Test runner
set config
Test runner
+ wdio.conf.js
1. Selectors
2. Action
3. Verify
browser.click('h2.subheading a');
title.should.be.equal('教你所想學的,用眼樂讀 - blog.mokayo.com');
Chimp
https://github.com/alincode/front-end-test-sandbox
常見問題
如果沒有單元測試
該不該做前端測試
雷
You should
set up babel
Start Selenium Server
lost connect with
Selenium Server
元素階乘不要抓太多層
被低估的
測試程試維護成本
Exma-square 分享會 - 初探前端測試
By alincode
Exma-square 分享會 - 初探前端測試
(2016/06/01)
- 1,948