From cec9050b4a52ce2f8ebc041963f0a1e3fc9d1882 Mon Sep 17 00:00:00 2001
From: zhenyuWang <13641039885@163.com>
Date: Tue, 9 Apr 2024 16:37:28 +0800
Subject: [PATCH] test: remove webview screenshot test
---
.../webview-screenshot-comparison.test.js | 363 ------------------
.../webview-screenshot-comparison.uvue | 65 ----
.../webview-screenshot.test.js | 343 -----------------
.../webview-screenshot.uvue | 44 ---
4 files changed, 815 deletions(-)
delete mode 100644 pages/webview-screenshot-comparison/webview-screenshot-comparison.test.js
delete mode 100644 pages/webview-screenshot-comparison/webview-screenshot-comparison.uvue
delete mode 100644 pages/webview-screenshot/webview-screenshot.test.js
delete mode 100644 pages/webview-screenshot/webview-screenshot.uvue
diff --git a/pages/webview-screenshot-comparison/webview-screenshot-comparison.test.js b/pages/webview-screenshot-comparison/webview-screenshot-comparison.test.js
deleted file mode 100644
index 2c7a0970..00000000
--- a/pages/webview-screenshot-comparison/webview-screenshot-comparison.test.js
+++ /dev/null
@@ -1,363 +0,0 @@
-jest.setTimeout(10000000);
-
-const pages = [
- "pages/tabBar/component",
- "pages/component/view/view",
- "pages/component/scroll-view/scroll-view",
- "pages/component/text/text",
- "pages/component/text/text-props",
- "pages/component/progress/progress",
- "pages/component/form/form",
- "pages/component/button/button",
- "pages/component/button/buttonstatus",
- "pages/component/radio/radio",
- "pages/component/rich-text/rich-text",
- "pages/component/rich-text/rich-text-tags",
- "pages/component/rich-text/rich-text-complex",
- "pages/component/checkbox/checkbox",
- "pages/component/textarea/textarea",
- "pages/component/slider/slider",
- "pages/component/slider-100/slider-100",
- "pages/component/switch/switch",
- "pages/component/swiper/swiper",
- "pages/component/image/image",
- "pages/component/image/image-format",
- ...(process.env.android_cpu_type !== 'x86_64' ? ["pages/component/image/image-mode"] : []), // x86_64 模拟器 image-model 截图崩溃
- "pages/component/video/video-format",
- "pages/component/navigator/navigator",
- "pages/component/navigator/navigate",
-
- "pages/component/navigator/redirect",
- "pages/component/general-attribute/general-attribute",
- "pages/component/general-event/general-event",
- "pages/component/scroll-view/scroll-view-refresher",
- "pages/component/scroll-view/scroll-view-props",
- "pages/component/scroll-view/scroll-view-refresher-props",
- "pages/component/scroll-view/scroll-view-custom-refresher-props",
- "pages/component/general-event/transition-event",
- "pages/component/general-event/touch-event",
- "pages/component/scroll-view/scroll-view-refresher",
- "pages/tabBar/API",
- "pages/API/get-app/get-app",
- "pages/API/get-current-pages/get-current-pages",
- "pages/API/get-launch-options-sync/get-launch-options-sync",
- "pages/API/navigator/navigator",
- "pages/API/set-navigation-bar-color/set-navigation-bar-color",
- "pages/API/set-navigation-bar-title/set-navigation-bar-title",
- "pages/API/navigator/new-page/new-page-1",
- "pages/API/navigator/new-page/new-page-3",
- "pages/API/pull-down-refresh/pull-down-refresh",
- "pages/API/nodes-info/nodes-info",
- "pages/API/storage/storage",
- "pages/API/action-sheet/action-sheet",
- "pages/API/modal/modal",
- "pages/API/loading/loading",
- "pages/API/toast/toast",
- "pages/API/load-font-face/load-font-face",
- "pages/API/load-font-face/load-font-face-child",
- "pages/API/get-location/get-location",
- "pages/API/interceptor/interceptor",
- "pages/API/interceptor/page1",
- "pages/API/interceptor/page2",
- "pages/API/request/request",
- "pages/API/upload-file/upload-file",
- "pages/API/download-file/download-file",
- "pages/API/websocket-socketTask/websocket-socketTask",
- "pages/API/unicloud-call-function/unicloud-call-function",
- "pages/API/unicloud-import-object/unicloud-import-object",
- "pages/API/get-system-info/get-system-info",
- "pages/API/get-device-info/get-device-info",
- "pages/API/get-app-base-info/get-app-base-info",
- "pages/API/preview-image/preview-image",
- "pages/API/choose-image/choose-image",
- "pages/API/get-network-type/get-network-type",
- "pages/API/page-scroll-to/page-scroll-to",
- "pages/API/event-bus/event-bus",
- "pages/API/unicloud-file-api/unicloud-file-api",
- "pages/API/unicloud-database/unicloud-database",
- "pages/API/get-window-info/get-window-info",
- "pages/API/get-element-by-id/get-element-by-id",
- "pages/API/get-element-by-id/get-element-by-id-multiple-root-node",
- "pages/API/navigator/new-page/onLoad",
- "pages/tabBar/CSS",
- "pages/CSS/background/background-color",
- "pages/CSS/background/background-image",
- "pages/CSS/border/border-bottom",
- "pages/CSS/border/border-color",
- "pages/CSS/border/border-left",
- "pages/CSS/border/border-radius",
- "pages/CSS/border/border-right",
- "pages/CSS/border/border-style",
- "pages/CSS/border/border-top",
- "pages/CSS/border/border-width",
- "pages/CSS/border/border",
- "pages/CSS/display/flex",
- "pages/CSS/display/none",
- "pages/CSS/flex/align-content",
- "pages/CSS/flex/align-items",
- "pages/CSS/flex/flex-basis",
- "pages/CSS/flex/flex-direction",
- "pages/CSS/flex/flex-flow",
- "pages/CSS/flex/flex-grow",
- "pages/CSS/flex/flex-shrink",
- "pages/CSS/flex/flex",
- "pages/CSS/flex/justify-content",
- "pages/CSS/layout/height",
- "pages/CSS/layout/max-height",
- "pages/CSS/layout/max-width",
- "pages/CSS/layout/min-height",
- "pages/CSS/layout/min-width",
- "pages/CSS/layout/position",
- "pages/CSS/layout/width",
- "pages/CSS/layout/z-index",
- "pages/CSS/layout/visibility",
- "pages/CSS/margin/margin-bottom",
- "pages/CSS/margin/margin-left",
- "pages/CSS/margin/margin-right",
- "pages/CSS/margin/margin-top",
- "pages/CSS/margin/margin",
- "pages/CSS/padding/padding-bottom",
- "pages/CSS/padding/padding-left",
- "pages/CSS/padding/padding-right",
- "pages/CSS/padding/padding-top",
- "pages/CSS/padding/padding",
- "pages/CSS/text/color",
- "pages/CSS/text/font-size",
- "pages/CSS/text/font-style",
- "pages/CSS/text/font-weight",
- "pages/CSS/text/letter-spacing",
- "pages/CSS/text/line-height",
- "pages/CSS/text/text-align",
- "pages/CSS/text/text-overflow",
- "pages/CSS/text/text-decoration-line",
- "pages/CSS/transform/translate",
- "pages/CSS/transform/scale",
- "pages/CSS/transform/rotate",
- "pages/CSS/border/complex-border/complex-border",
- "pages/CSS/overflow/overflow",
- "pages/CSS/transition/transition",
- "pages/CSS/box-shadow/box-shadow",
- "pages/tabBar/template",
- "pages/template/drop-card/drop-card",
- "pages/template/custom-tab-bar/custom-tab-bar",
- "pages/template/half-screen/half-screen",
- "pages/template/navbar-lite/navbar-lite",
- "pages/template/pull-zoom-image/pull-zoom-image",
- "pages/template/scroll-fold-nav/scroll-fold-nav",
-
- // 自动获取焦点
- // "pages/component/input/input",
-
- // web 暂不支持
- // "pages/component/list-view/list-view",
- // "pages/component/list-view/list-view-multiplex",
- // "pages/API/element-draw/element-draw",
- // "pages/template/swiper-list/swiper-list",
- // "pages/template/swiper-list2/swiper-list2",
- // "pages/template/long-list2/long-list2",
-
- // 动态内容
- // "pages/component/web-view/web-view"
- // "pages/template/custom-refresher/custom-refresher",
- // "pages/component/picker-view/picker-view",
- // "pages/template/long-list/long-list",
- // "pages/template/list-news/detail/detail",
- // "pages/template/swiper-vertical-video/swiper-vertical-video",
-
- // 网络资源加载
- // "pages/component/image/image-path",
- // "pages/CSS/text/font-family",
- // "pages/template/list-news/list-news",
-
- // 依赖加载完成回调
- // pages/component/web-view-local/web-view-local
-
- // 截图崩溃
- // "pages/component/image/image-large"
- // "pages/component/video/video"
- // "pages/API/websocket-global/websocket-global"
-
- // 仅 app
- // "pages/template/calendar/calendar",
- // pages/component/unicloud-db-contacts/list
- // pages/component/unicloud-db-contacts/add
- // pages/component/unicloud-db-contacts/edit
- // pages/component/unicloud-db-contacts/detail
- // pages/component/mixin-datacom/mixin-datacom
- // "pages/API/get-battery-info/get-battery-info",
- // "pages/API/get-univerify-manager/get-univerify-manager",
- // "pages/component/sticky-header/sticky-header",
- // "pages/component/sticky-section/sticky-section",
- // pages/API/facial-recognition-verify/facial-recognition-verify
- // pages/API/get-file-system-manager/get-file-system-manager
- // "pages/API/install-apk/install-apk",
- // "pages/template/scroll-sticky/scroll-sticky",
- // "pages/API/exit/exit",
- // "pages/API/element-takesnapshot/element-takesnapshot",
- // "pages/API/get-system-setting/get-system-setting",
- // "pages/API/get-app-authorize-setting/get-app-authorize-setting",
- // "pages/API/save-image-to-photos-album/save-image-to-photos-album",
-
- // 仅 web
- // pages/template/browser-canvas/browser-canvas
- // pages/template/schema/schema
- // pages/template/share/share
-];
-const childToParentPagesMap = new Map([
- [
- "pages/API/load-font-face/load-font-face-child",
- "pages/API/load-font-face/load-font-face",
- ],
-]);
-
-const customNavigationPages = [
- "pages/template/navbar-lite/navbar-lite",
- "pages/template/pull-zoom-image/pull-zoom-image",
- "pages/template/scroll-fold-nav/scroll-fold-nav"
-]
-
-const needAdbScreenshotPages = [
- "pages/tabBar/component",
- "pages/tabBar/API",
- "pages/tabBar/CSS",
- "pages/tabBar/template",
- "pages/API/action-sheet/action-sheet",
- "pages/API/modal/modal",
- "pages/API/loading/loading",
- "pages/API/toast/toast",
- "pages/API/pull-down-refresh/pull-down-refresh",
-];
-
-const needAdbScreenshot = (url) => {
- return needAdbScreenshotPages.includes(url);
-};
-
-const PAGE_PATH =
- "/pages/webview-screenshot-comparison/webview-screenshot-comparison";
-
-describe("shot-compare", () => {
- let shouldCompareScreenShot = false
- const uniTestPlatformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase()
- if (uniTestPlatformInfo.startsWith('android') && !process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
- version = parseInt(uniTestPlatformInfo.split(" ")[1])
- shouldCompareScreenShot = version > 9
- }
-
- if(uniTestPlatformInfo.startsWith('ios') && !process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
- shouldCompareScreenShot = true
- }
-
- if (!shouldCompareScreenShot) {
- it("other platform not support", async () => {
- expect(1).toBe(1);
- });
- return
- }
-
- let page = null;
- let pageIndex = 0;
- let baseSrc = "";
- beforeAll(async () => {
- // 获取导航栏+状态栏高度
- page = await program.reLaunch('/pages/API/get-window-info/get-window-info')
- await page.callMethod('getWindowInfo')
- // 获取设备像素比
- page = await program.reLaunch('/pages/API/get-device-info/get-device-info')
- await page.callMethod('getDeviceInfo')
- page = await program.reLaunch(PAGE_PATH);
- await page.waitFor(500);
-
- // set webview-screenshot-comparison page baseSrc
- baseSrc =
- process.env.UNI_WEB_SERVICE_URL ? `${process.env.UNI_WEB_SERVICE_URL}/#/` :
- "http://test.dcloud.io/unix_h5_build/98_dev_hello-uni-app-x/#/";
- page.setData({
- baseSrc,
- });
- });
-
- beforeEach(async () => {
- page = await program.reLaunch(PAGE_PATH);
- await page.waitFor(500);
- });
- afterEach(() => {
- pageIndex++;
- });
-
- test.each(pages)("%s", async () => {
- const isNeedAdbScreenshot = needAdbScreenshot(pages[pageIndex]);
- const isCustomNavigationBar = customNavigationPages.includes(pages[pageIndex]);
- const {
- statusBarHeight,
- safeArea,
- devicePixelRatio
- } = await page.data();
- const screenshotParams = {
- fullPage: true,
- deviceShot: isNeedAdbScreenshot,
- // deviceShot 截图时跳过状态栏
- area: {
- x: 0,
- y: statusBarHeight * devicePixelRatio,
- },
- }
- const screenshotPath = `__webview_comparison__/${pages[pageIndex].replace(/\//g, "-")}`;
-
- // web in webview screenshot
- let startTime = Date.now();
- // 加载依赖页面
- if (childToParentPagesMap.get(pages[pageIndex])) {
- await page.setData({
- src: `${baseSrc}${childToParentPagesMap.get(pages[pageIndex])}`,
- isLoaded: false
- });
- await page.waitFor(async () => {
- const isLoaded = await page.data("isLoaded");
- return isLoaded || Date.now() - startTime > 10000;
- });
- await page.waitFor(200);
- }
- await page.setData({
- src: `${baseSrc}${pages[pageIndex]}`,
- isLoaded: false,
- isCustomNavigationBar,
- });
- startTime = Date.now();
- await page.waitFor(async () => {
- const isLoaded = await page.data("isLoaded");
- return isLoaded || Date.now() - startTime > 3000;
- });
- await page.waitFor(800);
- if (pages[pageIndex].includes("load-font-face")) {
- await page.waitFor(3000);
- }
-
- // web 端非 deviceShot 截图时设置 offsetY 移除导航栏
- const webSnapshot = await program.screenshot({
- ...screenshotParams,
- id: 'webview-screenshot-comparison',
- offsetY: `${isCustomNavigationBar ? 0 : 44 + safeArea.top}`
- });
- expect(webSnapshot).toMatchImageSnapshot({
- customSnapshotIdentifier() {
- return screenshotPath;
- },
- });
-
- // app-android page screenshot comparison
- const navigateMethod = pages[pageIndex].startsWith("pages/tabBar") ?
- "switchTab" :
- "navigateTo";
- page = await program[navigateMethod](`/${pages[pageIndex]}`);
- await page.waitFor(500);
- if (pages[pageIndex].includes("load-font-face")) {
- await page.waitFor(3000);
- }
- const appAndroidSnapshot = await program.screenshot(screenshotParams);
- expect(appAndroidSnapshot).toMatchImageSnapshot({
- customSnapshotIdentifier() {
- return screenshotPath;
- },
- });
- });
-});
diff --git a/pages/webview-screenshot-comparison/webview-screenshot-comparison.uvue b/pages/webview-screenshot-comparison/webview-screenshot-comparison.uvue
deleted file mode 100644
index b6d4c94c..00000000
--- a/pages/webview-screenshot-comparison/webview-screenshot-comparison.uvue
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/pages/webview-screenshot/webview-screenshot.test.js b/pages/webview-screenshot/webview-screenshot.test.js
deleted file mode 100644
index 855dd48a..00000000
--- a/pages/webview-screenshot/webview-screenshot.test.js
+++ /dev/null
@@ -1,343 +0,0 @@
-jest.setTimeout(10000000);
-
-const pages = [
- "pages/tabBar/component",
- "pages/component/view/view",
- "pages/component/scroll-view/scroll-view",
- "pages/component/text/text",
- "pages/component/text/text-props",
- "pages/component/progress/progress",
- "pages/component/form/form",
- "pages/component/button/button",
- "pages/component/radio/radio",
- "pages/component/rich-text/rich-text",
- "pages/component/rich-text/rich-text-tags",
- "pages/component/rich-text/rich-text-complex",
- "pages/component/checkbox/checkbox",
- "pages/component/textarea/textarea",
- "pages/component/slider/slider",
- "pages/component/slider-100/slider-100",
- "pages/component/switch/switch",
- "pages/component/swiper/swiper",
- "pages/component/image/image",
- "pages/component/image/image-format",
- "pages/component/image/image-mode",
- "pages/component/video/video-format",
- "pages/component/navigator/navigator",
- "pages/component/navigator/navigate",
- "pages/component/navigator/redirect",
- "pages/component/general-attribute/general-attribute",
- "pages/component/general-event/general-event",
- "pages/component/scroll-view/scroll-view-refresher",
- "pages/component/scroll-view/scroll-view-props",
- "pages/component/scroll-view/scroll-view-refresher-props",
- "pages/component/scroll-view/scroll-view-custom-refresher-props",
- "pages/component/general-event/transition-event",
- "pages/component/general-event/touch-event",
- "pages/component/scroll-view/scroll-view-refresher",
- "pages/tabBar/API",
- "pages/API/get-app/get-app",
- "pages/API/get-current-pages/get-current-pages",
- "pages/API/get-launch-options-sync/get-launch-options-sync",
- "pages/API/navigator/navigator",
- "pages/API/set-navigation-bar-color/set-navigation-bar-color",
- "pages/API/set-navigation-bar-title/set-navigation-bar-title",
- "pages/API/navigator/new-page/new-page-1",
- "pages/API/navigator/new-page/new-page-3",
- "pages/API/pull-down-refresh/pull-down-refresh",
- "pages/API/nodes-info/nodes-info",
- "pages/API/storage/storage",
- "pages/API/action-sheet/action-sheet",
- "pages/API/modal/modal",
- "pages/API/loading/loading",
- "pages/API/toast/toast",
- "pages/API/load-font-face/load-font-face",
- "pages/API/load-font-face/load-font-face-child",
- "pages/API/get-location/get-location",
- "pages/API/interceptor/interceptor",
- "pages/API/interceptor/page1",
- "pages/API/interceptor/page2",
- "pages/API/request/request",
- "pages/API/upload-file/upload-file",
- "pages/API/download-file/download-file",
- "pages/API/websocket-socketTask/websocket-socketTask",
- "pages/API/unicloud-call-function/unicloud-call-function",
- "pages/API/unicloud-import-object/unicloud-import-object",
- "pages/API/get-system-info/get-system-info",
- "pages/API/get-device-info/get-device-info",
- "pages/API/get-app-base-info/get-app-base-info",
- "pages/API/preview-image/preview-image",
- "pages/API/choose-image/choose-image",
- "pages/API/get-network-type/get-network-type",
- "pages/API/page-scroll-to/page-scroll-to",
- "pages/API/event-bus/event-bus",
- "pages/API/unicloud-file-api/unicloud-file-api",
- "pages/API/unicloud-database/unicloud-database",
- "pages/API/get-window-info/get-window-info",
- "pages/API/get-element-by-id/get-element-by-id",
- "pages/API/get-element-by-id/get-element-by-id-multiple-root-node",
- "pages/API/navigator/new-page/onLoad",
- "pages/tabBar/CSS",
- "pages/CSS/background/background-color",
- "pages/CSS/background/background-image",
- "pages/CSS/border/border-bottom",
- "pages/CSS/border/border-color",
- "pages/CSS/border/border-left",
- "pages/CSS/border/border-radius",
- "pages/CSS/border/border-right",
- "pages/CSS/border/border-style",
- "pages/CSS/border/border-top",
- "pages/CSS/border/border-width",
- "pages/CSS/border/border",
- "pages/CSS/display/flex",
- "pages/CSS/display/none",
- "pages/CSS/flex/align-content",
- "pages/CSS/flex/align-items",
- "pages/CSS/flex/flex-basis",
- "pages/CSS/flex/flex-direction",
- "pages/CSS/flex/flex-flow",
- "pages/CSS/flex/flex-grow",
- "pages/CSS/flex/flex-shrink",
- "pages/CSS/flex/flex",
- "pages/CSS/flex/justify-content",
- "pages/CSS/layout/height",
- "pages/CSS/layout/max-height",
- "pages/CSS/layout/max-width",
- "pages/CSS/layout/min-height",
- "pages/CSS/layout/min-width",
- "pages/CSS/layout/position",
- "pages/CSS/layout/width",
- "pages/CSS/layout/z-index",
- "pages/CSS/layout/visibility",
- "pages/CSS/margin/margin-bottom",
- "pages/CSS/margin/margin-left",
- "pages/CSS/margin/margin-right",
- "pages/CSS/margin/margin-top",
- "pages/CSS/margin/margin",
- "pages/CSS/padding/padding-bottom",
- "pages/CSS/padding/padding-left",
- "pages/CSS/padding/padding-right",
- "pages/CSS/padding/padding-top",
- "pages/CSS/padding/padding",
- "pages/CSS/text/color",
- "pages/CSS/text/font-size",
- "pages/CSS/text/font-style",
- "pages/CSS/text/font-weight",
- "pages/CSS/text/letter-spacing",
- "pages/CSS/text/line-height",
- "pages/CSS/text/text-align",
- "pages/CSS/text/text-overflow",
- "pages/CSS/text/text-decoration-line",
- "pages/CSS/transform/translate",
- "pages/CSS/transform/scale",
- "pages/CSS/transform/rotate",
- "pages/CSS/border/complex-border/complex-border",
- "pages/CSS/overflow/overflow",
- "pages/CSS/transition/transition",
- "pages/CSS/box-shadow/box-shadow",
- "pages/tabBar/template",
- "pages/template/drop-card/drop-card",
- "pages/template/custom-tab-bar/custom-tab-bar",
- "pages/template/half-screen/half-screen",
- "pages/template/navbar-lite/navbar-lite",
- "pages/template/pull-zoom-image/pull-zoom-image",
- "pages/template/scroll-fold-nav/scroll-fold-nav",
-
- // 自动获取焦点
- // "pages/component/input/input",
-
- // web 暂不支持
- // "pages/component/list-view/list-view",
- // "pages/component/list-view/list-view-multiplex",
- // "pages/API/element-draw/element-draw",
- // "pages/template/swiper-list/swiper-list",
- // "pages/template/swiper-list2/swiper-list2",
- // "pages/template/long-list2/long-list2",
-
- // 动态内容
- // "pages/component/web-view/web-view"
- // "pages/template/custom-refresher/custom-refresher",
- // "pages/component/picker-view/picker-view",
- // "pages/template/long-list/long-list",
- // "pages/template/list-news/detail/detail",
- // "pages/template/swiper-vertical-video/swiper-vertical-video",
-
- // 网络资源加载
- // "pages/component/image/image-path",
- // "pages/CSS/text/font-family",
- // "pages/template/list-news/list-news",
-
- // 依赖加载完成回调
- // pages/component/web-view-local/web-view-local
-
- // 截图崩溃
- // "pages/component/image/image-large"
- // "pages/component/video/video"
- // "pages/API/websocket-global/websocket-global"
-
- // 仅 app
- // "pages/template/calendar/calendar",
- // pages/component/unicloud-db-contacts/list
- // pages/component/unicloud-db-contacts/add
- // pages/component/unicloud-db-contacts/edit
- // pages/component/unicloud-db-contacts/detail
- // pages/component/mixin-datacom/mixin-datacom
- // "pages/API/get-battery-info/get-battery-info",
- // "pages/API/get-univerify-manager/get-univerify-manager",
- // "pages/component/sticky-header/sticky-header",
- // "pages/component/sticky-section/sticky-section",
- // pages/API/facial-recognition-verify/facial-recognition-verify
- // pages/API/get-file-system-manager/get-file-system-manager
- // "pages/API/install-apk/install-apk",
- // "pages/template/scroll-sticky/scroll-sticky",
- // "pages/API/exit/exit",
- // "pages/API/element-takesnapshot/element-takesnapshot",
- // "pages/API/get-app-authorize-setting/get-app-authorize-setting",
- // "pages/API/get-system-setting/get-system-setting",
- // "pages/API/save-image-to-photos-album/save-image-to-photos-album",
-
- // 仅 web
- // pages/template/browser-canvas/browser-canvas
- // pages/template/schema/schema
- // pages/template/share/share
-];
-const childToParentPagesMap = new Map([
- [
- "pages/API/load-font-face/load-font-face-child",
- "pages/API/load-font-face/load-font-face",
- ],
-]);
-
-const customNavigationPages = [
- "pages/template/navbar-lite/navbar-lite",
- "pages/template/pull-zoom-image/pull-zoom-image",
- "pages/template/scroll-fold-nav/scroll-fold-nav"
-]
-
-const needAdbScreenshotPages = [
- "pages/tabBar/component",
- "pages/tabBar/API",
- "pages/tabBar/CSS",
- "pages/tabBar/template",
- "pages/API/action-sheet/action-sheet",
- "pages/API/modal/modal",
- "pages/API/loading/loading",
- "pages/API/toast/toast",
- "pages/API/pull-down-refresh/pull-down-refresh",
-];
-
-const needAdbScreenshot = (url) => {
- return needAdbScreenshotPages.includes(url);
-};
-
-const PAGE_PATH =
- "/pages/webview-screenshot/webview-screenshot";
-
-describe("shot-compare", () => {
- let shouldCompareScreenShot = false
- const uniTestPlatformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase()
- if (uniTestPlatformInfo.startsWith('android') && !process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
- version = parseInt(uniTestPlatformInfo.split(" ")[1])
- shouldCompareScreenShot = version > 9
- }
-
- if(uniTestPlatformInfo.startsWith('ios') && !process.env.UNI_AUTOMATOR_APP_WEBVIEW) {
- shouldCompareScreenShot = true
- }
-
- if (!shouldCompareScreenShot) {
- it("other platform not support", async () => {
- expect(1).toBe(1);
- });
- return
- }
- let page = null;
- let pageIndex = 0;
- let baseSrc = "";
- beforeAll(async () => {
- // 获取导航栏+状态栏高度
- page = await program.reLaunch('/pages/API/get-window-info/get-window-info')
- await page.callMethod('getWindowInfo')
- // 获取设备像素比
- page = await program.reLaunch('/pages/API/get-device-info/get-device-info')
- await page.callMethod('getDeviceInfo')
-
- page = await program.reLaunch(PAGE_PATH);
- await page.waitFor(500);
-
- // set webview-screenshot page baseSrc
- baseSrc =
- process.env.UNI_WEB_SERVICE_URL ? `${process.env.UNI_WEB_SERVICE_URL}/#/` :
- "http://test.dcloud.io/unix_h5_build/98_dev_hello-uni-app-x/#/";
- page.setData({
- baseSrc,
- });
- });
-
- beforeEach(async () => {
- await page.waitFor(500);
- });
- afterEach(() => {
- pageIndex++;
- });
-
- test.each(pages)("%s", async () => {
- const isNeedAdbScreenshot = needAdbScreenshot(pages[pageIndex]);
- const isCustomNavigation = customNavigationPages.includes(pages[pageIndex]);
- const {
- statusBarHeight,
- devicePixelRatio
- } = await page.data();
- const screenshotParams = {
- fullPage: true,
- deviceShot: isNeedAdbScreenshot,
- // deviceShot 截图时跳过状态栏
- area: {
- x: 0,
- y: (statusBarHeight - 44) * devicePixelRatio,
- },
- }
- const screenshotPath = `__webview-shot__/${pages[pageIndex].replace(/\//g, "-")}`;
-
- // web in webview screenshot
- let startTime = Date.now();
- // 加载依赖页面
- if (childToParentPagesMap.get(pages[pageIndex])) {
- await page.setData({
- src: `${baseSrc}${childToParentPagesMap.get(pages[pageIndex])}`,
- isLoaded: false
- });
- await page.waitFor(async () => {
- const isLoaded = await page.data("isLoaded");
- return isLoaded || Date.now() - startTime > 10000;
- });
- await page.waitFor(200);
- }
- await page.setData({
- src: `${baseSrc}${pages[pageIndex]}`,
- isLoaded: false,
- needRemoveWebHead: !isNeedAdbScreenshot,
- });
-
- startTime = Date.now();
- await page.waitFor(async () => {
- const isLoaded = await page.data("isLoaded");
- return isLoaded || Date.now() - startTime > 3000;
- });
- await page.waitFor(1000);
- if (pages[pageIndex].includes("load-font-face")) {
- await page.waitFor(3000);
- }
-
- // web 端非 deviceShot 截图时设置 offsetY 移除导航栏
- const webSnapshot = await program.screenshot({
- ...screenshotParams,
- offsetY: `${isCustomNavigation ? 0 : statusBarHeight + 44}`
- });
- expect(webSnapshot).toSaveImageSnapshot({
- customSnapshotIdentifier() {
- return screenshotPath;
- },
- });
- });
-});
diff --git a/pages/webview-screenshot/webview-screenshot.uvue b/pages/webview-screenshot/webview-screenshot.uvue
deleted file mode 100644
index 8c8c3507..00000000
--- a/pages/webview-screenshot/webview-screenshot.uvue
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-
-
-
-
-
-
-
--
GitLab