SlideShare a Scribd company logo
1 of 21
Continuous Integrations &
Unit Test
劉昱劭
What is CI (Continuous
Integration)?
HTTP://MARTINFOWLER.COM/ARTICLES/CONTINUOUSINTEGRATION.HTML
從字面上來看


整合(軟體品質工作、軟體開發的例行工作)



Build Code (MSBuild, Maven)



Unit Test (MSTest, Ntest, XUnit)



Code Style Check (styleCop)



Static Code Analysis (fxCop)





Version Control (SVN, Git)

Publish

持續


Daily



Always



Automatic
Why CI ?
Bug早期發現,早期治療效果好!!


自動化!不需人工執行,持續不斷的。(人是懶惰的)



Daily Buidl Or Polling to Build(儘早發現defect)



共同開發程式碼時


Update 完之後就Build不過了嗎



一段時間後發現有問題時,用SVN一版一版退回去重Build再佈版找問題嗎



可搭配單元測試及自動測試,隨時監控品質



養成良好開發習慣
重要的是…


降低風險



減尐人工手動



隨時都有可部署的版本



增加系統透明度



建立團隊信心
CI 概念圖
CI Tool
常見的CI工具


Team Foundation Server — 微軟的



Hudson — 被Oracle買走了



Jenkins — Open Source



Team City



Cruise Control
Jenkins


http://jenkins-ci.org/content/about-jenkins-ci



從Hudson分支出來的



Open Source



Java開發



已經有有三百多個plugins
Demo


http://10.12.5.82:8088/



Jenkins DashBoard



Jenkins Plugins



Create Job



Build



Unit Test



Static code analysis



Report





SVN

Email

Build History
Unit Test(初階)
簡介


http://ithelp.ithome.com.tw/question/10102264


5個w自己看看吧



測試中的最小單位,針對Method進行測試



如果寫出來的Method都不用修改,不寫也沒差!



如果不寫!每次修改時你會確保都手動測過?



如果不寫!進行重構時…!!



共用函式,API最好要寫!





因為你不確定誰會來叫用!
一修改會影響到很多人

增加程式的維護性跟品質!

單元測試的目的並不是用來驗證是否符合客戶需求,而是

如你預期

用來確保程式的邏輯
的方式執行,保障你的
程式不會在日後修修改改的過程中被破壞,或是因為需求
變更而導致程式發生錯誤。
Unit Test Framework & Tools


Visual Studio 2012


Unit Test Generator



測試總管



MSTest



Ntest
MSTest DEMO


3A Pattern



Act-執行





Arrange-安排要測試的資料
Assert-判斷

Visual Studio測試總管
MSTest(1)


Attribute


TestClass



TestMethod



ClassInitialize



ClassCleanup



TestInitialize



TestCleanup
MSTest(2)


Assert
MSTest(3)


CollectionAssert
MSTest(4)


StringAssert
好的程式


Loosely coupled



關注點分離



減尐程式的壞味道(太長、太多、重複)



經常重構



可測試性高


多寫單元測試可以提升寫程式的能力
好的單元測試


維持最小單位



執行速度快



Self Containment




低相依性




Mock資料含在單元測試中,不需要依賴外部提供

單元測試間沒有順序關係

Isolation


專注於測試Method本身的正確性



與其他函式的互動使用Fake object來處理


Mock



Stub

More Related Content

What's hot

Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔yinwilliam
 
Component Unit Test
Component Unit TestComponent Unit Test
Component Unit TestWilliam Wang
 
互联网持续交付整形记
互联网持续交付整形记互联网持续交付整形记
互联网持续交付整形记Ryan YU
 
Mvp in practice
Mvp in practiceMvp in practice
Mvp in practice彥彬 洪
 
從敏捷開始的測試 從測試開始的自動化
從敏捷開始的測試 從測試開始的自動化從敏捷開始的測試 從測試開始的自動化
從敏捷開始的測試 從測試開始的自動化少齊 張
 
第1章 软件测试概述
第1章 软件测试概述第1章 软件测试概述
第1章 软件测试概述Kerry Zhu
 
SharePoint 项目实施团队的成功之道
SharePoint 项目实施团队的成功之道SharePoint 项目实施团队的成功之道
SharePoint 项目实施团队的成功之道Yi Zhang
 
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?Miles Chou
 
