From 7e6eae1b87a0f993d8ca2d30e319938327da68eb Mon Sep 17 00:00:00 2001 From: mikigo Date: Wed, 22 Nov 2023 10:48:00 +0800 Subject: [PATCH] =?UTF-8?q?fix:=201.=E6=9B=B4=E6=96=B0=E4=BA=86=E5=9B=BE?= =?UTF-8?q?=E5=83=8F=E8=AF=86=E5=88=AB=E5=92=8COCR=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E7=9A=84=E5=8A=9F=E8=83=BD=EF=BC=9B2.=E7=A7=BB=E9=99=A4?= =?UTF-8?q?=E4=BA=86.env=E6=96=87=E4=BB=B6=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Description: Log: --- .env | 6 ----- env.sh | 1 - src/assert_common.py | 48 ++++++++++++++++++++++++++++++++----- src/image_utils.py | 57 ++++++++++++++++++++++---------------------- 4 files changed, 70 insertions(+), 42 deletions(-) delete mode 100644 .env diff --git a/.env b/.env deleted file mode 100644 index 4e6bb091..00000000 --- a/.env +++ /dev/null @@ -1,6 +0,0 @@ -PIPENV_VERBOSITY=-1 - -DISPLAY=":0" -QT_QPA_PLATFORM= -QT_ACCESSIBILITY=1 -QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1 \ No newline at end of file diff --git a/env.sh b/env.sh index 55e603ad..8cb0a6ab 100644 --- a/env.sh +++ b/env.sh @@ -69,7 +69,6 @@ echo -e "${flag_feel}安装 pip 包\n" sudo pip3 install -U pip > /tmp/env.log 2>&1 sudo pip3 config set global.timeout 10000 > /tmp/env.log 2>&1 sudo pip3 config set global.index-url ${pypi_mirror} > /tmp/env.log 2>&1 -sudo pip3 config set global.extra-index-url https://it.uniontech.com/nexus/repository/pypi-public/simple sudo pip3 install pipenv > /tmp/env.log 2>&1 if [ $? = 0 ]; then echo -e "pipenv\t安装成功 √" diff --git a/src/assert_common.py b/src/assert_common.py index 7b9e9cbd..a934e817 100644 --- a/src/assert_common.py +++ b/src/assert_common.py @@ -41,8 +41,11 @@ def assert_image_exist( widget: str, rate: float = 0.9, multiple: bool = False, - match_number: int = None, picture_abspath: str = None, + network_retry: int = None, + pause: [int, float] = None, + timeout: [int, float] = None, + match_number: int = None, ): """ 期望界面存在模板图片 @@ -57,8 +60,11 @@ def assert_image_exist( widget, rate=rate, multiple=multiple, - match_number=match_number, picture_abspath=picture_abspath, + network_retry=network_retry, + pause=pause, + timeout=timeout, + max_match_number=match_number, ) except TemplateElementNotFound as exc: raise AssertionError(exc) from TemplateElementNotFound @@ -96,8 +102,11 @@ def assert_image_not_exist( widget: str, rate: float = 0.9, multiple: bool = False, - match_number: int = None, picture_abspath: str = None, + network_retry: int = None, + pause: [int, float] = None, + timeout: [int, float] = None, + match_number: int = None, ): """ 期望界面不存在模板图片 @@ -113,8 +122,11 @@ def assert_image_not_exist( widget, rate=rate, multiple=multiple, - match_number=match_number, picture_abspath=picture_abspath, + network_retry=network_retry, + pause=pause, + timeout=timeout, + max_match_number=match_number, ) raise TemplateElementFound(widget) except TemplateElementNotFound: @@ -385,7 +397,15 @@ def assert_file_endwith_exist(cls, path, endwith): @staticmethod def assert_ocr_exist( - *args, picture_abspath=None, similarity=0.6, return_first=False, lang="ch" + *args, + picture_abspath=None, + similarity=0.6, + return_first=False, + lang="ch", + network_retry: int = None, + pause: [int, float] = None, + timeout: [int, float] = None, + max_match_number: int = None, ): """断言文案存在""" pic = None @@ -397,6 +417,10 @@ def assert_ocr_exist( similarity=similarity, return_first=return_first, lang=lang, + network_retry=network_retry, + pause=pause, + timeout=timeout, + max_match_number=max_match_number, ) if res is False: raise AssertionError( @@ -415,7 +439,15 @@ def assert_ocr_exist( @staticmethod def assert_ocr_not_exist( - *args, picture_abspath=None, similarity=0.6, return_first=False, lang="ch" + *args, + picture_abspath=None, + similarity=0.6, + return_first=False, + lang="ch", + network_retry: int = None, + pause: [int, float] = None, + timeout: [int, float] = None, + max_match_number: int = None, ): """断言文案不存在""" pic = None @@ -427,6 +459,10 @@ def assert_ocr_not_exist( similarity=similarity, return_first=return_first, lang=lang, + network_retry=network_retry, + pause=pause, + timeout=timeout, + max_match_number=max_match_number, ) if res is False: pass diff --git a/src/image_utils.py b/src/image_utils.py index db0d8862..9971af7e 100644 --- a/src/image_utils.py +++ b/src/image_utils.py @@ -21,36 +21,35 @@ image_setting.PORT = 8889 image_setting.SERVER_IP = GlobalConfig.OPENCV_SERVER_HOST -from src import logger - class ImageUtils(ImageCenter): """图像识别的工具类""" - @staticmethod - def opencv_compare_images_SSIM( - module_name, imageA_name, imageB_name, ssim=None, app_name=None - ): - """ - 判断两张图片是否相同 - (临时解决安全中心需要外部依赖的问题,基础框架提供对应的接口;) - :param module_name:模块 - :param imageA_name:预存图片A - :param imageB_name:比较图片B - example:opencv_compare_images_SSIM('system_check', 'system_check_315116', 'pms_315116') - """ - # pylint: disable=invalid-name,I1101,E1101 - if ssim is None: - ssim = GlobalConfig.IMAGE_RATE - picture_path = f"{GlobalConfig.APPS_PATH}/{app_name}/res/picture" - contrast_path = f"/home/{GlobalConfig.USERNAME}/Pictures/{app_name}" - file_a = cv.imread(f"{picture_path}/{module_name}/{imageA_name}.png") - file_b = cv.imread(f"{contrast_path}/{module_name}/{imageB_name}.png") - file_a = cv.cvtColor(file_a, cv.COLOR_BGR2GRAY) - file_b = cv.cvtColor(file_b, cv.COLOR_BGR2GRAY) - result = cv.matchTemplate(file_b, file_a, cv.TM_CCOEFF_NORMED) - similarity = cv.minMaxLoc(result)[1] - logger.info("SSIM = " + str(similarity)) - if similarity >= ssim: - return True - return False + # 移除此方法 + # @staticmethod + # def opencv_compare_images_SSIM( + # module_name, imageA_name, imageB_name, ssim=None, app_name=None + # ): + # """ + # 判断两张图片是否相同 + # (临时解决安全中心需要外部依赖的问题,基础框架提供对应的接口;) + # :param module_name:模块 + # :param imageA_name:预存图片A + # :param imageB_name:比较图片B + # example:opencv_compare_images_SSIM('system_check', 'system_check_315116', 'pms_315116') + # """ + # # pylint: disable=invalid-name,I1101,E1101 + # if ssim is None: + # ssim = GlobalConfig.IMAGE_RATE + # picture_path = f"{GlobalConfig.APPS_PATH}/{app_name}/res/picture" + # contrast_path = f"/home/{GlobalConfig.USERNAME}/Pictures/{app_name}" + # file_a = cv.imread(f"{picture_path}/{module_name}/{imageA_name}.png") + # file_b = cv.imread(f"{contrast_path}/{module_name}/{imageB_name}.png") + # file_a = cv.cvtColor(file_a, cv.COLOR_BGR2GRAY) + # file_b = cv.cvtColor(file_b, cv.COLOR_BGR2GRAY) + # result = cv.matchTemplate(file_b, file_a, cv.TM_CCOEFF_NORMED) + # similarity = cv.minMaxLoc(result)[1] + # logger.info("SSIM = " + str(similarity)) + # if similarity >= ssim: + # return True + # return False