<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
最近遭遇了繫結手機號相關的壓測需求,有了手機號登入的經驗和測試資料,這次算起來比較簡單。最重要的是難點就是要求開發配合調整設定已經在上一期文章:手機號驗證碼登入效能測試中問題解決了,繫結手機號唯一的難點就是如何在單賬號繫結的過程中不斷切換手機號,而且保證最後賬號的繫結手機號還是一開始的14+uid
的模式。
請求傳送驗證碼介面,傳送成功(未繫結的手機號,使用者登入狀態)可以獲取到登入的一個引數traceNo
使用使用者登入校驗令牌、traceNo
、簡訊驗證碼、手機號請求繫結手機號介面
手機號校驗,排除一些不存在的號段,11位數位型別(介面傳string
型別)
間隔(60s)內不允許發第二條簡訊,簡訊有效期同隔間
自然天不允許發10條以上的簡訊
驗證碼隨機和traceNo
必需從傳送驗證碼介面獲得
限制條件已經做成可設定,可以隨時更改重啟服務即可
選中14號段,使用者手機號=14+uid
測試環境固定驗證碼
uid是9開頭的,所以單個使用者的繫結手機號在149
和148
之間切換,149
為初始狀態,這裡並沒有使用每次換一個新手機號,第一是怕出現偶然重複,第二是資料維護不容易
將傳送驗證碼和繫結手機號兩個介面放在一起壓測,需要準備一批測試使用者
單個執行緒繫結一個使用者,然後不停地傳送驗證碼和繫結新手機號
增加基礎類別屬性phone
和模組類屬性lastTraceNo
來完成引數傳遞
threadmark用來標記任務的,我在模組方法裡面返回了traceNo,表示唯一使用者登入介面請求操作,方便開發追蹤紀錄檔。
/** * 每個使用者先傳簡訊然後繫結手機號,手機號分為148和149切換,後8位元於uid後8位元.最後會把測試資料固定在149號段 */ class BindPhone extends OkayBase { public static void main(String[] args) { def argsUtil = new ArgsUtil(args) def thread = argsUtil.getIntOrdefault(0, 100) def times = argsUtil.getIntOrdefault(1, 50) ClientManage.init(10000, 5000, 0) def threads = [] thread.times { def base = getBase(it) def info = new UserInfo(base) threads << new Bind(info, times) } new Concurrent(threads, "學生留存1.2.3繫結手機號").start() thread.times { def base = getBase(it) def info = new UserInfo(base) info.bindPhoneInit() } FanLibrary.testOver() } static class Bind extends ThreadLimitTimesCount<UserInfo> { public LoginTel(UserInfo info, int times) { super(info, times, null) } @Override protected void doing() throws Exception { threadmark = t.bindPhone() } } }
/** * 獲取使用者資訊 * * @return */ public JSONObject getUserInfo() { String url = UserInfoApi.USERINFO; JSONObject params = getParams(); JSONObject response = getPostResponse(url, params); output(response); return response; } /** * 繫結手機號 * * @return */ public JSONObject bindPhone(String phone) { sendCodeOnline(phone); String url = UserInfoApi.BIND_PHONE; JSONObject params = getParams(); params.put("phone", phone); params.put("traceno", lastTraceNo); params.put("code", Common.TEL_CODE); JSONObject response = getPostResponse(url, params); output(response); return response; } /** * 繫結手機號,壓測用 * * @return */ public String bindPhone() { phone = phone.startsWith("149") ? 148 + phone.substring(3) : 149 + phone.substring(3); bindPhone(phone); return lastTraceNo; } /** * 初始化手機號,預設id前兩位改成14 * * @return */ public JSONObject bindPhoneInit() { JSONObject userInfo = getUserInfo(); String tel = userInfo.getJSONObject("data").getString("tel"); if (tel.startsWith("149")) return null; phone = 149 + phone.substring(3); sendCodeOnline(phone); String url = UserInfoApi.BIND_PHONE; JSONObject params = getParams(); params.put("phone", phone); params.put("traceno", lastTraceNo); params.put("code", Common.TEL_CODE); JSONObject response = getPostResponse(url, params); output(response); return response; } /** * 傳送繫結手機號資訊 * * @param phone * @return */ public JSONObject sendCodeOnline(String phone) { String url = UserInfoApi.SEND_CODE_ONLINE; JSONObject params = getParams(); params.put("scene_type", 1);//1繫結手機 params.put("phone", phone); output(phone); JSONObject response = getPostResponse(url, params); output(response); if (isRight(response)) { lastTraceNo = response.getJSONObject("data").getString("traceno"); } return response; }
以上就是python效能測試對手機號繫結進行壓測的詳細內容,更多關於python手機號繫結效能測試的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45