A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018Juggernaut Liu
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous deliveryQiao Liang
 
使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)Max Lai
 
关于“视频”的一些问题(赵国庆)2012621
关于“视频”的一些问题(赵国庆)2012621关于“视频”的一些问题(赵国庆)2012621
关于“视频”的一些问题(赵国庆)2012621zhguoq
 
Continuous Delivery - 敏捷開發的最後一哩路
Continuous Delivery - 敏捷開發的最後一哩路Continuous Delivery - 敏捷開發的最後一哩路
Continuous Delivery - 敏捷開發的最後一哩路Miles Chou
 
测试驱动的前端开发初探
测试驱动的前端开发初探测试驱动的前端开发初探
测试驱动的前端开发初探hua qiu
 
Something missed in regular scrum
Something missed in regular scrumSomething missed in regular scrum
Something missed in regular scrumAndy Yuan
 
zhuwenlongChinese
zhuwenlongChinesezhuwenlongChinese
zhuwenlongChineseWenlong Zhu
 

What's hot (19)

Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔Test corner #20 誰說只有測試金字塔
Test corner #20 誰說只有測試金字塔
 
Component Unit Test
Component Unit TestComponent Unit Test
Component Unit Test
 
互联网持续交付整形记
互联网持续交付整形记互联网持续交付整形记
互联网持续交付整形记
 
Mvp in practice
Mvp in practiceMvp in practice
Mvp in practice
 
從敏捷開始的測試 從測試開始的自動化
從敏捷開始的測試 從測試開始的自動化從敏捷開始的測試 從測試開始的自動化
從敏捷開始的測試 從測試開始的自動化
 
第1章 软件测试概述
第1章 软件测试概述第1章 软件测试概述
第1章 软件测试概述
 
SharePoint 项目实施团队的成功之道
SharePoint 项目实施团队的成功之道SharePoint 项目实施团队的成功之道
SharePoint 项目实施团队的成功之道
 
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
 
A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous delivery
 
使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)
 
关于“视频”的一些问题(赵国庆)2012621
关于“视频”的一些问题(赵国庆)2012621关于“视频”的一些问题(赵国庆)2012621
关于“视频”的一些问题(赵国庆)2012621
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
 
PHP 单元测试
PHP 单元测试PHP 单元测试
PHP 单元测试
 
Continuous Delivery - 敏捷開發的最後一哩路
Continuous Delivery - 敏捷開發的最後一哩路Continuous Delivery - 敏捷開發的最後一哩路
Continuous Delivery - 敏捷開發的最後一哩路
 
测试驱动的前端开发初探
测试驱动的前端开发初探测试驱动的前端开发初探
测试驱动的前端开发初探
 
Something missed in regular scrum
Something missed in regular scrumSomething missed in regular scrum
Something missed in regular scrum
 
zhuwenlongChinese
zhuwenlongChinesezhuwenlongChinese
zhuwenlongChinese
 
前端測試
前端測試前端測試
前端測試
 

Viewers also liked

手機自動化測試和持續整合
手機自動化測試和持續整合手機自動化測試和持續整合
手機自動化測試和持續整合Carl Su
 
關於測試,我說的其實是......
關於測試,我說的其實是......關於測試,我說的其實是......
關於測試,我說的其實是......hugo lu
 
認試軟體測試的世界 & TDD/BDD 入門
認試軟體測試的世界 & TDD/BDD 入門認試軟體測試的世界 & TDD/BDD 入門
認試軟體測試的世界 & TDD/BDD 入門wantingj
 
測試流程整體介紹
測試流程整體介紹測試流程整體介紹
測試流程整體介紹gaohonglian
 
The clean coder
The clean coderThe clean coder
The clean coderAndy Cheng
 
Android 安全性及持續整合平台開發
Android 安全性及持續整合平台開發Android 安全性及持續整合平台開發
Android 安全性及持續整合平台開發Doremi Lin
 
開放資了改造公民運動 -- g0v@NJ
開放資了改造公民運動 -- g0v@NJ 開放資了改造公民運動 -- g0v@NJ
開放資了改造公民運動 -- g0v@NJ Dustin Lin
 
