单元测试

PHPUnit单元测试

假装没事ソ 提交于 2020-12-18 06:56:05
简单的了解一下PHPUnit单元测试框架,由于螃蟹在win下使用的xamp环境,直接使用xamp/php目录里面的pear.bat来安装PHPUnit,经过一番折腾,终于是安装上了PHPUnit4.0.17。然后搜了一些教程,发现没有一个能用的,大多数都是版本不一样,测试就报错,最后在官网发现中文教程,测试通过。 编写phpunit_test1.php <?php class calculator { function add($p1, $p2) { return $p1 + $p2; } } class calculatorTest extends PHPUnit_Framework_TestCase { public function testCanBeNegated(){ $calc = new calculator(); print_r($calc->add(1,20)); } } ?> 然后命令行下运行:PHPUnit phpunit_test1.php 运行结果: PHPUnit 4.0.17 by Sebastian Bergmann. You have installed PHPUnit via PEAR. This installation method is no longer supported and http://pear.phpunit.de/ will

[基础]iOS 单元测试(一)入门与配置

こ雲淡風輕ζ 提交于 2020-11-29 02:01:46
所有文章目录: http://my.oschina.net/ChenTF/blog/677112 本篇文章地址: http://my.oschina.net/ChenTF/blog/677309 会持续的更新所有历史文章, 所以收藏的话请收藏上面的地址。 workspace — project — targets 讲解 一个工作空间可以包含多个项目,一个项目可以包含多个目标(生成物)。 一个项目中根据运行的targets不同,可以进行不同的编译设置,project是基础父类,targets是子类,targets的设置会覆盖project的设置。 Target与单元测试的关系 单元测试是在一个新的target上进行的设置,这样就不会影响程序开发,编译。 在XCode7中创建一个项目时默认是选中创建测试target的,如果没有,创建方法如下:File -> New -> target -> UITest/UnitTest,创建完成后会自动创建对应的文件夹。 UnitTest 使用该UnitTest测试一些代码逻辑,使用UITest测试UI的点击交互逻辑。 1.创建要测试的代码 2.创建测试类 说明: 任何测试类都需要继承自 XCTestCase 类 setUp,tearDown是系统默认方法 命名:测试的目标类名+Tests 3.编写测试方法 说明: 测试方法必须以testXXX开头

WebQQ,ExtJs + Servlet + Hibernate + Spring实现

帅比萌擦擦* 提交于 2020-04-17 03:05:38
【推荐阅读】微服务还能火多久?>>> 原文地址: http://www.abigdreamer.com/index.php/archives/507 版权归 www.abigdreamer.com 所有 本blog已转移到:造梦师 http://www.abigdreamer.com ,谢谢大家的支持,欢迎大家以后常去我的小站转转! 代码为无聊时开发,采用ExtJs + Servlet + hibernate(Ant+xdoclet生成hbm文件) + spring实现, 纯属一时兴起,只是实现了多人聊天,群聊什么的都没实现,也没怎么考虑性能,以后再说吧,呵呵! 分享本代码的原因: 1.本人热爱开源 2.打算为毕业后找工作做准备(现在正在实习,感觉公司放不开让新人开发,这点挺郁闷的) 3.为想学习的勤奋孩子提供一点思路,尤其向我这种家里没钱,可又渴望学习的娃娃 (因为某开源网站上有类似的,好像是要花钱才可以得到代码的,感觉有损开源两字。不要误会,本人并不是反对收费。而且我觉的收费也是对作者的一种肯定。但我对开源的理解是,源代码肯定是任何人都可以阅读的,而且阅读源代码不需要花钱,使用或是修改源代码之后用来商用则另当别论。) 本人联系方式: Email:darkness_sky@qq.com QQ: 893951837 仅供用来找工作用,呵呵,祝您在coding的路上一切顺利,good

敏捷项目测试策略文档模板

