白盒测试
文章平均质量分 76
搜狗测试专栏
搜狗·测试 伴你一起前行!
展开
-
小白的白盒测试之路——用例设计篇
提到白盒测试的用例,首先想到的是接口测试用例和逻辑覆盖用例,但小白最近遇到了这样的一个问题:问题:黑盒白盒同时进入测试,黑盒测平台,白盒测核心,项目上线时间为平台测试结束时间,开始迫于压力将核心的测试完成时间压缩到上线前,但后期时间紧张,测试混乱、不全面,上线问题较多,压力山大。面对这样的问题大家怎么考虑的呢,我认为这个问题的直接原因有两个:原创 2015-04-23 00:27:08 · 1039 阅读 · 0 评论 -
愚人节篇:搜狗两枚测试开发小屌的对话
首先声明,本故事纯属虚构,不,是半虚构,如有雷同纯属巧合~本故事由搜狗测试、搜狗QA、搜狗TEST冠名播出万万没想到,duang~~搜狗测试公众号出现了,duang~~它还成长的如此迅速,欢迎广大测友多多传播、尽情传播、传出新体验故事发生在搜狗测试团队的两个屌丝身上,愚人节快到了,来看看他们在唠什么。。。。。。提示:他们聊的很兴奋,时间有点长,需要一点耐心往原创 2015-04-23 03:12:27 · 796 阅读 · 0 评论 -
搜索算法在搜狗浏览器单元测试中的应用
背景简介在做单元测试时,一般都要求对被测程序的结构特性做到一定程度的覆盖,并以软件中的某类成分是否都已经得到测试为准则来判断软件测试的充分性,也称为基于覆盖的测试技术。例如,语句覆盖是一种逻辑覆盖准则,它要求选择测试数据使得程序中所有语句都得到运行,并根据是否所有语句都得到了运行来决定测试是否可以终止。到目前为止,已提出了几十种覆盖技术。在这些覆盖的技术中,覆盖率最高的就是路径覆盖原创 2015-04-23 00:45:49 · 827 阅读 · 0 评论 -
说说Android通知那些事儿
对于Android系统来说,为应用程序提供了一个功能,就是Android通知功能。其基本表现是在通知栏弹出一个提醒,并在任务栏处给出提醒。常见的Android通知比如新闻推送热点新闻,输入法推送热词,视频应用推送剧集的更新,购物类软件推送购物信息或者打折信息等。对于Android应用程序通知,其主要目的有两种,一种是给用户提醒,比如当连接USB数据线的时候会在通知栏给出提醒;另一种原创 2015-04-23 01:06:47 · 523 阅读 · 0 评论 -
编写单元测试的10个Reason
大部分程序猿(媛)都不会对自己的代码编写单元测试,原因无非是:“我不知道如何去编写测试代码…”“编写测试代码对我来说太难了!”“我可没时间做这个!”“测试可不是我的工作哦~”“我的程序很简单,不需要进行单元测试吧…”殊不知,编写单元测试是提高软件质量的非常有效的武器,毕竟对于我们编写的代码来说,只有自己才是原创 2015-04-23 01:11:39 · 382 阅读 · 0 评论 -
浅谈单元测试中Mock的使用
何为mock?mock测试就是在测试过程中中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。mock对象mock对象就是真实对象在测试期间的代替品。mock对象使用场景真实对象具有不可确定的行为,有时真实对象的某些行为很难被触发。mock测试的关键步骤在测试代码中实现原创 2015-04-23 01:30:02 · 2607 阅读 · 0 评论 -
白盒测试——私有接口测试
起因:白盒测试过程中,经常会遇到被测接口是私有接口,不能通过直接访问接口进行测试,那么对于这样的接口我们怎么进行路径覆盖呢?想到的办法:1.通过访问上层接口构造相应数据来测试私有接口;2.通过走查私有接口,设计用例通过黑盒的方式覆盖代码逻辑;3.在私有接口中期望关注的位置上设置断点,构造相应数据,观察运行过程中断点位置的数据变化是否符合预期;原创 2015-04-23 01:57:15 · 1650 阅读 · 0 评论 -
搜狗输入法白盒测试的“暴力与美学”
背景:在输入法白盒测试中我们使用过单元测试、接口测试、集成测试等方法。通过在输入法项目中使用这些方法可以保证我们的输入法代码底层函数的功能正确性。但是经过一些线上问题的分析我们发现还有一些问题是单元测试等无法发现的或者含义发现的,而往往这些问会造成输入法崩溃或者停止响应。提前发现和解决这些问题就成为我们保证输入法质量、提升用户口碑的关键。哪些问题是单元测试或者其他白盒测试方法难以发原创 2015-04-23 02:06:12 · 653 阅读 · 0 评论 -
小白的白盒测试之路——需求了解篇
小白的白盒测试之路需求了解篇接到一个功能的测试,第一步就是了解整个需求,能否将整个需求了解透彻直接关系到后续测试工作开展和测试质量;如何在做好需求了解呢?下面我们就分析一下。1. 一个版本开始了,产品找测试和开发讲需求,听听都是什么需求。遇到问题:对于测试而言主要关注这个需求要做一件什么事,要怎么做,实现的效果是什么样的,解决了什么样的问题,原创 2015-04-23 02:48:46 · 1526 阅读 · 0 评论 -
编程之各种奇技淫巧
当众生踏上这条路,眼前是一片迷雾,只因为Bug太多,各种奇技淫巧小W早已见怪不怪,这里就给大家分享下。判断一个数n是否是2的幂(n为正整数)最朴素的想法就是不断取余和除2,看看能不能到1:高级一点的,编程之美上提到过一种位运算的解决办法:奇技淫巧:什么?这样也可以原创 2015-04-23 03:16:35 · 1376 阅读 · 0 评论 -
小N的白盒测试之路 — objective-c私有成员和私有方法的测试
作为一名初入ios白盒测试的菜鸟,小N遇到的第一个问题就是:如何测试类的私有成员和私有方法呢?对于其他编程语言来说,这个问题其实在往期的文章中已经有小伙伴给大家分享过了,比如c++中可以通过友元类啊,java中可以通过反射机制啊等等。那么在Objective-c中应该怎样解决这个问题呢?小N最初对这个问题也是百思不得其解,后来通过请教各路大神(其实很简单的= =),终于研究原创 2015-04-23 03:42:52 · 1023 阅读 · 0 评论 -
搜狗浏览器的自动化与单元测试
搜狗浏览器自动化测试平台演示,请观看~搜狗浏览器如何对扩展API进行单元测试,请观看~原文链接如需转载该篇文章,请注明来自“搜狗测试”原创 2015-04-23 02:38:26 · 831 阅读 · 0 评论 -
iOS输入法—基于XCTest框架的异步测试
苹果今年在Xcode 6中添加了XCTest框架此前漏掉的几项功能,这当中的异步测试功能大大方便了我们的测试工作。如果我们的测试项目要执行一个异步任务,它可能会跑在其它的线程里,也可能会跑在主线程的RunLoop里,在这种时候我们应该如何去进行测试呢?来看一个非常简单的例子!现在有一个web请求的功能需要测试。我们会开始web请求然后进入阻塞,接下来在程序完成的代码块中做一个测试断原创 2015-04-23 03:04:16 · 688 阅读 · 0 评论 -
小W写脚本的之2B与牛B的区别
头:小W我要写一个自动化脚本来模拟发送网络请求,其中网络请求中有下面几个因子,你给我用全排列的方式生成吧~(示例)hidmd564位/32位123abc32456cde64小W:没问题,分分钟搞定。....一原创 2015-04-23 02:17:53 · 639 阅读 · 0 评论 -
为了什么,我们一定要敏捷测试?
提起敏捷软件测试必须要提及到敏捷软件开发,敏捷软件开发是一种从1990年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。敏捷开发的最大特点是高度迭代,有周期性,并且能够及时、持续地响应客户的频繁反馈。为了适应敏捷开发的特点,敏捷测试应运而生。作为一个传统的互联网公司,我们接触敏捷这个概念还是相对较晚的。但是通过对敏捷概念和敏捷宣言的理解,发原创 2015-04-23 00:58:03 · 798 阅读 · 0 评论 -
一个白盒测试菜鸟的心路历程
人呐就都不知道,自己不可以预料。一个人的命运啊,当然要靠自己奋斗,但是也要考虑到历史的行程。我绝对不知道,我作为一个普通挨踢民工,怎么就上公众号发文章了呢。所以组委会负责的同学同我说“组委会都决定了,今天就你来发文章”,后来我念了两句诗,叫“苟利搜狗生死以,岂因祸福避趋之。” 所以今天我就发篇文章讲讲最近做白盒测试感受。问题一:辛辛苦苦做完一个模块的单元原创 2015-04-23 01:08:29 · 4985 阅读 · 0 评论 -
“奇葩”的代码注释,你遇见过吗?
大家在做白盒测试的过程中代码走查那是必须的,在看到满屏都是复杂的逻辑性的代码,多么期望下一行就是注释,把前面“乱七八糟”的代码给我们解释一下。但是调皮的程序猿经常会给我们开各种各样的玩笑,以下这些“奇葩”的代码注释你有遇见过么?1.2.3.4.5.6.7.8.原创 2015-04-23 01:17:52 · 786 阅读 · 0 评论 -
“钩子”技术在白盒测试中的应用
“钩子”技术在白盒测试中的应用一、什么是hook技术?提到钩子技术相信大家多少不会感觉陌生,Windows操作系统是建立在事件驱动机制之上的,系统各个部分之间的沟通也都是通过消息的相互传递而实现的。但在通常情况下,应用程序只能处理来自进程内部的消息或是从其他进程发过来的消息,如果需要对在进程外传递的消息进行拦截处理就必须采取一种被称为HOOK(钩子)的技术。HOOK本身是Windo原创 2015-04-23 01:38:26 · 627 阅读 · 0 评论 -
搜狗浏览器单元测试流程规划
一、模块选取由于浏览器代码涉及到UI相关的比较多,在我们的评估之下认为这些模块不值得去做单元测试,因为涉及UI相关的单元测试不好写且相对黑盒测试来说性价比低。所以目前我们选取的都是些底层逻辑模块,或者数据库相关的进行单元测试。二、单元测试用例构造与编写先说下目前的情况,目前我们单元测试框架大多数有研发部原创 2015-04-23 01:43:17 · 797 阅读 · 0 评论 -
KIF框架在IOS输入法测试中的应用
什么是KIF?KIF,是一个开源的用户界面测试框架。使用KIF,并利用IOS中的辅助功能API,你将能够编写模拟用户输入,诸如点击,触摸和文本输入,这样的测试将给予你的应用自动化的,真实的用户界面操作。当然,它的作用不仅仅局限于UI测试这么简单,本文将介绍KIF框架的简单使用以及优缺点,不会介绍如何配置工程等内容,如果想深入了解,可访问https://github.com/kif-fram原创 2015-04-23 01:51:58 · 1375 阅读 · 0 评论 -
搜狗输入法,好用不?原理是什么?
搜狗输入法,好用不?原理是什么?早晨起来做的前几件事情是什么?你可能会说:“睁眼”、“看时间”或者打个哈欠然后习惯性的喊着“不想起床”,然后开始了新一天的生活。而一天的日常生活中,电脑、手机等也基本成为了大家前几位要做的,接下来呢?找到想用的软件,然后就是打字,没错,打字!不能打字几乎可以让你痛苦万分,各种环节都需要输入法,那么输入法哪家强呢?原创 2015-04-23 01:14:24 · 2025 阅读 · 0 评论 -
小W写测试工具之啼笑是非
头:小W啊,来,交给你一新任务,给我写个能同步时间的工具。(ps:苦逼的测试们经常需要修改系统时间,所以会有这么个需求。)小W:好啊好啊,交给我就成,放心吧您。滴答滴答。。。一个小时过去了,小W在终于写出了一种方法(偷偷告诉你们:网上抄的),就是从一个官方的站点(例如www.time.com 等等)获取时间,网上有好多类似的做法。原创 2015-04-23 02:53:39 · 522 阅读 · 0 评论 -
Sogou输入法使用的代码静态检测工具
CppCheck静态代码检测工具工具介绍:Cppcheck是一种C/C++代码缺陷静态检查工具。不同于C/C++编译器及其它分析工具,Cppcheck只检查编译器检查不出来的bug,不检查语法错误。作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。执行的检查包括(可以发现以下的问题):1.自动变量检查2.数组的边原创 2015-04-23 02:55:58 · 795 阅读 · 0 评论 -
线上服务器脚本内存泄漏问题排查
前一阵子在做对输入法移动端服务器失败率监控的过程中使用C++编写了一个脚本。由于监控脚本就是一个死循环,希望可以长时间运行。但是没运行2天多,监控程序就失效了。到虚拟机上一看原来是监控脚本已经在虚拟机上崩溃,通过分析崩溃文件大致原因是因为内存泄漏的问题。然后观察机器的运行过程发现脚本每次循环的时候都会有大搞90kb的内存泄漏。查看监控程序的源码:啥也没有啊?就是创建了一个线程,原创 2015-04-23 03:38:46 · 1830 阅读 · 0 评论