Android gradle 从入门到gg 3
Android gradle 从入门到gg 3Android gradle 从入门到gg 3
Android gradle 从入门到gg 3Jun Liu
 
Android gradle 从入门到gg 0
Android gradle 从入门到gg 0Android gradle 从入门到gg 0
Android gradle 从入门到gg 0Jun Liu
 
Spock:願你的測試長長久久、生生不息
Spock:願你的測試長長久久、生生不息Spock:願你的測試長長久久、生生不息
Spock:願你的測試長長久久、生生不息Shihpeng Lin
 
淺談 Geb 網站自動化測試(JCConf 2014)
淺談 Geb 網站自動化測試(JCConf 2014)淺談 Geb 網站自動化測試(JCConf 2014)
淺談 Geb 網站自動化測試(JCConf 2014)Kyle Lin
 
超酷炫科幻 UI:QML 入門
超酷炫科幻 UI:QML 入門超酷炫科幻 UI:QML 入門
超酷炫科幻 UI:QML 入門Fred Chien
 
2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境
2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境
2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境ChiaHsien Lee
 
快速上手 Windows Containers 容器技術 (Docker Taipei)
快速上手 Windows Containers 容器技術 (Docker Taipei)快速上手 Windows Containers 容器技術 (Docker Taipei)
快速上手 Windows Containers 容器技術 (Docker Taipei)Will Huang
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Dennys Hsieh
 
Docker 初探,實驗室中的運貨鯨
Docker 初探,實驗室中的運貨鯨Docker 初探,實驗室中的運貨鯨
Docker 初探,實驗室中的運貨鯨Ruoshi Ling
 
提到 DevOps 到底在談些什麼玩意兒?
提到 DevOps 到底在談些什麼玩意兒?提到 DevOps 到底在談些什麼玩意兒?
提到 DevOps 到底在談些什麼玩意兒?Chen Cheng-Wei
 
Jenkins and Chef: Infrastructure CI and Automated Deployment
Jenkins and Chef: Infrastructure CI and Automated DeploymentJenkins and Chef: Infrastructure CI and Automated Deployment
Jenkins and Chef: Infrastructure CI and Automated DeploymentDan Stine
 
Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲
Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲
Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲ChinaNetCloud
 

Viewers also liked (20)

手機自動化測試和持續整合
手機自動化測試和持續整合手機自動化測試和持續整合
手機自動化測試和持續整合
 
關於測試,我說的其實是......
關於測試,我說的其實是......關於測試,我說的其實是......
關於測試,我說的其實是......
 
認試軟體測試的世界 & TDD/BDD 入門
認試軟體測試的世界 & TDD/BDD 入門認試軟體測試的世界 & TDD/BDD 入門
認試軟體測試的世界 & TDD/BDD 入門
 
測試流程整體介紹
測試流程整體介紹測試流程整體介紹
測試流程整體介紹
 
The clean coder
The clean coderThe clean coder
The clean coder
 
Android 安全性及持續整合平台開發
Android 安全性及持續整合平台開發Android 安全性及持續整合平台開發
Android 安全性及持續整合平台開發
 
開放資了改造公民運動 -- g0v@NJ
開放資了改造公民運動 -- g0v@NJ 開放資了改造公民運動 -- g0v@NJ
開放資了改造公民運動 -- g0v@NJ
 
Android gradle 从入门到gg 3
Android gradle 从入门到gg 3Android gradle 从入门到gg 3
Android gradle 从入门到gg 3
 
Android gradle 从入门到gg 0
Android gradle 从入门到gg 0Android gradle 从入门到gg 0
Android gradle 从入门到gg 0
 
Spock:願你的測試長長久久、生生不息
Spock:願你的測試長長久久、生生不息Spock:願你的測試長長久久、生生不息
Spock:願你的測試長長久久、生生不息
 
淺談 Geb 網站自動化測試(JCConf 2014)
淺談 Geb 網站自動化測試(JCConf 2014)淺談 Geb 網站自動化測試(JCConf 2014)
淺談 Geb 網站自動化測試(JCConf 2014)
 
超酷炫科幻 UI:QML 入門
超酷炫科幻 UI:QML 入門超酷炫科幻 UI:QML 入門
超酷炫科幻 UI:QML 入門
 
