Jelajahi Sumber

企业搜索,供应搜索

lizhikun 2 tahun lalu
induk
melakukan
a60774ac28

+ 33 - 0
cases/搜索功能/enterpriseSearch.py

@@ -0,0 +1,33 @@
+import json
+
+from hytest import *
+from lib.webapi import apimgr
+class c3:
+    #测试用例名称
+    name='企业搜索'
+    # 初始化方法
+    def setup(self):
+        INFO('初始化方法')
+    #测试步骤
+    def teststeps(self):
+        INFO('测试步骤')
+        STEP(1,'第一步调用函数')    #会出现在测试报告中
+        apimgr.mgr_login()
+        r = apimgr.enterpriseSearch()
+        if r is not None:
+            try:
+                res = r.json()
+            except ValueError as e:
+                print(f"Failed to decode JSON response: {e}")
+                res = None
+        else:
+            res = None
+
+        textactual_legal_person = res['data']['list'][0]['legal_person']
+
+        STEP(2,'第二步设置检查点')
+        #设置检查点
+        CHECK_POINT('检查登录接口是否正常',textactual_legal_person == "田小亮")
+    #清除方法
+    def teardown(self):
+        INFO('清除方法')

+ 29 - 0
cases/搜索功能/supplySearch.py

@@ -0,0 +1,29 @@
+import json
+from logging import ERROR
+
+import requests
+from hytest import *
+from lib.webapi import apimgr
+class c4:
+    #测试用例名称
+    name='供应搜索'
+    # 初始化方法
+    def setup(self):
+        INFO('初始化方法')
+    #测试步骤
+    def teststeps(self):
+        INFO('测试步骤')
+        STEP(1,'第一步调用函数')    #会出现在测试报告中
+        apimgr.mgr_login()
+        r = apimgr.supplySearch()
+        res = json.loads(r.content.decode('utf-8'))
+        data = res.get('data', None)
+        if data:
+            ckeys = data.get('ckeys', None)
+            if ckeys:
+                STEP(2, '第二步设置检查点')
+                #设置检查点
+                CHECK_POINT('检查搜索接口是否正常', ckeys == 'PH计')
+    #清除方法
+    def teardown(self):
+        INFO('清除方法')

+ 7 - 4
cases/登录功能/login.py

@@ -12,10 +12,13 @@ class c1:
         STEP(1,'第一步调用函数')    #会出现在测试报告中
         r = apimgr.mgr_login()
         res = r.json()
-        actural = res['userInfo']['result']
-        STEP(2,'第二步设置检查点')
-        #设置检查点
-        CHECK_POINT('检查登录接口是否正常',actural =='ok')
+        userInfo = res.get('userInfo', None)
+        if userInfo:
+            actual = userInfo.get('result', None)
+            if actual:
+                STEP(2, '第二步设置检查点')
+                #设置检查点
+                CHECK_POINT('检查登录接口是否正常', actual == "ok")
     #清除方法
     def teardown(self):
         INFO('清除方法')

+ 45 - 3
lib/webapi.py

@@ -32,14 +32,17 @@ class APIMgr():
         print(response.content.decode('utf8'))
         print('----- https response end-----\n\n')
 
+
     headers = {
+
         "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.67"
     }
     #headers设置为全局变量
+
     GSTORE['headers'] = headers
 
     #登录接口
-    def mgr_login(self, phone='15225181827', password='123456',useproxies=False):
+    def mgr_login(self, phone='19937989931', password='123456',useproxies=False):
         headers=GSTORE['headers']
         self.s = requests.Session()
         if useproxies:
@@ -54,9 +57,11 @@ class APIMgr():
         self.printResponse(response)
         # 把response对象返回出去
         return response
-
+    #招标搜索
     def search(self, keywords="建筑", publishtime="fiveyear", selectType="content"):
+        #使用全局变量
         headers = GSTORE['headers']
