OPENCV----在APP性能测试中的应用(一)

应用项目:  APP的性能测试

应用场景:  APP启动速度  视频开播速度 加载速度  等~~

缘来:  基于APP日志UiAutomator的测试方案,测试结果不能直白且精确的反应,用户的体验

改进: 通过手工操作或自动操作的方式录取视频,然后用图像处理的方式,来获取测试结果

架构流程图:

主要的核心点:

  视频分帧: 基于ffmpeg库 进行分帧

样例: ffmpeg  -hide_banner -i video.mp4 -an -vsync 0 .\frames\%06d.png > null

图片对比: 基于opencv库进行图片对比

核心代码:

int diff_count(const Mat& lmat, const Mat& rmat, int threshold) {
    int cols = lmat.cols;
    int rows = lmat.rows;
    int esize = (int)lmat.elemSize();

    if ( rmat.cols != cols || rmat.rows != rows || (int)rmat.elemSize() != esize ) {
        return -1;
    }

    int total = rows * cols;
    int dcount = 0;

    for ( int i = 0; i < total; i++ ) {
        uchar* lptr = lmat.data + i*esize;
        uchar* rptr = rmat.data + i*esize;

        int sum = 0;
        for ( int j = 0; j < esize; j++ ) {
            uchar lu = lptr[j];
            uchar ru = rptr[j];

            int tmp = lu > ru ? lu - ru : ru - lu;
            sum += tmp*tmp;
        }

        if ( sqrt(sum)/esize >= threshold ) {
            dcount++;
        }
    }

    return dcount;
}
时间: 2024-10-19 16:20:22

OPENCV----在APP性能测试中的应用(一)的相关文章

Emmagee app性能测试工具使用教程(转)

Emmagee app性能测试工具使用教程 by:授客 QQ:1033553122 简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控的频率以及性能的实时显示,并最终生成一份性能统计文件. 实现原理 1.监控应用CPU原理 Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息放在/proc/stat

关于APP性能测试脚本录制的四种方法

大家好,近段时间很多人问我关于APP性能测试方面问题.一直是打算发表的,由于多方面的因素拖到现在,有次公司让我给客户讲解APP性能测试,回来后就一直觉得有必要写下.好了,不多废话. 目前版本LoadRunner12有图下4种方式生成脚本. Recording and Analyze Traffic Analyze Traffic Record Emulator Proxy Recording 第一种:Record and Analyze Traffic 在电脑上设置wifi热点,需将网络共享到该

android app性能测试工具GT源码获取以及部署

GT是TMQ(腾讯移动品质中心)研发的一款app性能测试工具.官方地址:http://gt.qq.com/index.htmlgithub地址:https://github.com/Tencent/GT运行工具:eclipse ,我用的专门集成android环境的版本如下图eclipse下载地址:链接: https://pan.baidu.com/s/1csbzl0 密码: 3633 第一步 去github clone代码在cmd命令行中进入到事先创建好的项目存放文件夹下执行 git clone

APP性能测试开始之旅

你是不是也跟我一样在工作中存在着同样的问题,APP版本在上线后不断的会有市场人员或者用户反馈页面加载慢,进入页面loading很久(实际我们设置的加载超时是15秒,15秒内加载出内容则显示,15秒外未加载出内容则显示“网络较差,请稍后再试”等,给到用户再次尝试的机会),性能较差是测试一直面临且着手需要去解决的事项,针对页面加载显示较慢的问题,我们需分析出现此问题的原因是什么? 一.针对如上的问题,入口考虑点分为: (1)APP的性能,页面的加载 (2)网络较差情况下的处理机制 二.目前在性能优化

APP性能测试工具GT的使用总结:app内存测试

APP性能测试工具GT的使用总结:app内存测试 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU.内存.流量.电量.帧率/流畅度等等).开发日志的查看.Crash日志查看.网络数据包的抓取.APP内部参数的调试.真机代码耗时统计等.如果您觉得GT提供的功能还不够满足您的需要,您还可以利用GT提供的基础API自行开发有

在Web.config或App.config中的添加自定义配置

.Net中的System.Configuration命名空间为我们在web.config或者app.config中自定义配置提供了完美的支持.最近看到一些项目中还在自定义xml文件做程序的配置,所以忍不住写一篇用系统自定义配置的随笔了. 如果你已经对自定义配置了如指掌,请忽略这篇文章.? 言归正传,我们先来看一个最简单的自定义配置 <?xml version="1.0" encoding="utf-8" ?> <configuration>

C#读写app.config中的数据

C#读写app.config中的数据 读语句: String str = ConfigurationManager.AppSettings["DemoKey"]; 写语句: Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); cfa.AppSettings.Settings["DemoKey"].Value = "DemoVa

Android Design 1: Back键和Up键在App导航中的表现

一,概念 1, Back键一直存在android系统中 1-1 任何页面下的返回 1-2 Floating window 1-3 Contexual Action bar/highlight select 1-4 Keyboard 2, Up键是随Android Design出来的. 2-1 android Design 定义的parent container 2-2 app的主界面是不存在Up键的 二,情景分析 1, App内部 1-1 沿逐级深入路径 Back:按照activity在栈中的顺

笨鸟先飞随笔:ADO.NET中有关C#从App.config中使用数据库连接字符串的方法

应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的.它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序.在App.config文件中,根节点是configuration,在根节点下可以创建连接字符串的节点,也就是connectionStrings. 一.关于App.config的配置方法 1.在项目中添加一个应用程序配置文件(App.config),在根节点下添加连接字符串的节点<connectionStrings></connectio

【转】移动App测试中的最佳做法

一说起软件测试,测试员想到肯定是去检查文件,功能,API,性能并确定软件是否安全,以及关于软件特定部分的其他事项.但是对于移动测试,测试员不得不基于用户移动使用模式考虑移动相关的功能. 本文是基于我的工作经验而写的.作为一名敏捷软件开发团队的软件质量保证经理,我一心投入iPhone,Android,WindowsPhone7的移动apps和移动webapps.在XING移动团队的日常工作以及与其他移动测试专家交流的过程中,我深刻了解了移动测试工作的困难.渐渐地,我明确了什么是帮助改进同事们和我的