2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境
2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境
2016 COSCUP 文化、方法、工具如何跨界打造好的軟體開發環境
 
快速上手 Windows Containers 容器技術 (Docker Taipei)
快速上手 Windows Containers 容器技術 (Docker Taipei)快速上手 Windows Containers 容器技術 (Docker Taipei)
快速上手 Windows Containers 容器技術 (Docker Taipei)
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
 
Docker應用
Docker應用Docker應用
Docker應用
 
Docker 初探,實驗室中的運貨鯨
Docker 初探,實驗室中的運貨鯨Docker 初探,實驗室中的運貨鯨
Docker 初探,實驗室中的運貨鯨
 
提到 DevOps 到底在談些什麼玩意兒?
提到 DevOps 到底在談些什麼玩意兒?提到 DevOps 到底在談些什麼玩意兒?
提到 DevOps 到底在談些什麼玩意兒?
 
Jenkins and Chef: Infrastructure CI and Automated Deployment
Jenkins and Chef: Infrastructure CI and Automated DeploymentJenkins and Chef: Infrastructure CI and Automated Deployment
Jenkins and Chef: Infrastructure CI and Automated Deployment
 
Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲
Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲
Dev-Ops与Docker的最佳实践 QCon2016 北京站演讲
 

Similar to 持續整合與單元測試

持续交付的魅力
持续交付的魅力持续交付的魅力
持续交付的魅力Qiao Liang
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationnetdbncku
 
持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110Qiao Liang
 
单元测试(H2等)和持续集成(Hudson)实战简介
单元测试(H2等)和持续集成(Hudson)实战简介单元测试(H2等)和持续集成(Hudson)实战简介
单元测试(H2等)和持续集成(Hudson)实战简介isxylands
 
Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)jalamar
 
Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)LetAgileFly
 
部門會議 960625 Leon
部門會議 960625 Leon部門會議 960625 Leon
部門會議 960625 LeonLeon Chuang
 
十分鐘上手 I os jenkins ci
十分鐘上手 I os jenkins ci十分鐘上手 I os jenkins ci
十分鐘上手 I os jenkins ciTing-Yen Kuo
 
数据库持续集成
数据库持续集成数据库持续集成
数据库持续集成wait4friend
 
持续交付
持续交付持续交付
持续交付drewz lin
 
持续集成中的反模式
持续集成中的反模式持续集成中的反模式
持续集成中的反模式Kai Feng Zhang
 
Top100summit automan x之框架介绍 王超
Top100summit automan x之框架介绍 王超Top100summit automan x之框架介绍 王超
Top100summit automan x之框架介绍 王超drewz lin
 
打造面向服务的敏捷团队 Q con-beijing2012
打造面向服务的敏捷团队 Q con-beijing2012打造面向服务的敏捷团队 Q con-beijing2012
打造面向服务的敏捷团队 Q con-beijing2012Qiao Liang
 
service-oriented agile team-Q con-beijing2012
service-oriented agile team-Q con-beijing2012service-oriented agile team-Q con-beijing2012
service-oriented agile team-Q con-beijing2012Qiao Liang
 
敏捷测试中的工具实现
敏捷测试中的工具实现敏捷测试中的工具实现
敏捷测试中的工具实现drewz lin
 
使用Hudson打造屬於你自己的軟體建構機器人
使用Hudson打造屬於你自己的軟體建構機器人使用Hudson打造屬於你自己的軟體建構機器人
使用Hudson打造屬於你自己的軟體建構機器人javatwo2011
 
初窺 Flutter 開發.pdf
初窺 Flutter 開發.pdf初窺 Flutter 開發.pdf
初窺 Flutter 開發.pdfgdscnycu
 
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例TIM WANG
 

Similar to 持續整合與單元測試 (20)

持续交付的魅力
持续交付的魅力持续交付的魅力
持续交付的魅力
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110持续交付最佳实践——百度技术沙龙201110
持续交付最佳实践——百度技术沙龙201110
 