偶尔善良 提交于 2020-04-08 04:45:42
敏捷项目测试策略文档模板   在一个敏捷工作环境种,我们的研发工作以冲刺期和高度迭代的形式展开。每一个迭代周期都关注少数的需求或者用户故事,所以在文档在敏捷项目种的数量和内容方面都倾向于轻量化。   对于测试计划这样的文档也是如此,不过我们也确实需要为敏捷团队去提供一个概要的敏捷测试策略,以供指导。   敏捷测试策略文档是为了给团队提供一个最佳的测试实践和一些形式的测试体系。记住,敏捷并不意味着没有体系。   下面我们来看一个敏捷测试策略文档,看看我们都应该包含些什么内容。 1.   一份测试策略中通常都会对于更宽泛的商业目的和目标做出任务说明。    一个典型的任务说明可以是:   “通过快速反馈和缺陷预防,持续的交付可工作的,满足用户需求的软件,而不仅仅是缺陷发现”   细化以后:   “● 在定义完需求的接收条件/测试之后,代码才能进行编写。    ● 接收测试不通过,一个需求就不能被判断为完成。”   在敏捷项目中,通常还会包含关于质量保证的提示:   ● 质量保证是系统和可靠的保证产品满足用户需求的一系列活动。   ● 在SCRUM(敏捷)中,质量保证是所有人的责任,而不单单是测试人员。在我们开发新产品的过程中,我们通过质量保证活动来确保正确的质量。    2.   测试级别    2.1  单元测试   WHY : 确保代码被正确开发   WHO : 开发工程师

玩转Google开源C++单元测试框架Google Test系列(gtest)(总)

怎甘沉沦 提交于 2020-04-07 23:45:23
摘自: https://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html 前段时间学习和了解了下Google的开源C++单元测试框架Google Test,简称gtest,非常的不错。 我们原来使用的是自己实现的一套单元测试框架,在使用过程中,发现越来越多使用不便之处,而这样不便之处,gtest恰恰很好的解决了。 其实gtest本身的实现并不复杂,我们完全可以模仿gtest,不断的完善我们的测试框架, 但最后我们还是决定使用gtest取代掉原来的自己的测试框架,原因是: 1.不断完善我们的测试框架之后就会发觉相当于把gtest重新做了一遍,虽然轮子造的很爽,但是不是必要的。 2.使用gtest可以免去维护测试框架的麻烦,让我们有更多精力投入到案例设计上。 3.gtest提高了非常完善的功能,并且简单易用,极大的提高了编写测试案例的效率。 gtest的官方网站是: http://code.google.com/p/googletest/ 从官方的使用文档里,你几乎可以获得你想要的所有东西 http://code.google.com/p/googletest/wiki/GoogleTestPrimer http://code.google.com/p/googletest/wiki

【测试之道】深入探索:单元测试之Parameterized tests

