From 45e6b45d5a08012bd26a3d55658770e302e1ca74 Mon Sep 17 00:00:00 2001 From: yinjiacheng Date: Thu, 6 Jun 2024 19:30:15 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0media=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=8C=96=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../API/compress-image/compress-image.test.js | 13 ++++++---- pages/API/compress-image/compress-image.uvue | 11 +++++--- .../API/compress-video/compress-video.test.js | 13 ++++++---- pages/API/compress-video/compress-video.uvue | 25 +++++++++++++------ .../API/get-image-info/get-image-info.test.js | 16 +++++++----- pages/API/get-image-info/get-image-info.uvue | 2 +- .../API/get-video-info/get-video-info.test.js | 11 +++++--- .../save-image-to-photos-album.test.js | 11 +++++--- .../save-video-to-photos-album.test.js | 11 +++++--- 9 files changed, 72 insertions(+), 41 deletions(-) diff --git a/pages/API/compress-image/compress-image.test.js b/pages/API/compress-image/compress-image.test.js index 57929611..e647dd4c 100644 --- a/pages/API/compress-image/compress-image.test.js +++ b/pages/API/compress-image/compress-image.test.js @@ -1,5 +1,12 @@ // uni-app自动化测试教程: https://uniapp.dcloud.net.cn/worktile/auto/hbuilderx-extension/ describe('API-compressImage', () => { + if (process.env.uniTestPlatformInfo.startsWith('web') || process.env.uniTestPlatformInfo.startsWith('ios')) { + it('pass', async () => { + expect(1).toBe(1); + }); + return; + } + let page; beforeAll(async () => { page = await program.reLaunch('/pages/API/compress-image/compress-image'); @@ -7,16 +14,12 @@ describe('API-compressImage', () => { }); it('test compressImage', async () => { - if (process.env.uniTestPlatformInfo.startsWith('web') || process.env.uniTestPlatformInfo.startsWith('ios')) { - expect(1).toBe(1); - return; - } await page.callMethod('testCompressImage'); await page.waitFor(1000); expect(await page.data('imageInfoForTest')).toEqual({ width: 100, height: 100, - size: 2 + isSizeReduce: true }); }); }); diff --git a/pages/API/compress-image/compress-image.uvue b/pages/API/compress-image/compress-image.uvue index 709d4065..5cb05530 100644 --- a/pages/API/compress-image/compress-image.uvue +++ b/pages/API/compress-image/compress-image.uvue @@ -54,7 +54,8 @@ height: "auto", rotate: 0, // 自动化测试 - imageInfoForTest: null + imageInfoForTest: null, + imageSrcForTest: '/static/test-image/logo.png' } }, methods: { @@ -147,7 +148,7 @@ }, testCompressImage() { uni.compressImage({ - src: '/static/test-image/logo.png', + src: this.imageSrcForTest, quality: 50, compressedWidth: 100, compressedHeight: 100, @@ -155,13 +156,15 @@ uni.getImageInfo({ src: res.tempFilePath, success: (_res) => { + let beforeCompressSize: number, afterComoressSize: number; // #ifdef APP-ANDROID - const size = new FileInputStream(res.tempFilePath.substring("file://".length)).available() / 1024; + beforeCompressSize = new FileInputStream(UTSAndroid.convert2AbsFullPath(this.imageSrcForTest)).available(); + afterComoressSize = new FileInputStream(res.tempFilePath.substring("file://".length)).available(); // #endif this.imageInfoForTest = { "width": _res.width, "height": _res.height, - "size": size.toInt() + "isSizeReduce": afterComoressSize < beforeCompressSize }; } }); diff --git a/pages/API/compress-video/compress-video.test.js b/pages/API/compress-video/compress-video.test.js index f6999b93..2afb2625 100644 --- a/pages/API/compress-video/compress-video.test.js +++ b/pages/API/compress-video/compress-video.test.js @@ -1,5 +1,12 @@ // uni-app自动化测试教程: https://uniapp.dcloud.net.cn/worktile/auto/hbuilderx-extension/ describe('API-compressVideo', () => { + if (process.env.uniTestPlatformInfo.startsWith('web') || process.env.uniTestPlatformInfo.startsWith('ios')) { + it('pass', async () => { + expect(1).toBe(1); + }); + return; + } + let page; beforeAll(async () => { page = await program.reLaunch('/pages/API/compress-video/compress-video'); @@ -7,16 +14,12 @@ describe('API-compressVideo', () => { }); it('test compressVideo', async () => { - if (process.env.uniTestPlatformInfo.startsWith('web') || process.env.uniTestPlatformInfo.startsWith('ios')) { - expect(1).toBe(1); - return; - } await page.callMethod('testCompressVideo'); await page.waitFor(3000); expect(await page.data('videoInfoForTest')).toEqual({ width: 640, height: 360, - size: 265 + // isSizeReduce: true }); }); }); diff --git a/pages/API/compress-video/compress-video.uvue b/pages/API/compress-video/compress-video.uvue index abbb1641..f4ccd2c8 100644 --- a/pages/API/compress-video/compress-video.uvue +++ b/pages/API/compress-video/compress-video.uvue @@ -48,7 +48,8 @@ qualityItemTypes: [{ "value": 0, "name": "low(低)" }, { "value": 1, "name": "medium(中)" }, { "value": 2, "name": "high(高)" }] as ItemType[], qualityItems: ["low", "medium", "high"], // 自动化测试 - videoInfoForTest: null + videoInfoForTest: null, + videoSrcForTest: '/static/test-video/10second-demo.mp4' } }, methods: { @@ -115,18 +116,26 @@ this.resolution = event.detail.value; }, testCompressVideo() { + let beforeCompressSize: number, afterComoressSize: number; uni.compressVideo({ - src: '/static/test-video/10second-demo.mp4', + src: this.videoSrcForTest, quality: 'medium', success: (res) => { uni.getVideoInfo({ - src: res.tempFilePath, + src: this.videoSrcForTest, success: (_res) => { - this.videoInfoForTest = { - "width": _res.width, - "height": _res.height, - "size": res.size.toInt() - }; + beforeCompressSize = _res.size.toInt(); + uni.getVideoInfo({ + src: res.tempFilePath, + success: (__res) => { + afterComoressSize = __res.size.toInt(); + this.videoInfoForTest = { + "width": __res.width, + "height": __res.height, + // "isSizeReduce": afterComoressSize < beforeCompressSize + }; + } + }); } }); }, diff --git a/pages/API/get-image-info/get-image-info.test.js b/pages/API/get-image-info/get-image-info.test.js index 4172ebbf..ed088e2a 100644 --- a/pages/API/get-image-info/get-image-info.test.js +++ b/pages/API/get-image-info/get-image-info.test.js @@ -1,5 +1,12 @@ // uni-app自动化测试教程: https://uniapp.dcloud.net.cn/worktile/auto/hbuilderx-extension/ describe('API-getImageInfo', () => { + if (process.env.uniTestPlatformInfo.startsWith('ios')) { + it('pass', async () => { + expect(1).toBe(1); + }); + return; + } + let page; beforeAll(async () => { page = await program.reLaunch('/pages/API/get-image-info/get-image-info'); @@ -7,22 +14,19 @@ describe('API-getImageInfo', () => { }); it('test getImageInfo', async () => { - if (process.env.uniTestPlatformInfo.startsWith('ios')) { - expect(1).toBe(1); - return; - } await page.waitFor(500); if (process.env.uniTestPlatformInfo.startsWith('web')) { expect(await page.data('imageInfoForTest')).toEqual({ width: 192, - height: 192 + height: 192, + path: './static/test-image/logo.png' }); return; } expect(await page.data('imageInfoForTest')).toEqual({ width: 192, height: 192, - path: 'file:///storage/emulated/0/Android/data/io.dcloud.uniappx/apps/__UNI__HelloUniAppX/www/static/test-image/logo.png', + path: '/static/test-image/logo.png', orientation: 'up', type: 'png' }); diff --git a/pages/API/get-image-info/get-image-info.uvue b/pages/API/get-image-info/get-image-info.uvue index 62306a76..c8fac7b6 100644 --- a/pages/API/get-image-info/get-image-info.uvue +++ b/pages/API/get-image-info/get-image-info.uvue @@ -76,7 +76,7 @@ this.imageInfoForTest = { "width": res.width, "height": res.height, - "path": res.path, + "path": res.path.slice(res.path.indexOf('/static')), "orientation": res.orientation, "type": res.type }; diff --git a/pages/API/get-video-info/get-video-info.test.js b/pages/API/get-video-info/get-video-info.test.js index b0272fe5..c9d4fc25 100644 --- a/pages/API/get-video-info/get-video-info.test.js +++ b/pages/API/get-video-info/get-video-info.test.js @@ -1,5 +1,12 @@ // uni-app自动化测试教程: https://uniapp.dcloud.net.cn/worktile/auto/hbuilderx-extension/ describe('API-getVideoInfo', () => { + if (process.env.uniTestPlatformInfo.startsWith('ios')) { + it('pass', async () => { + expect(1).toBe(1); + }); + return; + } + let page; beforeAll(async () => { page = await program.reLaunch('/pages/API/get-video-info/get-video-info'); @@ -7,10 +14,6 @@ describe('API-getVideoInfo', () => { }); it('test getVideoInfo', async () => { - if (process.env.uniTestPlatformInfo.startsWith('ios')) { - expect(1).toBe(1); - return; - } await page.callMethod('testGetVideoInfo'); await page.waitFor(1000); if (process.env.uniTestPlatformInfo.startsWith('web')) { diff --git a/pages/API/save-image-to-photos-album/save-image-to-photos-album.test.js b/pages/API/save-image-to-photos-album/save-image-to-photos-album.test.js index a08d657f..4cd0748b 100644 --- a/pages/API/save-image-to-photos-album/save-image-to-photos-album.test.js +++ b/pages/API/save-image-to-photos-album/save-image-to-photos-album.test.js @@ -1,5 +1,12 @@ // uni-app自动化测试教程: https://uniapp.dcloud.net.cn/worktile/auto/hbuilderx-extension/ describe('API-saveImageToPhotosAlbum', () => { + if (process.env.uniTestPlatformInfo.startsWith('web') || process.env.uniTestPlatformInfo.startsWith('ios')) { + it('pass', async () => { + expect(1).toBe(1); + }); + return; + } + let page; beforeAll(async () => { page = await program.reLaunch('/pages/API/save-image-to-photos-album/save-image-to-photos-album'); @@ -7,10 +14,6 @@ describe('API-saveImageToPhotosAlbum', () => { }); it('test saveImageToPhotosAlbum', async () => { - if (process.env.uniTestPlatformInfo.startsWith('web')) { - expect(1).toBe(1); - return; - } if (process.env.uniTestPlatformInfo.startsWith('android')) { await program.adbCommand( 'pm grant io.dcloud.uniappx android.permission.WRITE_EXTERNAL_STORAGE'); diff --git a/pages/API/save-video-to-photos-album/save-video-to-photos-album.test.js b/pages/API/save-video-to-photos-album/save-video-to-photos-album.test.js index 8b718dfe..a0be43e5 100644 --- a/pages/API/save-video-to-photos-album/save-video-to-photos-album.test.js +++ b/pages/API/save-video-to-photos-album/save-video-to-photos-album.test.js @@ -1,5 +1,12 @@ // uni-app自动化测试教程: https://uniapp.dcloud.net.cn/worktile/auto/hbuilderx-extension/ describe('API-saveVideoToPhotosAlbum', () => { + if (process.env.uniTestPlatformInfo.startsWith('web') || process.env.uniTestPlatformInfo.startsWith('ios')) { + it('pass', async () => { + expect(1).toBe(1); + }); + return; + } + let page; beforeAll(async () => { page = await program.reLaunch('/pages/API/save-video-to-photos-album/save-video-to-photos-album'); @@ -7,10 +14,6 @@ describe('API-saveVideoToPhotosAlbum', () => { }); it('test saveVideoToPhotosAlbum', async () => { - if (process.env.uniTestPlatformInfo.startsWith('web')) { - expect(1).toBe(1); - return; - } if (process.env.uniTestPlatformInfo.startsWith('android')) { await program.adbCommand( 'pm grant io.dcloud.uniappx android.permission.WRITE_EXTERNAL_STORAGE'); -- GitLab