狠狠撸

狠狠撸Share a Scribd company logo
苏河
? 界面老是改,测毛线
? 都是业务代码,测毛线
? 项目时间太紧,测毛线
? 测毛线,还是目测给
力……
产物的变化

? RIA
? Base on Browser
? Heavy Javascript
? Html 5
开发量的变化

       Server        Browser




   Server       Browser
前端关注点的变化
 内部质量       外部质量

 可维护性   前   功能
 性能     端
        质   界面
 设计模式
        量
 开发效率
困难重重

       ? 浪费太多时间

How?   ? 效率太低,意义不大

       ? 从没写过javascript的单元测试
Jasmine
? Jasmine是一个BDD的javascript单
         元测试框架
Jasmine
? 语法简单

? 代码易读性

? 不依赖其他js框架

? 敏捷

? Nodejs、ruby、java、html
Specs
Expectations
Suites
Nested Describes
Disabling Tests & Suites
Matchers
Your matchers
Before and After
Spies matchers
?   expect(x).toHaveBeenCalled();
?   expect(x).toHaveBeenCalledWith(arguments);
?   expect(x).not.toHaveBeenCalled();
?   expect(x).not.toHaveBeenCalledWith(argume
    nts);
Spies
?   spyOn(x, 'method').andCallThrough();
?   spyOn(x, 'method').andReturn(arguments);
?   spyOn(x, 'method').andThrow(exception);
?   spyOn(x, 'method').andCallFake(function);
?   spyOn(x, 'method').andReturn(value1); ... ;
    x.method.andReturn(value2);
spies
Jasmine
Asynchronous specs
waits
waitsFor
? waitsFor(function, optional message, optional
  timeout)
爱逛街demo
? 是否有问题?
预告片

? 如何更好的架构可测试代码

? 如何集成到klude测试平台

? ……
QA
Ad

Recommended

柴锋 跨平台移动应用的自动化验收测试
柴锋 跨平台移动应用的自动化验收测试
Trinea Trinea
?
深入研究 Angular - phoebe pan
深入研究 Angular - phoebe pan
Phoebe Pan
?
RSpec & TDD Tutorial
RSpec & TDD Tutorial
Wen-Tien Chang
?
网站前端代码静态检查工具综述
网站前端代码静态检查工具综述
pop2008
?
网站前端代码静态检查工具研究
网站前端代码静态检查工具研究
pop2008
?
Java coding style
Java coding style
Davis Chen
?
關於 Javascript 非同步的那些事兒 公開版
關於 Javascript 非同步的那些事兒 公開版
Kirk Chen
?
How to ASP.NET MVC4
How to ASP.NET MVC4
Daniel Chou
?
Nashorn on JDK 8 (ADC2013)
Nashorn on JDK 8 (ADC2013)
Kris Mok
?
Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016
Kirk Chen
?
Angular 從入門到實戰(三)
Angular 從入門到實戰(三)
志龍 陳
?
JS and NG - ntut iLab 2015/07/14
JS and NG - ntut iLab 2015/07/14
BO Hong LI
?
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Justin Lin
?
vmarket in action
vmarket in action
Appleseedez Zeng
?
RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試
Wen-Tien Chang
?
Linuxguide4f2e
Linuxguide4f2e
tb-vertical-guide
?
Cardiovascular disease
Cardiovascular disease
plaqueless
?
Joycss
Joycss
tb-vertical-guide
?
Dolmen DDC Program
Dolmen DDC Program
zohair_ssuet
?
Knockout js
Knockout js
tb-vertical-guide
?
Node分享 展烨
Node分享 展烨
tb-vertical-guide
?
快速打包工具Quick build
快速打包工具Quick build
tb-vertical-guide
?
La texsymbols a4
La texsymbols a4
Mansoor Fayyaz
?
History of the lodge by buster
History of the lodge by buster
Conejo Valley Masonic Lodge #807
?
性能问题的快速定位
性能问题的快速定位
tb-vertical-guide
?

More Related Content

What's hot (7)

Nashorn on JDK 8 (ADC2013)
Nashorn on JDK 8 (ADC2013)
Kris Mok
?
Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016
Kirk Chen
?
Angular 從入門到實戰(三)
Angular 從入門到實戰(三)
志龍 陳
?
JS and NG - ntut iLab 2015/07/14
JS and NG - ntut iLab 2015/07/14
BO Hong LI
?
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Justin Lin
?
vmarket in action
vmarket in action
Appleseedez Zeng
?
RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試
Wen-Tien Chang
?
Nashorn on JDK 8 (ADC2013)
Nashorn on JDK 8 (ADC2013)
Kris Mok
?
Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016
Kirk Chen
?
Angular 從入門到實戰(三)
Angular 從入門到實戰(三)
志龍 陳
?
JS and NG - ntut iLab 2015/07/14
JS and NG - ntut iLab 2015/07/14
BO Hong LI
?
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Justin Lin
?
RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試
Wen-Tien Chang
?

