两头编程,测试中间
最近在做一些開發測試代碼的工作,就是為了測試中間業務程序,前頭調用程序,后頭寫擋板程序,說白了就是鏈路調用,因為復雜度在中間的業務程序,所以前后兩端的程序應相對簡單。
這里就有一個問題:技術選型,或者說成是語言選擇,這就上升成為了一個打嘴仗的話題,“世界上最好的編程語言是什么?”。其實大家都知道,沒有最好,只是誰更適合而以,但把這個話題放在臺面上講時,就要維護自己的認知,或者說維護自己的學(面)識(子)了(相對熟悉,了解的語言)。
然歸正傳,這里通過配圖也能看出,前端的調用程序,選用的是python,這里給出理由是簡單,快捷,靈活,易變。因為作為調用端,其實有很多工具,比如大名鼎鼎的postman,也能在一定程序上達到效果,還有開源的測試工具JMeter,調用api也是沒有問題的,這就說明調用方其實是簡單的,成品工具就能搞定,還能搞的很好,如果要選一個語言作為調用程序,簡單的編程語言就足夠了,所以python就出現在了這里。
中間業務程序,是用c#基于.net core寫的,像c#,java在業務領域,相對成熟悉一些,不但有OOP,設計模式的支持,各種組件,三方庫的輔助,還有IDE的生產力協力,讓他們更能出成果,這個沒得說。
后端選用go,是因為go的并發能力更好,因為是擋板應用,要經得起狂風暴雨,甚至槍林彈雨,不能一波測試工具的壓力來了就倒下了,或要擴展很多副本,占很多資源才能搞得住。簡面言之,就是不為業務程序拖后腿,讓做什么做什么。
當然,這樣的選型也是和我們的中間業務應用的特點有一定關系,我們的業務程序幾乎所有的重要api都經過一定的業務處理,到后端三方處理,所以就出現了:python mock客戶端->c#構筑業務->go來模擬三方服務端的組合。
總結
- 上一篇: .Net Core下使用KeyDB高可用
- 下一篇: Dotnet 6.0,你值得拥有