get-video-info.test.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. const platformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase()
  2. const isIOS = platformInfo.startsWith('ios')
  3. const isWeb = platformInfo.startsWith('web')
  4. const isMP = platformInfo.startsWith('mp')
  5. const isAndroid = platformInfo.startsWith('android')
  6. describe('API-getVideoInfo', () => {
  7. if (isWeb || isMP || isIOS) {
  8. // web平台在自动化测试场景下API调用失败
  9. it('pass', async () => {
  10. expect(1).toBe(1);
  11. });
  12. return;
  13. }
  14. let page;
  15. beforeAll(async () => {
  16. page = await program.reLaunch('/pages/API/get-video-info/get-video-info');
  17. await page.waitFor(500);
  18. });
  19. it('test getVideoInfo', async () => {
  20. await page.callMethod('testGetVideoInfo');
  21. await page.waitFor(1000);
  22. if (isWeb) {
  23. expect(await page.data('videoInfoForTest')).toEqual({
  24. duration: 10,
  25. size: 211,
  26. width: 1280,
  27. height: 720
  28. });
  29. return;
  30. }
  31. const infos = process.env.uniTestPlatformInfo.split(' ');
  32. const version = parseInt(infos[infos.length - 1]);
  33. if (isAndroid && version > 5) {
  34. var videoInfo = await page.data('videoInfoForTest')
  35. expect(videoInfo.orientation).toEqual("up")
  36. expect(videoInfo.type).toEqual("video/mp4")
  37. expect(videoInfo.duration).toEqual(10)
  38. expect(videoInfo.size).toEqual(183.19)
  39. expect(videoInfo.width).toEqual(1280)
  40. expect(videoInfo.height).toEqual(720)
  41. expect(videoInfo.fps == 30 || videoInfo.fps == 31).toEqual(true)
  42. expect(videoInfo.bitrate).toEqual(149)
  43. }
  44. });
  45. });