From 5849ca19a6cc39bd8472ab37fba1d550459a2047 Mon Sep 17 00:00:00 2001 From: zhanhuasheng Date: Thu, 23 May 2024 12:14:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=94=A8=E4=BE=8B=20-=20home?= =?UTF-8?q?page=20tag=E7=94=A8=E4=BE=8B=20-=20bugfix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TestCase/homepage/test_01_homepage.py | 13 ++++ TestData/homepage/homepage_test_data.py | 4 ++ TestFile/homepage/brand_step_select.py | 8 +++ .../homepage/homepage_banner_ad_select.py | 35 +++++++++++ .../homepage_tarbar_content_select.py | 8 +++ TestFile/setting/tag/tag_select.py | 6 +- TestFile/setting/tag/tag_select2.py | 2 +- YamlCase/homepage/homepage.yaml | 61 +++++++++++++++++-- 8 files changed, 129 insertions(+), 8 deletions(-) create mode 100644 TestCase/homepage/test_01_homepage.py create mode 100644 TestData/homepage/homepage_test_data.py create mode 100644 TestFile/homepage/brand_step_select.py create mode 100644 TestFile/homepage/homepage_banner_ad_select.py create mode 100644 TestFile/homepage/homepage_tarbar_content_select.py diff --git a/TestCase/homepage/test_01_homepage.py b/TestCase/homepage/test_01_homepage.py new file mode 100644 index 0000000..7406b8e --- /dev/null +++ b/TestCase/homepage/test_01_homepage.py @@ -0,0 +1,13 @@ +import pytest +from Utils import yaml_handler +from Utils import req_handler +from TestData.homepage.homepage_test_data import homepageTestData + +class TestHomepage: + + yaml_path = r'homepage/homepage.yaml' + yaml_data = yaml_handler.yaml_handler.get_case(yaml_path) + @pytest.mark.flaky(reruns=homepageTestData.rerun, reruns_delay=homepageTestData.rerun_delay) + @pytest.mark.parametrize('case',yaml_data) + def test_homepage(self,case): + req_handler.ReqHandler.send_requests(case=case,var_class=homepageTestData) diff --git a/TestData/homepage/homepage_test_data.py b/TestData/homepage/homepage_test_data.py new file mode 100644 index 0000000..7361c40 --- /dev/null +++ b/TestData/homepage/homepage_test_data.py @@ -0,0 +1,4 @@ +from Utils.global_variate import Global + +class homepageTestData(Global): + pass \ No newline at end of file diff --git a/TestFile/homepage/brand_step_select.py b/TestFile/homepage/brand_step_select.py new file mode 100644 index 0000000..d762037 --- /dev/null +++ b/TestFile/homepage/brand_step_select.py @@ -0,0 +1,8 @@ +from Utils.sql_handler import test_env_conn +from TestData.homepage.homepage_test_data import homepageTestData + +brand_step_select_sql = f'select * from brand where id = {homepageTestData.brandId}' +brand_step_select_result = test_env_conn.select_one_value(sql=brand_step_select_sql) + +step = brand_step_select_result['getting_step'] +setattr(homepageTestData, 'step', step) \ No newline at end of file diff --git a/TestFile/homepage/homepage_banner_ad_select.py b/TestFile/homepage/homepage_banner_ad_select.py new file mode 100644 index 0000000..ca111aa --- /dev/null +++ b/TestFile/homepage/homepage_banner_ad_select.py @@ -0,0 +1,35 @@ +from Utils.sql_handler import test_env_conn +from TestData.homepage.homepage_test_data import homepageTestData + +homepage_banner_ad_select_sql = f'select * from `banner` where group_id = 1 and status = 1 order by sort desc' +homepage_banner_ad_select_result = test_env_conn.select_many_value(sql=homepage_banner_ad_select_sql) + +ad_1 = homepage_banner_ad_select_result[0] +ad_2 = homepage_banner_ad_select_result[1] +ad_3 = homepage_banner_ad_select_result[2] + +ad_1_title = ad_1['title'] +ad_1_url = ad_1['url'] +ad_1_pic = ad_1['pic'] +ad_1_target = ad_1['target'] +ad_2_title = ad_2['title'] +ad_2_url = ad_2['url'] +ad_2_pic = ad_2['pic'] +ad_2_target = ad_2['target'] +ad_3_title = ad_3['title'] +ad_3_url = ad_3['url'] +ad_3_pic = ad_3['pic'] +ad_3_target = ad_3['target'] + +setattr(homepageTestData, 'ad_1_title', ad_1_title) +setattr(homepageTestData, 'ad_1_url', ad_1_url) +setattr(homepageTestData, 'ad_1_pic', ad_1_pic) +setattr(homepageTestData, 'ad_1_target', ad_1_target) +setattr(homepageTestData, 'ad_2_title', ad_2_title) +setattr(homepageTestData, 'ad_2_url', ad_2_url) +setattr(homepageTestData, 'ad_2_pic', ad_2_pic) +setattr(homepageTestData, 'ad_2_target', ad_2_target) +setattr(homepageTestData, 'ad_3_title', ad_3_title) +setattr(homepageTestData, 'ad_3_url', ad_3_url) +setattr(homepageTestData, 'ad_3_pic', ad_3_pic) +setattr(homepageTestData, 'ad_3_target', ad_3_target) \ No newline at end of file diff --git a/TestFile/homepage/homepage_tarbar_content_select.py b/TestFile/homepage/homepage_tarbar_content_select.py new file mode 100644 index 0000000..0552079 --- /dev/null +++ b/TestFile/homepage/homepage_tarbar_content_select.py @@ -0,0 +1,8 @@ +from Utils.sql_handler import test_env_conn +from TestData.homepage.homepage_test_data import homepageTestData + +homepage_tarbar_content_select_sql = f'select * from `system_config` where `key` = "homeBar" and is_use = 1' +homepage_tarbar_content_select_result = test_env_conn.select_one_value(sql=homepage_tarbar_content_select_sql) + +tarbar_content = homepage_tarbar_content_select_result['value'] +setattr(homepageTestData, 'tarbar_content', tarbar_content) diff --git a/TestFile/setting/tag/tag_select.py b/TestFile/setting/tag/tag_select.py index 057d3cb..eb43f70 100644 --- a/TestFile/setting/tag/tag_select.py +++ b/TestFile/setting/tag/tag_select.py @@ -10,14 +10,13 @@ if not hasattr(tagData, 'tag_id'):#先判断有没有创建tag成功 setattr(tagData, 'tag_id', insert_tag_id) - tag_select_sql = f'select * from tag where brand_id = {tagData.brandId}' tag_select_result = tagData.new_db_coon.select_many_value(sql=tag_select_sql) tag_num = len(tag_select_result) setattr(tagData, 'tag_num', tag_num) -tag_location = 0 +tag_location = 1 for tag in tag_select_result: if tag['id'] == tagData.tag_id: break @@ -29,5 +28,6 @@ elif tag_location % 10 == 0: page_num = tag_location / 10 else: page_num = int(tag_location / 10) + 1 -setattr(tagData, 'page_num', page_num) +print(tag_location) +setattr(tagData, 'page_num', int(page_num)) diff --git a/TestFile/setting/tag/tag_select2.py b/TestFile/setting/tag/tag_select2.py index fafb581..5018d96 100644 --- a/TestFile/setting/tag/tag_select2.py +++ b/TestFile/setting/tag/tag_select2.py @@ -15,7 +15,7 @@ elif tag_location % 10 == 0: page_num = tag_location / 10 else: page_num = int(tag_location / 10) + 1 -setattr(tagData, 'page_num', page_num) +setattr(tagData, 'page_num', int(page_num)) tag_room_select_sql = f'select * from `im_room` where `cate_id` = {tagData.brandId} and `status` = 1 and `is_ignore` = 0 and room_type != 2 and last_msg_uid != {tagData.userId}' tag_room_select_result = tagData.new_db_coon.select_one_value(sql=tag_room_select_sql) diff --git a/YamlCase/homepage/homepage.yaml b/YamlCase/homepage/homepage.yaml index 7d4c8cb..02d574b 100644 --- a/YamlCase/homepage/homepage.yaml +++ b/YamlCase/homepage/homepage.yaml @@ -4,8 +4,61 @@ api1: method: get expected: - eq: {"$.code": 0} - - eq: {"$.data.brandId": "${brand_id}"} - - eq: {"$.data.brandName": "${brand_name}"} + - eq: {"$.data.brandId": "${brandId}"} + - eq: {"$.data.brandName": "${brandName}"} - eq: {"$.data.email": "${email}"} - - eq: {"$.data.id": "${id}"} - - eq: {"$.data.name": "${name}"} \ No newline at end of file + - eq: {"$.data.id": "${userId}"} + - eq: {"$.data.name": "${name}"} + +api2: + title: ossToken接口检查 + url: /api/v1/file/getOssToken?v=${v} + method: get + expected: + - eq: {"$.code": 0} + +api3: + title: 检查首页banner广告 + url: /api/v1/index/interestingRecommend?v=${v} + method: get + before_sql: homepage/homepage_banner_ad_select.py + expected: + - eq: {"$.code": 0} + - eq: {"$.data.bannerList[0].title": "${ad_1_title}"} + - eq: {"$.data.bannerList[0].url": "${ad_1_url}"} + - eq: {"$.data.bannerList[0].pic": "${ad_1_pic}"} + - eq: {"$.data.bannerList[0].target": "${ad_1_target}"} + - eq: {"$.data.bannerList[1].title": "${ad_2_title}"} + - eq: {"$.data.bannerList[1].url": "${ad_2_url}"} + - eq: {"$.data.bannerList[1].pic": "${ad_2_pic}"} + - eq: {"$.data.bannerList[1].target": "${ad_2_target}"} + - eq: {"$.data.bannerList[2].title": "${ad_3_title}"} + - eq: {"$.data.bannerList[2].url": "${ad_3_url}"} + - eq: {"$.data.bannerList[2].pic": "${ad_3_pic}"} + - eq: {"$.data.bannerList[2].target": "${ad_3_target}"} + +api4: + title: 检查引导页步骤 + url: /api/v1/setting/checkGettingStep?v=${v} + method: get + before_sql: homepage/brand_step_select.py + expected: + - eq: {"$.code": 0} + - eq: {"$.data.gettingStep": "${step}"} + +api5: + title: 检查首页tarbar文案 + url: /api/v1/businessPlan/getTarBarNotice + method: post + data: {"position":"home","v":"${v}"} + before_sql: homepage/homepage_tarbar_content_select.py + expected: + - eq: {"$.code": 0} + - eq: {"$.data.content": "${tarbar_content}"} + +api6: + title: 检查Google测速接口是否ping通 + url: https://api-admin.seoant.com/open-api/getPageSpeedDataByGoogle?domain=${shopDomain}&is_refresh=0 + method: get + expected: + - eq: {"$.code": 200} \ No newline at end of file -- GitLab