移动測试技术保护源码!解码全球首款移动端白盒測试工具ThreadingTest (文章转自己主动点科技)
自从斯诺登曝光美监听丑闻事件之后,我国政府就将信息安全问题上升到了国家安全的高度。基于此。国内的一家创业公司推出了智能型Android真机白盒測试以及开发辅助类工具—ThreadingTest(下面简称TT)。
移动端首款白盒測试工具
白盒測试工具将被測应用看做一个打开的盒子,不同于黑盒測试,它接触的是源码,是相应用全部的逻辑路径进行的測试。
TT正是这样一款白盒測试工具。
但这类工具有一个让用户很操心的问题:核心程序的源代码被全然曝光,应用还有何安全性可言?TT使用离线检測的方式,在保护用户源代码的基础上,运用插装、第二代覆盖率等技术,为开发project师与測试project师提供一套高效可量化、可视化的交流工具。
“因为白盒測试对于底层的编译技术要求极高,传统的国外白盒測试巨头还没有针对移动应用进行高速的技术更新。”TT创始人赵明告诉动点科技记者,作为全球首款移动端白盒測试工具,TT意在为开发人员与測试者之间搭建一座沟通的桥梁。
数据的量化、可视化呈现
黑盒測试工具与传统的白盒測试工具相比,除大大减少了成本外,还能最直观的反映出软件存在的问题。但它的劣势也较为明显。比方,难以找出某些特殊类型的错误。当软件被改动后,必须又一次检測。盲目性较为严重。
针对开发人员既想相应用底层代码做全方位的检測,又想在不影响软件运行速度的前提下减少成本的想法,TT交出了自己的答卷。測试人员运行用例的过程中,TT会自己主动化记录測试人员操作的整个过程。程序内部的每个路径、分支的运行情况都将被精准记录,开发人员拿到系统出具的详细报告,就可以实现问题的高速定位。
“通过TT。測试人员能够非常明白的看到測试应用的内部逻辑的覆盖情况。随后。測试人员能够通过这些量化、可视化的数据,与开发者进行高效沟通。
”赵明觉得,开发者有了数据,将更有兴趣和压力协同測试project师为关键模块100%覆盖率努力。
TT能够为每一个版本号的变更自己主动化记录变化信息。
基于独创的智能双向追溯技术。它甚至能够直接告诉測试人员,这些变更应该会影响到的測试用例。
将白盒測试发展成为測试的主流技术
TT測试的简便和结果的直观。能够帮助公司提升效率,使其将很多其它的经历放在应用创新上。“移动測试以及嵌入式測试事实上对质量要求非常高。
比如医疗领域和智能穿戴设备。它的高质量甚至不亚于航天航空的要求。即使是传统的APP,因为同质化竞争激烈,以及用户体验的高要求。使得移动开发人员以及測试人员会有非常大的动力去尝试用白盒測试技术来相应用的质量负责。
”赵明对动点科技记者说。TT的目标是将白盒測试发展成为測试的主流技术,而不不过黑盒这样的低技术含量的測试。
当进行了白盒測试后。应用怎样平滑的与黑盒測试工具对接?TT眼下的计划,是为其它的黑盒測试工具预留接口,将黑盒、白盒測试工具进行集成。
未来,TT将成为一个开放式平台。并接受第三方开发的接入。
国内外的Crittercism,Soasta,Testin等移动測试工具均已获得融资,但它们眼下均处在黑盒測试的阶段。作为首款移动端的白盒測试工具。在推向市场前,它面临的最大问题也许源于其自身:到底该怎样向用户解释移动白盒測试工具这一概念呢?
对移动端白盒測试技术或者性能測试感兴趣,请增加群符号运行 339834199
软件试用申请官网:www.threadingtest.com
移动測试技术保护源码!解码全球首款移动端白盒測试工具ThreadingTest (文章转自己主动点科技)的更多相关文章
- 64位下Hook NtOpenProcess的实现进程保护 + 源码 (升级篇 )
64位下Hook NtOpenProcess的实现进程保护 + 源码 (升级篇 ) [PS: 如果在64位系统下,出现调用测试demo,返回false的情况下,请修改Hook Dll的代码] glhH ...
- 如何在Exe和BPL插件中实现公共变量共享及窗口溶入技术Demo源码
如何在Exe和BPL插件中实现公共变量共享及窗口溶入技术Demo源码 1.Delphi编译方式介绍: 当我们在开发一个常规应用程序时,Delphi可以让我们用两种方式使用VCL,一种是把VCL中的申明 ...
- Java开源生鲜电商平台-系统架构与技术选型(源码可下载)
Java开源生鲜电商平台-系统架构与技术选型(源码可下载) 1. 硬件环境 公司服务器 2. 软件环境 2.1 操作系统 Linux CentOS 6.8系列 2.2 反向代理/web服务器 ...
- 点菜网---Java开源生鲜电商平台-技术选型(源码可下载)
点菜网---Java开源生鲜电商平台-技术选型(源码可下载) 1.内容简介 点菜网目前选用的是最流行的微服务架构模式,采用前后端分离的开发模式,具备高可用,高负载,支持千万级别的数据量的请求. 2. ...
- 网页不让用户复制方法总汇,设置html禁止选择,保护源码,js禁止复制文字
这篇文章主要讲解:右键复制失效方法.菜单"文件"-"另存为"失效方法.防止查看源代码进行复制的方法.防止页面缓存的方法.来达到一定的代码保护效果 右键复制失效方 ...
- Eureka源码探索(一)-客户端服务端的启动和负载均衡
1. Eureka源码探索(一)-客户端服务端的启动和负载均衡 1.1. 服务端 1.1.1. 找起始点 目前唯一知道的,就是启动Eureka服务需要添加注解@EnableEurekaServer,但 ...
- Zookeeper 源码(四)Zookeeper 服务端源码
Zookeeper 源码(四)Zookeeper 服务端源码 Zookeeper 服务端的启动入口为 QuorumPeerMain public static void main(String[] a ...
- elasticsearch源码分析之search模块(server端)
elasticsearch源码分析之search模块(server端) 继续接着上一篇的来说啊,当client端将search的请求发送到某一个node之后,剩下的事情就是server端来处理了,具体 ...
- elasticsearch源码分析之search模块(client端)
elasticsearch源码分析之search模块(client端) 注意,我这里所说的都是通过rest api来做的搜索,所以对于接收到请求的节点,我姑且将之称之为client端,其主要的功能我们 ...
随机推荐
- ubuntu13.10 登陆后黑屏,没有菜单栏,可以启动termina,怎么解决?
最近在学习openGL,自己的电脑是intel集显加nvidia GT630M,本来想应该可以支持到opengl4以上的,可是发现nvidia的显卡由于驱动问题,好像一直没有用到,所以只支持了open ...
- DEEP LEARNING IS THE FUTURE: Q&A WITH NAVEEN RAO OF NERVANA SYSTEMS
DEEP LEARNING IS THE FUTURE: Q&A WITH NAVEEN RAO OF NERVANA SYSTEMS CME Group was one of several ...
- 分析ECMall的注册与登录机制
ecmall的注册流程index.php?app=member&act=register. 首先app是member,act是register方法. index.php中.通过ecmall的s ...
- 不可忽视的 .NET 应用5大性能问题
[编者按]本文系国内 ITOM 管理平台 OneAPM 翻译自 Steven Haines 的文章.Steven Haines 是 Pisksel 技术架构师,目前在奥兰多迪士尼乐园工作.他是在线教育 ...
- 最简单的CRC32源码---逐BIT法
CRC其实也就那么回事,却在网上被传得神乎其神.单纯从使用角度来说,只需要搞明白模二除法,再理解一些偷懒优化的技巧,就能写出自己的CRC校验程序. 下面的代码完全是模拟手算过程的,效率是最低的,发出来 ...
- 好看的UI设计网站 www.ui.cn 和 插画网站 www.pixiv.net 千图网,界面很不错~
http://www.ui.cn/?t=share#project http://www.pixiv.net/ http://www.flaticon.com/ www.58pic.com 那张 给人 ...
- 公告: 新博客已经迁移到 www.root.run
root.run www.root.run www.root.run/sitemap.html www.root.run/sitemap.xml
- 【简译】Windows 线程基础
翻译一篇关于windows线程的文章,原文在此.第一次翻译,如有错误请多指教 =========================================华丽的分割线============== ...
- 23个移动app界面上的旋钮和刻度盘设计示例
摘要: 从最初进入电子设备领域,旋钮和刻度盘的由最初的功能性设计转变为时尚的外观设计元素,比如在移动app中.这种转变并意外,旋钮和刻度盘不需要占用移动设备的太多空间,并可以简单地为用户提供一些列 ...
- Wide character in print at a2.pl line 返回json 需要encode_utf8
centos6.5:/root/test#cat a2.pl use Net::SMTP; use LWP::UserAgent; use HTTP::Cookies; use HTTP::Heade ...