by diro | 5 月 6, 2015 | 敏捷思維, 軟體開發
「不要試圖覆蓋所有使用案例。Spec.不是用來替代組合回歸測試的。」 - Spec by Example 中文版 p.151但我們明明覺得現在用 Robot Framework 實現自動化 UAT 來替代組合回歸測試是很正確的做法,為什麼作者覺得這樣不對?我認為是因為作者在討論的是 Spec by Example ,或著說想用 ATDD 的方式來開發軟體,而一旦變成回歸測試,就失去了最初的目標了。但是..「Since your examples might serve as regression tests, you are...
by diro | 3 月 11, 2015 | 軟體開發
在做自動化 UAT 時,最常做的事便是拿 HANDLE,這在以前傳統的 GUI Framework 只要用 Spy++ 或其它開發工具都很容易做到。但現在 QML 不一樣了,QML 裡頭已經沒有所謂的 window handle,比較接近的是 objectName,你可以用 objectName 來對該元件進行操作(get property, call method…),問題是要怎麼樣拿到 objectName 呢?最直覺的作法就是直接看 QML source code,有錢一點的可能是用 Squish 之類的工具去做。但是直接看...
by diro | 3 月 11, 2015 | 軟體開發
一直都是使用 Robot Framework 來進行自動化的 UAT,但因為完整的 UAT 還包括了手動測試的部份,因此在 UAT 中 Test Case 的管理上就比較麻煩一點,可能完整的 test case 是存在 excel 裡頭,再由開發人員手動填入 Robot Framework 的測試結果。這樣真的太低級了,這不但浪費時間、易出錯,而且很難管理啊,所以必需有一個更好的管理方式。為了解決這個問題,我們導入了 TestRail。TestRail 是一套相當好用的 Test Case / Test Plan 管理系統,而且...
by diro | 3 月 6, 2015 | 軟體開發
在C++中RAII是很常用的手法,但在一些情況下要多花不少時間去包裝,在Boost中有提供了 ScopeExit (http://www.boost.org/doc/libs/1_57_0/libs/scope_exit/doc/html/index.html),在一些應用下會比正規的 RAII 更加好用。 以 Boost.ScopeExit 官方範例來看,它希望在 addPerson() 中如果有任何一行程式碼失敗了,可以做到 strong guarantee,因此要把 aPerson 從 一_persons中...
by diro | 3 月 5, 2015 | 軟體開發
在上次為大家介紹 QML+Arduino 之後,最近也有人在介紹 Web +Arduino:http://webduino.kktix.cc/events/web-arduino-20150321在這裡講一下我自己的看法:我不確定他的實作方式是不是在 Arduino 上跑 Web Server,然後由 Web Server 處理 url command 進而控制 Arduino.我覺得以 Web 現在豐富的前端資源,確實可以很輕鬆的做出不錯的控制介面,如果有用...
by diro | 2 月 7, 2015 | 敏捷思維, 軟體開發
http://www.taaze.tw/sing.html?pid=11100723738本書獲得《Dr. Dobb’s Journal》肯定,榮獲第21屆Jolt獎。打造優良的軟體開發團隊,除了要大家有敏捷的觀念外,基礎建設也是非常重要的。前一陣子唸完了 Continuous Delivery 之後, 便開始計畫要把不足的部份補完(如果不知道 Continuous Delivery 有什麼好處,可以先上網查查,或著看看書 XD),在幾位同學的努力之下,花了一個多月把缺的部份補上,包含架設CI Server、夠好用的build...