瀏覽代碼

数据导出预览判断

lizhikun 6 月之前
父節點
當前提交
0489af12ab
共有 1 個文件被更改,包括 25 次插入5 次删除
  1. 25 5
      cases/pc/登录功能/数据/sievedata.py

+ 25 - 5
cases/pc/登录功能/数据/sievedata.py

@@ -1,5 +1,6 @@
 from hytest import *
 from lib.webapi import apimgr
+from collections import Counter
 
 
 class c1:
@@ -7,16 +8,35 @@ class c1:
 
     def teststeps(self):
         INFO("测试步骤")
+
+        # 第一步调用函数
         STEP(1, "第一步调用函数")
         res = apimgr.preview_sievedata()
         r = res.json()  # 用json格式返回
-        INFO(r)
 
-        # 获取数据中的 _id 字段
+        # 获取数据中的 list
         data_list = r['data']['list']
 
         # STEP 2: 检查 _id 是否存在
         STEP(2, "检查 _id 字段是否存在")
-        for item in data_list:
-            _id = item.get('_id')  # 获取 _id 字段
-            CHECK_POINT(f"检查 _id 字段存在: {_id is not None}", _id is not None)
+        all_ids_exist = all(item.get('_id') is not None for item in data_list)
+        CHECK_POINT(f"检查 _id 字段是否存在: {all_ids_exist}", all_ids_exist)
+
+        # STEP 3: 检查 winnerperson 和 winnertel 字段同时出现且数量是否超过2
+        STEP(3, "检查 winnerperson 和 winnertel 字段同时出现且数量是否超过2")
+
+        winnerperson_list = [item.get('winnerperson') for item in data_list if item.get('winnerperson')]
+        winnertel_list = [item.get('winnertel') for item in data_list if item.get('winnertel')]
+
+        # 统计 winnerperson 和 winnertel 的出现次数
+        winnerperson_counter = Counter(winnerperson_list)
+        winnertel_counter = Counter(winnertel_list)
+
+        # 检查两个字段是否同时存在且出现次数都超过2
+        winnerperson_error = any(count > 2 for count in winnerperson_counter.values())
+        winnertel_error = any(count > 2 for count in winnertel_counter.values())
+
+        if winnerperson_error and winnertel_error:
+            CHECK_POINT("winnerperson 和 winnertel 都存在且都出现超过2次,检查不通过", False)
+        else:
+            CHECK_POINT("winnerperson 和 winnertel 同时满足预期,检查通过", True)