消息中間件在測(cè)試中的應(yīng)用
隨著軟件行業(yè)的發(fā)展,各種軟件更加復(fù)雜化,對(duì)測(cè)試要求也越來(lái)越高,并且希望測(cè)試能及時(shí)的跟進(jìn)研發(fā)的需求變更。
測(cè)試團(tuán)隊(duì)怎樣才能高效的應(yīng)對(duì)頻繁的需求變更呢?這是當(dāng)今測(cè)試團(tuán)隊(duì)?wèi)?yīng)該思考的主要問(wèn)題。
今天分享一些個(gè)人的看法:
1. 如果需求頻繁的變更,人工測(cè)試肯定不能很好的跟進(jìn)測(cè)試、確保質(zhì)量,所以最大程度的自動(dòng)化將是應(yīng)付需求變更的第一步。
2. 由于系統(tǒng)的復(fù)雜性,導(dǎo)致自動(dòng)化的內(nèi)容和類型的復(fù)雜性也相應(yīng)提高,所以對(duì)于如何組織自動(dòng)化,及時(shí)、有效、高效的運(yùn)行將成為應(yīng)付頻繁需求變更的第二步
- 在傳統(tǒng)的做法里,如果是linux,大家可能會(huì)使用crontab來(lái)進(jìn)行管理,而windows可能則會(huì)使用計(jì)劃任務(wù)進(jìn)行管理。但是這兩種管理方式顯然不能達(dá)到及時(shí)的響應(yīng),就是你時(shí)間間隔設(shè)得很短,也理論上也是無(wú)法項(xiàng)目包一到達(dá)就立馬啟動(dòng)測(cè)試
- 不太利于擴(kuò)展,并且易錯(cuò)性比較高
3. 基于以上兩點(diǎn),我將介紹消息中間件如果在復(fù)雜的自動(dòng)化環(huán)境中提高效率
- 消息中間件,很多人比較熟悉的如ActiveMQ, MetaQ等等,但是個(gè)人覺得,在測(cè)試行業(yè),activeMQ就足夠用了,
他的消息持久性特點(diǎn)能夠保證每一個(gè)測(cè)試不遺漏。另外,任務(wù)隊(duì)列管理極其方便,可擴(kuò)展的東西很多
4. ActiveMQ在測(cè)試中應(yīng)用流程
- 搭建ActiveMQ 服務(wù)器 (很簡(jiǎn)單)
- 開發(fā)實(shí)現(xiàn)ActiveMQ的 agent consumer 和 producer
a) producer 負(fù)責(zé)跟開發(fā)對(duì)接,如果有任何任務(wù)需求,及時(shí)通過(guò)producer 將任務(wù)加到消息隊(duì)列。同時(shí),詳細(xì)的自定義屬性很靈活,對(duì)于任務(wù)描述很有利
b) agent consumer端可以通過(guò)推或拉的方式來(lái)接收任務(wù),如果是推的方式,只需實(shí)現(xiàn)ActiveMQ的訂閱功能,當(dāng)有任何到來(lái)時(shí),訂閱的測(cè)試服務(wù)器將自動(dòng)消費(fèi)信息進(jìn)行測(cè)試(這時(shí)候消息的屬性非常有用了),如果是拉的模式, 只需實(shí)現(xiàn)靈活的agent consumer,時(shí)時(shí)監(jiān)聽各自隊(duì)列,任何任務(wù)到來(lái)時(shí)都會(huì)主動(dòng)啟動(dòng)測(cè)試,非常便于擴(kuò)展測(cè)試服務(wù)器,如,發(fā)現(xiàn)任務(wù)比較多的時(shí)候,直接在任何一個(gè)服務(wù)器上去啟動(dòng)另一個(gè)agent便可加入測(cè)試中來(lái)
c) 消息持久性的特點(diǎn),你不用擔(dān)心消息會(huì)丟失
d) 很容易就能實(shí)現(xiàn)producer端的手動(dòng)干預(yù)任務(wù),靈活,高效
5. 通過(guò)agent端運(yùn)行測(cè)試,并將測(cè)試結(jié)果入庫(kù),及時(shí)通過(guò)管理系統(tǒng)展示測(cè)試結(jié)果,然后郵件方式獲取測(cè)試結(jié)果頁(yè)面,及時(shí)的共享出去
以上步驟,靈活,高效的完成了復(fù)雜系統(tǒng)的頻繁變更測(cè)試。歡迎大家拍磚
posted on 2013-09-03 10:55 順其自然EVO 閱讀(266) 評(píng)論(0) 編輯 收藏 所屬分類: 測(cè)試學(xué)習(xí)專欄