单元测试(H2等)和持续集成(Hudson)实战简介
单元测试(H2等)和持续集成(Hudson)实战简介单元测试(H2等)和持续集成(Hudson)实战简介
单元测试(H2等)和持续集成(Hudson)实战简介
 
Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_ 敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
 
Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
Scrum gathering 2012 shanghai_敏捷测试与质量管理分会场演讲话题:快速可持续的高质量发布(路宁)
 
部門會議 960625 Leon
部門會議 960625 Leon部門會議 960625 Leon
部門會議 960625 Leon
 
十分鐘上手 I os jenkins ci
十分鐘上手 I os jenkins ci十分鐘上手 I os jenkins ci
十分鐘上手 I os jenkins ci
 
数据库持续集成
数据库持续集成数据库持续集成
数据库持续集成
 
持续交付
持续交付持续交付
持续交付
 
持续集成中的反模式
持续集成中的反模式持续集成中的反模式
持续集成中的反模式
 
Top100summit automan x之框架介绍 王超
Top100summit automan x之框架介绍 王超Top100summit automan x之框架介绍 王超
Top100summit automan x之框架介绍 王超
 
打造面向服务的敏捷团队 Q con-beijing2012
打造面向服务的敏捷团队 Q con-beijing2012打造面向服务的敏捷团队 Q con-beijing2012
打造面向服务的敏捷团队 Q con-beijing2012
 
service-oriented agile team-Q con-beijing2012
service-oriented agile team-Q con-beijing2012service-oriented agile team-Q con-beijing2012
service-oriented agile team-Q con-beijing2012
 
敏捷测试中的工具实现
敏捷测试中的工具实现敏捷测试中的工具实现
敏捷测试中的工具实现
 
使用Hudson打造屬於你自己的軟體建構機器人
使用Hudson打造屬於你自己的軟體建構機器人使用Hudson打造屬於你自己的軟體建構機器人
使用Hudson打造屬於你自己的軟體建構機器人
 
Unit test
Unit testUnit test
Unit test
 
初窺 Flutter 開發.pdf
初窺 Flutter 開發.pdf初窺 Flutter 開發.pdf
初窺 Flutter 開發.pdf
 
SCM第一讲
SCM第一讲SCM第一讲
SCM第一讲
 
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
[DevOpsDays] 硬體產業的DevOps導入與實踐 - 以工控產業為例
 

More from 昱劭 劉

設計模式的解析與活用讀後心得
設計模式的解析與活用讀後心得設計模式的解析與活用讀後心得
設計模式的解析與活用讀後心得昱劭 劉
 
Automated Web Testing Using Selenium
Automated Web Testing Using SeleniumAutomated Web Testing Using Selenium
Automated Web Testing Using Selenium昱劭 劉
 
Python開發環境建立(使用ECLIPSE)
Python開發環境建立(使用ECLIPSE)Python開發環境建立(使用ECLIPSE)
Python開發環境建立(使用ECLIPSE)昱劭 劉
 
透過Nuget管理內部共用元件
透過Nuget管理內部共用元件透過Nuget管理內部共用元件
透過Nuget管理內部共用元件昱劭 劉
 
Restful & odata using asp.net web api
Restful & odata using asp.net web apiRestful & odata using asp.net web api
Restful & odata using asp.net web api昱劭 劉
 
Mongo db 簡介
Mongo db 簡介Mongo db 簡介
Mongo db 簡介昱劭 劉
 

More from 昱劭 劉 (6)

設計模式的解析與活用讀後心得
設計模式的解析與活用讀後心得設計模式的解析與活用讀後心得
設計模式的解析與活用讀後心得
 
Automated Web Testing Using Selenium
Automated Web Testing Using SeleniumAutomated Web Testing Using Selenium
Automated Web Testing Using Selenium
 
Python開發環境建立(使用ECLIPSE)
Python開發環境建立(使用ECLIPSE)Python開發環境建立(使用ECLIPSE)
Python開發環境建立(使用ECLIPSE)
 
透過Nuget管理內部共用元件
透過Nuget管理內部共用元件透過Nuget管理內部共用元件
透過Nuget管理內部共用元件
 
Restful & odata using asp.net web api
Restful & odata using asp.net web apiRestful & odata using asp.net web api
Restful & odata using asp.net web api
 
Mongo db 簡介
Mongo db 簡介Mongo db 簡介
Mongo db 簡介
 

持續整合與單元測試