+        #保存session
         session = self.s
         response = session.post(f"{cfg.target_host}/jylab/supsearch/index.html", headers=headers, data={
             'keywords': keywords,
@@ -65,7 +70,44 @@ class APIMgr():
         })
         self.printResponse(response)
         return response
-    #函数
+
+        # 企业搜索
+
+    def enterpriseSearch(self, match="北京剑鱼信息技术有限公司河南分公司", matchType="A", pageSize="10", pageNum="0"):
+        # 使用全局变量
+        headers = GSTORE['headers']
+        # 保存session
+        session = self.s
+        response = session.post("https://www.jianyu360.cn/publicapply/enterpriseSearch/doQuery", headers=headers, data={
+            'match': match,
+            'matchType': matchType,
+            'pageSize': pageSize,
+            'pageNum': pageNum
+        })
+        self.printResponse(response)
+        return response
+
+        # 供应搜索
+    def supplySearch(self, keywords="PH计", searchType="title", province="", city="", time="", status="0",
+                         pageSize=50, pageIndex=1):
+        headers = GSTORE['headers']
+        headers['Content-Type'] = 'application/json'  # 添加Content-Type头部
+        url = "https://www.jianyu360.cn/jyinfo/supplySearch"
+        data = {
+                "keywords": keywords,
+                "searchType": searchType,
+                "province": province,
+                "city": city,
+                "time": time,
+                "status": status,
+                "pageSize": pageSize,
+                "pageIndex": pageIndex
+            }
+        response = requests.post(url=url, headers=headers, data=json.dumps(data))
+        self.printResponse(response)
+        return response
+
+
 apimgr = APIMgr()
 
 

+ 55 - 13
log/testresult.log

@@ -3,26 +3,56 @@
 ===   [ 收集测试用例 ]  === 
 
 
+== cases\搜索功能\enterpriseSearch.py 
+
+
 == cases\搜索功能\search.py 
 
 
+== cases\搜索功能\supplySearch.py 
+
+
 == cases\登录功能\login.py 
 
 
 
 ===   [ 执行测试用例 ]  === 
 
-预备执行用例数量 : 2
+预备执行用例数量 : 4
+
+
+
+  ========= 测试开始 : 20230705_092255 =========
+
+
+
+>>> cases\搜索功能\enterpriseSearch.py
+
+* 企业搜索  -  2023-07-05 09:22:55
+
+[ case setup ] 企业搜索
+初始化方法
+
+  [ case execution steps ]
+测试步骤
+
+-- 第 1 步 -- 第一步调用函数 
+
+
+-- 第 2 步 -- 第二步设置检查点 
 
 
+** 检查点 **  检查登录接口是否正常 ---->  通过
 
-  ========= 测试开始 : 20230704_155302 =========
+  PASS 
 
+[ case teardown ] 企业搜索
+清除方法
 
 
 >>> cases\搜索功能\search.py
 
-* 招标搜索接口  -  2023-07-04 15:53:02
+* 招标搜索接口  -  2023-07-05 09:22:56
 
 [ case setup ] 招标搜索接口
 初始化方法
@@ -44,11 +74,11 @@
 清除方法
 
 
->>> cases\登录功能\login.py
+>>> cases\搜索功能\supplySearch.py
 
-* 登录接口验证  -  2023-07-04 15:53:03
+* 供应搜索  -  2023-07-05 09:22:57
 
-[ case setup ] 登录接口验证
+[ case setup ] 供应搜索
 初始化方法
 
   [ case execution steps ]
@@ -56,11 +86,23 @@
 
 -- 第 1 步 -- 第一步调用函数 
 
+  PASS 
 
--- 第 2 步 -- 第二步设置检查点 
+[ case teardown ] 供应搜索
+清除方法
 
 
-** 检查点 **  检查登录接口是否正常 ---->  通过
+>>> cases\登录功能\login.py
+
+* 登录接口验证  -  2023-07-05 09:22:57
+
+[ case setup ] 登录接口验证
+初始化方法
+
+  [ case execution steps ]
+测试步骤
+
+-- 第 1 步 -- 第一步调用函数 
 
   PASS 
 