房东的猫 提交于 2020-04-07 10:30:47
相关文章 深入探索:单元测试之Test runners 深入探索:单元测试之基于 suites 的聚合测试 深入探索:单元测试之测试执行顺序 深入探索:单元测试之异常测试 深入探索:单元测试之Ignnore测试和TimeOut测试 深入探索:单元测试之Categories 深入探索:单元测试之Assertions JUnit 常用的runner 之一 Parameterized 能实现参数化测试。运行参数化测试类时,将为测试方法和测试数据元素的交叉产品创建实例。 举个例子,测试斐波那契 函数,我们可以这样写: import static org.junit.Assert.assertEquals; import java.util.Arrays; import java.util.Collection; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; @RunWith(Parameterized.class) public class FibonacciTest { @Parameters public static Collection

【测试之道】深入探索:单元测试之Assertions

[亡魂溺海] 提交于 2020-04-07 08:59:17
相关文章 深入探索:单元测试之Test runners 深入探索:单元测试之基于 suites 的聚合测试 深入探索:单元测试之测试执行顺序 深入探索:单元测试之异常测试 深入探索:单元测试之Ignnore测试和TimeOut测试 深入探索:单元测试之Categories 深入探索:单元测试之Assertions assert 简述 JUnit 为全部的基本类型、对象 以及数组(包括基本类型和对象),参数顺序是期望值,后面跟随的是实际结果值。第一个参数是可选的,是在测试失败的时候输出的字符串信息。此外,这里还有一个不同于Assert 的,那就是assertThat, 它具有可选的失败消息参数实际值,和一个匹配对象。这里有一点需要注意的,那就是参数,assertThat 的参数是与其他assert 的参数是反过来的,比如assertEquals("failure - strings are not equal", "期望值", "实际结果值"); assertThat("实际结果值", 期望匹配值); 举例 使用Junit 需要一些jar 包,maven 的依赖如下: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test<

【测试之道】深入探索:单元测试之基于 suites 的聚合测试

陌路散爱 提交于 2020-04-07 08:57:02
相关文章 深入探索:单元测试之Test runners 深入探索:单元测试之基于 suites 的聚合测试 深入探索:单元测试之测试执行顺序 深入探索:单元测试之异常测试 深入探索:单元测试之Ignnore测试和TimeOut测试 深入探索:单元测试之Categories 深入探索:单元测试之Assertions Suite 是JUnit4.12 的标准runner 之一,它允许你每次测试都能包含很多的类。它是在JUnit4中才开始被引入的,相当于JUnit3.8.x 的 ** static Test suite()** 方法。 使用@RunWith(Suite.class) 和 @SuiteClasses(TestClass1.class, ... ) 来注解一个类。 当你运行这个类, 他会运行@Suite.SuiteClasses( { .... })中包含的全部测试类。 举例 下面会有序的执行@Suite.SuiteClasses 中的全部 Class 。 mport org.junit.runner.RunWith; import org.junit.runners.Suite; @RunWith(Suite.class) @Suite.SuiteClasses({ TestFeatureLogin.class, TestFeatureLogout.class,

用Java(JUnit4)对JavaScript(含Ajax)脚本进行单元测试

僤鯓⒐⒋嵵緔 提交于 2020-04-07 08:40:16
一、背景 因为原来采用过Rhino(JS解析引擎,新版JDK中也默认包含另外一个解析引擎)来在Java环境中解析JavaScript并运行其中的方法。最近看到有人在问题里提问,模拟Ajax请求的问题。所以就想看看有没有方法通过Rhino来实现Ajax请求的模拟。 二、分析 通过上网检索,发现可以采用Envjs,一个纯js方式在无浏览器环境下模拟浏览器的行为,并且与Rhino有集成。这样我就可以实现用Java来处理孤立js中的Ajax请求。 三、开发 1、项目目录结构 main中my.js为要测试的JavaScript,jquery-1.9.1.js为依赖。 test中AjaxTest.java为单元测试类,test.html为测试页面,env.rhino.1.2.js为Envjs依赖。 2、my.js(Jquery的ajax) function myFunction(id) { $.ajax({ url:"/ajaxservice", type:"POST", data:{id:id}, dataType:"json", success:function (msg) { $("#log").text(msg.name); } }); } 这个myFunction实际上就是调用了Jquery的ajax来请求ajaxservice

Python中怎么进行单元测试

99封情书 提交于 2020-04-03 02:00:32
既然是测试,那我们得有被测试的代码,我们先定义一个简单的函数,这个函数的功能就是接收一个姓名,并返回一句问候语句。 say_hello_function.py 1 def hello_name(name): 2 greet = "Hello , " 3 return greet + name.title() 显然,关于单元测试Python也给我们提供了相应的模块(unittest),单元测试:用于确定函数的某方面没有问题;测试用例:即一组单元测试,在各个情况下的行为都符合我们的预期。 一、成功通过的测试 编写测试用例的步骤:1.先导入unittest模块;2.创建一个类(任意名)继承unittest.TestCase;3.编写需要测试的代码对函数进行各方面的测试。我们先只用上面一个函数举例即只包含一个方法的测试用例,主要检查函数hello_name 运行之后是否符合我们的预期。 test_say_hello.py 1 #coding=gbk  //因为本人用的编辑器编码为GBK,所以需要加这一行,如果你的是utf-8,将gbk改为utf-8即可(主要是为了让Python能识别注释与字符串中的中文字符) 2 import unittest 3 4 from say_hello_function import hello_name 5 6 class HelloTest