最近在看.net单元测试艺术,我也喜欢单元测试,今天介绍一下如何测试异常.如何测试返回值.如何测试模拟对象的参数传递.如何测试数据库访问代码.单元测试框架使用的是NUnit,模拟框架使用的是:Rhino.Mocks. 1.测试异常,可以直接对方法进行异常测试,也可以对模拟对象进行异常测试,但是,对模拟对象进行异常测试,很少用,所以,这里就介绍对方法的异常测试.请看如下代码,当用户名为空的时候,抛出异常. public bool Valid(string userName, string pass…
atitit.架构设计---方法调用结果使用异常还是返回值 1. 应该返回BOOL类型还是异常 1 2. 最终会有四种状况,抛出异常.返回特殊值.阻塞.超时 1 3. 异常的优缺点点 1 4. java BlockingQueue的提示 2 5. 方案::两个都使用,一个api返回bool,一个throw 异常... 2 1. 应该返回BOOL类型还是异常 现在我遇到一个问题,我有一个函数,它要实现的功能是启动一个线程,然后让此线程监视一个事件. 但我应该返回BOOL类型还是异常哪? 作者:: …
获取AsyncTask返回值,在Activity中使用. 引用链接:https://www.oschina.net/code/snippet_725438_49858#72630 [1].[代码] [Java]代码 跳至 [1] [2] [3] [4] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 布局文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/…
该结果分为多种情况: 1.当前项目使用了interceptor/filter,拦截或者过滤了特定请求. 2.在HTML页面使用了表单提交,没有对表单的“onsubmit”事件做return false处理 3.在struts/springmvc的Controller的请求方法里,没有使用response.getWriter().print()返回结果.或者是使用了response.getWriter().print()后,没有关闭当前输出流.response.getWriter().flush(…
[提示] 1. 阅读文本前希望您具备如下知识:了解单元测试,了解Dynamic,熟悉泛型(协变与逆变)和Lambda,熟悉.NET Framework提供的 Action与Func委托.2.如果您对单元测试无兴趣请止步. 3.本文将使用一些我自己的测试公共代码,位于https://idletest.codeplex.com/,此处亦非常欢迎来访. 4.关于本人之前单元测试的文章可参阅 <在Visual Studio 2012使用单元测试>. <VS2012 单元测试之泛型类(Generi…
VS2012 Unit Test(Void, Action, Func) —— 对无返回值.使用Action或Func作为参数.多重载的方法进行单元测试 [提示] 1. 阅读文本前希望您具备如下知识:了解单元测试,了解Dynamic,熟悉泛型(协变与逆变)和Lambda,熟悉.NET Framework提供的 Action与Func委托.2.如果您对单元测试无兴趣请止步. 3.本文将使用一些我自己的测试公共代码,位于https://idletest.codeplex.com/,此处亦非常欢迎来访…
项目是使用的npm+vue+mock模拟数据 我碰到的是在mock配置文件中新增接口,但是接口在测试时无效,返回404.但是在前端代码中把新接口换成配置文件中之前就有的,然后测试就正常了. 所以按问题出现的现象就能推测出,90%的可能是因为在mock配置文件中新增的接口没有生效! 然后因为项目是npm+vue的,所以在命令行中ctrl+c把前端项目终止,然后在npm start把项目再次启动,再做测试新增接口就正常返回数据了(前提是mock配置文件已经修改好了). 总结:虽然是npm+vue,只…
## 统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生. 比较通用的返回值格式如下: ```java public class Result { // 接口调用成功或者失败 private Integer code = 0; // 失败的具体code private String errorCode = ""; // 需要传递的信息,例如错误信息 private String msg;…
================jsp==========================<form  method="post" id="regfrminp" class="regfrminp"> <div>      <ul class="regtitle" >       <li>公司名称:        <input type="text" cl…
一.返回一般数据类型 比如要根据 id 属性获得数据库中的某个字段值. mapper 接口: // 根据 id 获得数据库中的 username 字段的值 String getEmpNameById(Integer id); SQL 映射文件: <!-- 指定 resultType 返回值类型时 String 类型的, string 在这里是一个别名,代表的是 java.lang.String 对于引用数据类型,都是将大写字母转小写,比如 HashMap 对应的别名是 'hashmap' 基本数…
本文基于Roslyn项目中的Issue:#347 展开讨论. 1. C# 7.0 新特性1: 基于Tuple的“多”返回值方法 2. C# 7.0 新特性2: 本地方法 3. C# 7.0 新特性3: 模式匹配 4. C# 7.0 新特性4: 返回引用 回顾 首先,提出一个问题,C#中,如何使一个方法可返回"多个"返回值? 我们先来回顾一下C#6.0 及更早版本的做法. 在C#中,通常我们有以下4种方式使一个方法返回多条数据. 使用 KeyValue 组合 static void Ma…
Delphi 可以像JavaScript 脚本语言一样使用GetElementByID方法访问网页中指定ID的元素,一般要配合TWebBrowser组件使用.首先使用TWebBrowser浏览网页,然后访问网页的元素,例如: procedure TForm1.Button1Click(Sender: TObject);var  aElement: OleVariant;begin  aElement := WebBrowser1.OleObject.Document.GetElementByID…
深入了解MyBatis返回值 想了解返回值,我们须要了解resultType,resultMap以及接口方法中定义的返回值. 我们先看resultType和resultMap resultType和resultMap 大家应该都知道在MyBatis的<select>标签中有两种设置返回值的方式,各自是resultMap和resultType. 处理resultMap和resultType的代码例如以下: private void setStatementResultMap( String re…
/** * */ package testJava.java.foreach; import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Queue; import java.util.Stack; /** * @author jhuang.sjtu * @function 测试循环嵌套函数返回值 递归算法 * @da…
insert.update.delete语句的返回值类型 对数据库执行修改操作时,数据库会返回受影响的行数. 在MyBatis(使用版本3.4.6,早期版本不支持)中insert.update.delete语句的返回值可以是Integer.Long和Boolean.在定义Mapper接口时直接指定需要的类型即可,无需在对应的<insert><update><delete>标签中显示声明. 对应的代码在 org.apache.ibatis.binding.MapperMe…
开会的时候,师父说.我们在机房重构时,尽量不要用datatable作为返回值.改用泛型集合的方式,这样能够实现真正的面向对象. 通过查资料和同学交流,把这个问题给攻克了. 对于泛型集合.我也有了一些认识. 一.对泛型集合的认识 1.存在于System.Collection,Generic的命名空间中,在用的时候.须要引用 2.泛型是具有占位符(类型參数)的类,结构,接口和方法.就是说,在泛型集合中增加的数据必须符合指定的类型<T>,否则编译时就会报错. 以上为设计模式培训实习生的内容. 那泛型…
因为msdn中说返回受影响的行数: Executes a Transact-SQL statement against the connection and returns the number of rows affected. 但是却没看到备注里说 For UPDATE, INSERT, and DELETE statements, the return value is the number of rows affected by the command. When a trigger e…
ndroid JNI 提供了很强大的支持,不仅可以采用基本类型做为参数和返回值,同时也支持自定义对象做为参数和返回值,以下举例说明. 一.定义作为输入和返回的自定义类 (仅提供两个简单类型和一个打印函数) package com.example.jniexample; import android.util.Log; public class JNIParam { public int mInt; public String mString; JNIParam(){ mInt    = 0; m…
本文验证了通过mybatis访问数据库时的,增删改查的返回值情况. 直接看代码. 1.service层 /** *@Author: Administrator on 2020/3/12 15:15 *@param: *@return: *@Description:查询同步情况 */ @Override public PageInfo getSyncstatusPages(Syncstatus vo, int pageNo, int pageSize) { PageHelper.startPage…
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAloAAAE0CAIAAAB7LwoKAAAgAElEQVR4nO2dy6sc152A6+/R2mXwSn+DFlqaW954L7QK2NzgReOFwCBr4SyyvYaOV5G9kGEQAQ/jRFLfKBOhOI6iTIZ4lEkmNdJoECOENIt69Hn8zqve3fV9HILVVXXqdNXN+fp3ntkb0PnmZ6cXT3/2zdzFAACAKcnmLgAAAMD8ZCUAAMDqQYcAA…
test.py代码如下: import urllib2 import sys try: f = urllib2.urlopen('http://www.baidu.com/',timeout = 10) f.read(1000) f.close() print 'success' sys.exit(1) except urllib2.URLError,e: print 'fail' sys.exit(-1) 使用python test.py运行脚本,然后cmd中输入echo %ERRORLEVE…
需求:用的heightcharts插件,点击曲线图想获得所点击点的返回值,如图 问题代码: (function chart_line(){ var data={"title":["01","02","03","04","05","06","07","08","09","10","…
要实现有返回值的多线程,具体代码如下: package thread; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.FutureTask; public class App { public static class MySum implements Callable<Integer> { @Override p…
关于ExecuteNonQuery执行存储过程的返回值 用到过ExecuteNonQuery()函数的朋友们在开发的时候肯定这么用过. if(cmd.ExecuteNonQuery("xxxx")>0) { //执行成功! } else { //执行失败! } 通过ExecuteNonQuery()的返回值来判断操作数据库的成功与否是可以的.但是要分情况. 1.ExecuteNonQuery() 不执行存储过程. 此时如果对数据库执行,插入,更新,删除操作,返回的是 受影响的行数…
create proc test ) output as begin select @result = 'haha' ; end go ), @count int exec @count = test @result output print @result --查询输出参数 print @count --查询返回值 执行上面一段代码, 可以得到 @result = 'haha', @count = 1 存过过程中的return语句只能返回int类型值, 而输出类型可以返回任意你想要的类型 **…
今天写代码,遇到一个const char *返回值的问题,记录一下 问题场景:我写了一个动态库,有个函数声明如下: ; 函数定义如下: const char * HttpRequestImpl::RGetAppToken(char * appToken, const char * userAccount, const char * userId) { std::string message; // 省略中间逻辑... message = GetAppToken(); return message…
本文中,我们介绍在Enclave函数中调用不可信OCALL函数,并获得OCALL函数的返回值. 1. 复制SampleEnclave示例并建立自己的OcallRetSum项目 SampleEnclave示例实现了安全printf函数,可以被用来安全打印我们需要打印的字符串.我们使用OCALL计算两个整数之间的所有整数的累加和(包括这两个整数),并调用printf函数打印复制的目的字符串.我们把SampleEnclave示例复制到自己的文件夹中,基于该示例,我们开发一个在Enclave函数中调用O…
目录 1.返回值概念 2.return关键字的作用 3.返回值可以返回的数据类型 4.函数如何返回多个值 5.fn5 和 fn5()的区别 6.总结: 1.返回值概念 例如:我们去超市购物,比如买饮料,给钱之后,是不是售货员会返回给我们饮料这个商品.在函数中,如果需要返回结果给用户,就需要使用函数返回值. 换句话说,返回值就是函数执行以后返回的结果. def buy(): # return返回结果给函数调用的地方 return '烟' # 使用变量保存函数返回值 goods = buy() pr…
1.异常测试 对可能抛出的异常进行测试: 异常本身是方法签名的一部分: * public static int parseInt(String s) throws NumberFormatException 测试错误的输入是否导致特定的异常: * Integer.parseInt(null) * Integer.parseInt("") * Integer.parseInt("xyz") 2.异常测试的方法: 使用try..catch (Exception e)捕获…
敏捷开发 敏捷软件开发又称敏捷开发,是一种从上世纪 90 年代开始引起开发人员注意的新型软件开发方法.和传统瀑布式开发方法对比,敏捷开发强调的是在几周或者几个月很短的时间周期,完成相对较小功能,并交付使用.在项目周期内不断改善和增强. 2001 年初,在美国犹他州雪鸟滑雪胜地,17 名编程大师分别代表极限编程.Scrum.特征驱动开发.动态系统开发方法.自适应软件开发.水晶方法.实用编程等开发流派,发表“敏捷软件开发”宣言.其内容主要包括: 人和交互重于过程和工具: 可以工作的软件重于求全责备的…