@@ -68,17 +110,17 @@
 清除方法
 
 
-  ========= 测试结束 : 20230704_155304 =========
+  ========= 测试结束 : 20230705_092257 =========
 
 
-  耗时    : 1.286
+  耗时    : 2.080
 
 
-  预备执行用例数量 : 2
+  预备执行用例数量 : 4
 
-  实际执行用例数量 : 2
+  实际执行用例数量 : 4
 
-  通过 : 2
+  通过 : 4
 
   失败 : 0
 

+ 58 - 23
log/testresult.log.1

@@ -3,26 +3,56 @@
 ===   [ 收集测试用例 ]  === 
 
 
+== cases\搜索功能\enterpriseSearch.py 
+
+
 == cases\搜索功能\search.py 
 
 
+== cases\搜索功能\supplySearch.py 
+
+
 == cases\登录功能\login.py 
 
 
 
 ===   [ 执行测试用例 ]  === 
 
-预备执行用例数量 : 2
+预备执行用例数量 : 4
+
+
+
+  ========= 测试开始 : 20230705_092109 =========
+
+
+
+>>> cases\搜索功能\enterpriseSearch.py
+
+* 企业搜索  -  2023-07-05 09:21:09
+
+[ case setup ] 企业搜索
+初始化方法
+
+  [ case execution steps ]
+测试步骤
+
+-- 第 1 步 -- 第一步调用函数 
+
+
+-- 第 2 步 -- 第二步设置检查点 
 
 
+** 检查点 **  检查登录接口是否正常 ---->  通过
 
-  ========= 测试开始 : 20230704_155232 =========
+  PASS 
 
+[ case teardown ] 企业搜索
+清除方法
 
 
 >>> cases\搜索功能\search.py
 
-* 招标搜索接口  -  2023-07-04 15:52:32
+* 招标搜索接口  -  2023-07-05 09:21:10
 
 [ case setup ] 招标搜索接口
 初始化方法
@@ -36,26 +66,19 @@
 -- 第 2 步 -- 第二步设置检查点 
 
 
-** 检查点 **  检查搜索接口是否正常 ---->  !! 不通过!!
-
-  FAIL    
-Traceback:
-  File "D:\PycharmProjects\jianyu_auto_api\cases\搜索功能\search.py", line 20, in teststeps
-    CHECK_POINT('检查搜索接口是否正常',keys_value == "aaa")
-  File "C:\Program Files\Python311\Lib\site-packages\hytest\common.py", line 76, in CHECK_POINT
-    raise AssertionError()
-AssertionError
+** 检查点 **  检查搜索接口是否正常 ---->  通过
 
+  PASS 
 
 [ case teardown ] 招标搜索接口
 清除方法
 
 
->>> cases\登录功能\login.py
+>>> cases\搜索功能\supplySearch.py
 
-* 登录接口验证  -  2023-07-04 15:52:33
+* 供应搜索  -  2023-07-05 09:21:11
 
-[ case setup ] 登录接口验证
+[ case setup ] 供应搜索
 初始化方法
 
   [ case execution steps ]
@@ -63,11 +86,23 @@ AssertionError
 
 -- 第 1 步 -- 第一步调用函数 
 
+  PASS 
 
--- 第 2 步 -- 第二步设置检查点 
+[ case teardown ] 供应搜索
+清除方法
 
 
-** 检查点 **  检查登录接口是否正常 ---->  通过
+>>> cases\登录功能\login.py
+
+* 登录接口验证  -  2023-07-05 09:21:11
+
+[ case setup ] 登录接口验证
+初始化方法
+
+  [ case execution steps ]
+测试步骤
+
+-- 第 1 步 -- 第一步调用函数 
 
   PASS 
 
