Update test framework: fix run_tests.py to support all test files, add auto-import-check for test files

This commit is contained in:
qiaoxinjiu
2026-05-09 15:11:30 +08:00
parent eb053a347f
commit eaba8328da
21739 changed files with 2236758 additions and 719 deletions

View File

@@ -0,0 +1,161 @@
# encoding: utf-8
# @Time : 2023/04/19 上午8:24
# @Author : chenjiang
# @Site :
# @File : test_page_loading.py
import sys
import os
import time
import allure
sys.path.append(os.path.abspath(os.path.join(os.path.abspath(__file__), '../../../../../../../')))
import pytest
from ubrd.ui_library.page.gue.home_page import *
from ubrd.ui_library.logic.gue.page_view_logic import *
from ui_auto_lego.common.pc_browser_launch import PcBrowserLaunch
from ubrd.ui_library.page.gue.about_page import *
from ubrd.ui_library.page.gue.blog_page import *
from ubrd.ui_library.page.gue.faq_page import *
from ubrd.ui_library.page.gue.download_page import *
from ubrd.ui_library.page.gue.course_outline_page import *
from ubrd.ui_library.page.gue.course_detail_page import *
from ubrd.ui_library.page.gue.demo_page import *
from ubrd.ui_library.page.gue.login_page import *
from ubrd.ui_library.page.gue.leads_reserve_page import *
from ubrd.ui_library.page.gue.worksheet_page import *
class TestPageLoading:
driver_obj = None
pc_browser_launch_obj = None
def setup_method(self):
self.pc_browser_launch_obj = PcBrowserLaunch(launch_param=['no-sandbox'], is_head_less=True,
is_maximize_window=False,
window_size=(1920, 1080))
self.driver_obj = self.pc_browser_launch_obj.driver_obj
def teardown_method(self):
self.pc_browser_launch_obj.browser_quit()
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("首页页面加载")
def test_gue_home_page_loading_test(self):
element_tuple = SgEnglishHome.try_a_free_class_button_by_css()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("关于页面加载")
def test_gue_about_page_loading_test(self):
element_tuple = AboutPage.come_work_with_us_by_link()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/about', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("blog页面加载")
def test_gue_blog_page_loading_test(self):
element_tuple = BlogPage.read_full_post_by_css()
common_get_url_find_element(self.driver_obj, 'https://blog.sparkedu.com/home-sg/', element_tuple)
self.driver_obj.switch_to.default_content()
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("faq页面加载")
def test_gue_faq_page_loading_test(self):
element_tuple = FaqPage.spark_math_by_link()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/faq/questions',
element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("下载页面加载")
def test_gue_download_page_loading_test(self):
element_tuple = DownloadPage.windows_download_by_css()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/download', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("worksheet页面加载")
def test_gue_worksheet_page_loading_test(self):
element_tuple = WorkSheetPage.worksheet_by_css()
common_get_url_find_element(self.driver_obj, 'https://worksheet.sparkedu.com/', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("AP大纲页面加载")
def test_gue_spark_math_advanced_program_outline_page_loading_test(self):
element_tuple = CourseOutlinePage.try_a_free_class_by_css()
common_get_url_find_element(self.driver_obj,
'https://www.sparkedu.com/en-sg/spark-math/advanced-program', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("AP课程详情页面加载")
def test_gue_spark_math_advanced_program_detail_page_loading_test(self):
element_tuple = CourseDetailPage.subscribe_button_by_xpath()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/syllabus/K2', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("cp大纲页面加载")
def test_gue_spark_math_competition_program_outline_page_loading_test(self):
element_tuple = CourseOutlinePage.try_a_free_class_by_css()
common_get_url_find_element(self.driver_obj,
'https://www.sparkedu.com/en-sg/spark-math/competition-program',
element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("cp课程详情页面加载")
def test_gue_spark_math_competition_program_detail_page_loading_test(self):
element_tuple = CourseDetailPage.subscribe_button_by_xpath()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/syllabus/P3?type=cp',
element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("lingo大纲页面加载")
def test_gue_spark_math_lingo_spark_outline_page_loading_test(self):
element_tuple = CourseOutlinePage.try_a_free_class_by_css()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/lingospark', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("game-demo页面加载")
def test_gue_demo_page_loading_test(self):
element_tuple = DemoPage.full_screen_by_css()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/game-demo/program',
element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("登录页面加载")
def test_gue_login_page_loading_test(self):
element_tuple = LoginPage.user_terms_of_services_button_by_css()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/login', element_tuple)
@pytest.mark.monitor
@pytest.mark.page_loading
@pytest.mark.QA_陈江
@allure.title("留资页面加载")
def test_gue_leads_reserve_page_loading_test(self):
element_tuple = LeadsReservePage.services_tip_by_id()
common_get_url_find_element(self.driver_obj, 'https://www.sparkedu.com/en-sg/leads-reserve', element_tuple)
# if __name__ == '__main__':
# print(os.path.join(os.path.abspath('__file__')))

View File

@@ -0,0 +1,44 @@
# encoding: utf-8
# @Time : 2023/04/19 上午8:24
# @Author : chenjiang
# @Site :
# @File : test_performance_test.py
import pytest
import sys
import os
import datetime
import time
import unittest
sys.path.append(os.path.abspath(os.path.join(os.path.abspath(__file__), '../../../../../../../')))
from ubrd.ui_library.logic.gue.page_view_logic import *
from ui_auto_lego.common.pc_browser_launch import PcBrowserLaunch
class TestGueFePerformanceTest(unittest.TestCase):
# 获取当前日期
today = datetime.date.today()
# 构造时间对象
dt = datetime.datetime.combine(today, datetime.time(hour=8))
# 转换为时间戳
timestamp_in_seconds = str(int(time.mktime(dt.timetuple())))
ua = f'user-agent="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1 {timestamp_in_seconds}"'
driver_obj = PcBrowserLaunch(launch_param=[ua, 'no-sandbox'], is_head_less=True, is_maximize_window=False,
window_size=(1920, 1080)).driver_obj
@pytest.mark.performance
@pytest.mark.gue_fe_performance
def test_gue_fe_performance_test(self):
try:
vispark_page_loading(self.driver_obj)
self.driver_obj.quit()
except Exception as e:
self.driver_obj.quit(f"异常信息:{e}")
raise Exception(e)
print(1)
print(self.timestamp_in_seconds)