Viewers also liked (19)

Linuxguide4f2e
Linuxguide4f2e
tb-vertical-guide
?
Cardiovascular disease
Cardiovascular disease
plaqueless
?
Joycss
Joycss
tb-vertical-guide
?
Dolmen DDC Program
Dolmen DDC Program
zohair_ssuet
?
Knockout js
Knockout js
tb-vertical-guide
?
Node分享 展烨
Node分享 展烨
tb-vertical-guide
?
快速打包工具Quick build
快速打包工具Quick build
tb-vertical-guide
?
La texsymbols a4
La texsymbols a4
Mansoor Fayyaz
?
History of the lodge by buster
History of the lodge by buster
Conejo Valley Masonic Lodge #807
?
性能问题的快速定位
性能问题的快速定位
tb-vertical-guide
?
Food processing
Food processing
Sanjay Sinha
?
estudio de factibilidad de un proyecto
Yessi Quispe
?
Demand Control System BMS-Tetrapak
Demand Control System BMS-Tetrapak
zohair_ssuet
?
Budget presentation 2012
Budget presentation 2012
Anurag Shahi
?
Ad

Similar to Jasmine (20)

使用顿蝉濒改善软件设计
使用顿蝉濒改善软件设计
mingjin
?
合久必分,分久必合
合久必分,分久必合
Qiangning Hong
?
Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛
Wen-Tien Chang
?
千呼萬喚始出來的 Java SE 7
千呼萬喚始出來的 Java SE 7
Justin Lin
?
持續交付高品質程式碼 公開版
持續交付高品質程式碼 公開版
Kirk Chen
?
Google Dart 介紹
Google Dart 介紹
Ticore Shih
?
BDD in .NET
BDD in .NET
Joey Chen
?
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
Angel Boy
?
网站上线了,然后呢?
网站上线了,然后呢?
Kirk Chen
?
狈辞诲别.箩蝉在淘宝的应用实践
狈辞诲别.箩蝉在淘宝的应用实践
taobao.com
?
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
Rack Lin
?
如何在 Java App 中導入 Scala
如何在 Java App 中導入 Scala
javatwo2011
?
前端性能测试
前端性能测试
tbmallf2e
?
Yog Framework
Yog Framework
fansekey
?
A brief introduction to Machine Learning
A brief introduction to Machine Learning
Wen-Tien Chang
?
贵濒介绍
贵濒介绍
Welefen Lee
?
Blazor in NET 8 的重大改變___________________
Blazor in NET 8 的重大改變___________________
Gelis Wu
?
05.飞濒蝉调优
05.飞濒蝉调优
Meng He
?
姚彤 从360手机卫士的研发经历看大型移动应用开发
姚彤 从360手机卫士的研发经历看大型移动应用开发
Trinea Trinea
?
Full stack-development with node js
Full stack-development with node js
Xuefeng Zhang
?
使用顿蝉濒改善软件设计
使用顿蝉濒改善软件设计
mingjin
?
合久必分,分久必合
合久必分,分久必合
Qiangning Hong
?
Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛
Wen-Tien Chang
?
千呼萬喚始出來的 Java SE 7
千呼萬喚始出來的 Java SE 7
Justin Lin
?
持續交付高品質程式碼 公開版
持續交付高品質程式碼 公開版
Kirk Chen
?
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
Angel Boy
?
网站上线了,然后呢?
网站上线了,然后呢?
Kirk Chen
?
狈辞诲别.箩蝉在淘宝的应用实践
狈辞诲别.箩蝉在淘宝的应用实践
taobao.com
?
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
Rack Lin
?
如何在 Java App 中導入 Scala
如何在 Java App 中導入 Scala
javatwo2011
?
前端性能测试
前端性能测试
tbmallf2e
?
Yog Framework
Yog Framework
fansekey
?
A brief introduction to Machine Learning
A brief introduction to Machine Learning
Wen-Tien Chang
?
Blazor in NET 8 的重大改變___________________
Blazor in NET 8 的重大改變___________________
Gelis Wu
?
05.飞濒蝉调优
05.飞濒蝉调优
Meng He
?
姚彤 从360手机卫士的研发经历看大型移动应用开发
姚彤 从360手机卫士的研发经历看大型移动应用开发
Trinea Trinea
?
Full stack-development with node js
Full stack-development with node js
Xuefeng Zhang
?
Ad

Jasmine