@@ -75,19 +110,19 @@ AssertionError
 清除方法
 
 
-  ========= 测试结束 : 20230704_155234 =========
+  ========= 测试结束 : 20230705_092111 =========
 
 
-  耗时    : 1.426
+  耗时    : 1.971
 
 
-  预备执行用例数量 : 2
+  预备执行用例数量 : 4
 
-  实际执行用例数量 : 2
+  实际执行用例数量 : 4
 
-  通过 : 1
+  通过 : 4
 
-  失败 : 1
+  失败 : 0
 
   异常 : 0
 

+ 64 - 13
log/testresult.log.2

@@ -3,26 +3,56 @@
 ===   [ 收集测试用例 ]  === 
 
 
+== cases\搜索功能\enterpriseSearch.py 
+
+
 == cases\搜索功能\search.py 
 
 
+== cases\搜索功能\supplySearch.py 
+
+
 == cases\登录功能\login.py 
 
 
 
 ===   [ 执行测试用例 ]  === 
 
-预备执行用例数量 : 2
+预备执行用例数量 : 4
+
+
 
+  ========= 测试开始 : 20230705_091929 =========
 
 
-  ========= 测试开始 : 20230704_154735 =========
 
+>>> cases\搜索功能\enterpriseSearch.py
+
+* 企业搜索  -  2023-07-05 09:19:29
+
+[ case setup ] 企业搜索
+初始化方法
+
+  [ case execution steps ]
+测试步骤
+
+-- 第 1 步 -- 第一步调用函数 
+
+
+-- 第 2 步 -- 第二步设置检查点 
+
+
+** 检查点 **  检查登录接口是否正常 ---->  通过
+
+  PASS 
+
+[ case teardown ] 企业搜索
+清除方法
 
 
 >>> cases\搜索功能\search.py
 
-* 招标搜索接口  -  2023-07-04 15:47:35
+* 招标搜索接口  -  2023-07-05 09:19:29
 
 [ case setup ] 招标搜索接口
 初始化方法
@@ -44,11 +74,11 @@
 清除方法
 
 
->>> cases\登录功能\login.py
+>>> cases\搜索功能\supplySearch.py
 
-* 登录接口验证  -  2023-07-04 15:47:37
+* 供应搜索  -  2023-07-05 09:19:31
 
-[ case setup ] 登录接口验证
+[ case setup ] 供应搜索
 初始化方法
 
   [ case execution steps ]
@@ -59,8 +89,29 @@
 
 -- 第 2 步 -- 第二步设置检查点 
 
+  ABORT   'data' 
+Traceback:
+  File "D:\PycharmProjects\jianyu_auto_api\cases\搜索功能\supplySearch.py", line 22, in teststeps
+    CHECK_POINT('检查搜索接口是否正常',res['data']['ckeys'] == 'PH计')
+                             ~~~^^^^^^^^
+KeyError: 'data'
 
-** 检查点 **  检查登录接口是否正常 ---->  通过
+
+[ case teardown ] 供应搜索
+清除方法
+
+
+>>> cases\登录功能\login.py
+
+* 登录接口验证  -  2023-07-05 09:19:31
+
+[ case setup ] 登录接口验证
+初始化方法
+
+  [ case execution steps ]
+测试步骤
+
+-- 第 1 步 -- 第一步调用函数 
 
   PASS 
 
@@ -68,21 +119,21 @@
 清除方法
 
 
-  ========= 测试结束 : 20230704_154737 =========
+  ========= 测试结束 : 20230705_091931 =========
 
 
-  耗时    : 1.461
+  耗时    : 1.898
 
 
-  预备执行用例数量 : 2
+  预备执行用例数量 : 4
 
-  实际执行用例数量 : 2
+  实际执行用例数量 : 4
 
-  通过 : 2
+  通过 : 3
 
   失败 : 0
 
-  异常 : 0
+  异常 : 1
 
   套件初始化失败 : 0