任延华

Results 222 comments of 任延华

## 测试用例TC-SIP-12(todo) 通道资源控制 每个前端 IP 最多允许同时使用 100 个 TCP 连接; 短时间内(10秒钟) Connect 动作超过 1000 次,IP 自动被列入黑名单; IP 表内最多允许同时存在 10000 个事项。超过了则不允许更多前端进行 Connect。

## 测试用例TC-SIP-13(todo) TCP 通道休眠时自动清理特性。 每个 TCP 通道,在 Login() 或者其他请求之前,可以存活 10 秒钟。超过 10 秒钟就有可能被 SIP Service 自动关闭和清理。也就是说,SIP Client 在 Connect 成功以后,10 秒以内要进行实质性的请求操作,否则 TCP 通道会被 Server 一端自动清除。 TCP 通道在 Login() 或者其他请求之后,是否被自动清理,以及多少休眠时间以后才被自动清理,是由 (各个实例的)SIP...

## 测试用例TC-SIP-14(todo) 通讯包发送接收 要制造一种场景,前端发出的通讯包,故意切割为几个部分,顺次间隔一定时间发出。目的是验证服务器接收这种碎片通讯包可以正确组合处理; 多个请求一次性发出。那么响应会是和请求包的顺序对应的。目的是测试验证服务器可以处理此种 Pipeline 请求,通讯包分界机制正确。 请求包尺寸大于 4096 bytes,会引起默认配置情况下 TCP 通讯被服务器切断。这是服务器的一种保护措施,防范前端用巨大的通讯包进行攻击。(注意检查这个极限尺寸参数应该可以在 dp2Installer 中配置) 前端使用的通讯包结束符可以是 '\r' 或者 '\n'。服务器会自动按照前端请求时候所使用的结束符,来决定响应包的结束符。注意测试时候,可以同时启动多个通道进行请求,而且请求之间使用了不同的结束符,要求服务器可以自动针对性地使用响应结束符。同一个通道的不同请求之间其实也可以使用不同的结束符,服务器能适应。

## 测试用例TC-SIP-15(todo) SIP Server 自动清理休眠 TCP 连接的算法考虑 就是一般 SIP Client 可能会假定 TCP 连接一直存在。如果休眠两分钟以后 SIP Server 自动 Close TCP 连接,那么后面 SIP Client 再次进行请求的时候就会报错 (closed by remote peer),为此,SIP Client 需要有所准备,要专门增加遇到这种情况重试的代码。而且重新 Connect TCP...

## 测试用例 TC-SIP-16 ### 一、测试目的 检查在全局SIP服务启用的情况下,单独实例 SIP服务参数启用和禁用,前端是否能够连通和登录。 ### 二、测试环境 1)dp2Capo assembly version: 1.27.6813.17365 2)dp2Library标准版服务器,版本为3.4 3)用SIP Client前端工具来连接SIP 服务,进行访问测试。 ### 三、测试步骤: 1)在ChordInstaller,设置dp2Capo 全局参数,启用SIP服务。 2)在ChordInstaller,对dp2Capo实例instance1,启用SIP服务,在用户名与SIP参数对照表中 配置用户zizhu及对应SIP参数。点 确定 关闭 SIP服务参数 对话框,再点 确定 关闭 一个实例...

因为从服务器上得到的馆藏地、读者类型、图书类型的值,会根据登录帐户,返回不同范围的值。所以在我爱图书馆这边,不适合存储在图书馆的本地库,也不适合放在图书馆的内存对象里。而是应设在当前登录帐户的session里。 每次一个用户打开我爱图书馆web端或微信会有一个session,这个session存储了当前用户的各种信息,当需要用到图书类型和馆藏地(例如册登记时)或者用到读者类型(例如读者审核时),如果发现session中没有这个值则从服务器获取,有则直接使用。

某用户是由几个分院组成,每个分院配置了不同的馆藏地,用户希望自己关心的馆藏地的册记录,在书目下显示的时候排在前面。开发上这样处理: 1)用户进入书目查询时,先弹出设置对话框,让用户选择一下关注的馆藏地,如果设置过了,则不弹出来。 2)在书目下显示册记录时,检查当前用户关注的馆藏地是什么,这个馆藏地的册记录排在前面。 3)在图书馆也加一个配置项,表示该馆是否要求 在书目查询时,先检查关注馆藏地配置。

# 记录中的operation算法更新 ## 用途 读者/书目/册(及订购/期/评注)记录中的operations/operation元素,用于记录这条记录是谁创建的,该修改过,还可用于统计工作量,参于编辑的每个人做的都要留下痕迹。 ## 以前版本效果 1)之前版本读者没有operation元素。书目 和 册(订购/期刊/评注)有。 2)首次创建会有一个create类型的operation,位于第一个且只有一个 3)书目以后每次修改会产生一个新的change,不区分人,但不是无限多,当超过10个会把前面的顶出去,导致分布不均匀,一个人可能修改多次。 4)册以后每次修改是只有一个lastModified元素,也不区分人。 ## 新版本算法 1)为读者增加了operation,包括create和change两种。 2)create原理不变,还是针对初始创建产生,位于第一个且只有一个。 3)针对change改为:对于某一个人无论多少次修改,对这个人只产生一个change/lastModified(册/订购/期/评注对这个名称因为已经建了检索点,还继续用lastModified。书目和读者都叫change),这个人多次修改,只会更新他自己这一个operation=change的时间time。 4)这些operation元素是按时间排序的,如果之前修改过的人,又进行了修改,会将该用户的operation移动最后。因为检索点是按xpath配的,xpath有局限,取最后一个元素方便。 5)operation数量超过10个,会顶出排前面的change,但不会顶出第一个create。 (注:由这一点想到在实际应用中,要看看参与编辑的会有多少人,如果超过10个,要能特殊配置。) ## 测试要点 1)创建人与时间 2)一个人多次修改,应只有一条change(或lastModified) 3)不同的人修改,更新对应人的change(或lastModified),且这个operation会移到最后。 4)用超过10个帐户测试,第11个operation,会顶出排在最前面的change(或lastModified),注不会顶出create。 5)针对上面的4点,分别针对 读者、书、册、订购/期/评注 分别进行测试。...

2021/8/3 13:42:11 dp2installer 测试版和 dp2libraryxe 测试版更新了。SetReaderInfo() API 除了原先的具有 setreaderinfo 权限的用户具有删除读者记录的权限外,新增允许具有 setreaderinfo:xxx|r_delete 权限的用户删除读者记录,不过还有一个限定条件是拟删除的读者记录中包含的数据元素不超过此用户的可修改字段范围 例如,当用户具备 setreaderinfo:1|r_delete 权限的时候,如果打算删除的读者记录中只包含 1 级的元素,那么就可以被删除。注意 r_delete 表示允许 setreaderinfo: 这种形态的权限具备删除读者记录的能力。如果没有 r_delete,比如 setreaderinfo:1 这样的权限,是没法删除任何读者记录的 测试的时候,注意检查原先的用法有没有问题。另外检查一下读者身份是不允许删除读者记录的,这里不要出现漏洞

### 在TestRestLibrary工具第一次登录:获取token,正常 ``` strUserName: R0000001 strPassword: supervisor,1 strParameters: simulate=true,type=reader,client=dp2OPAC|1.0,gettoken=day 返回结果 Rights:getreaderinfo,getbibliosummary,renew,reservation,search,getbiblioinfo,getiteminfo,getcommentinfo,getissueinfo,getorderinfo,setcommentinfo,setreaderinfo,changereaderpassword,getsystemparameter,listdbfroms,getres,searchbiblio,searchcharging,searchcomment,searchissue,searchitem,searchorder,patron,token:xv0MYpEV/s1ThB+LgQWkmYwO2NM|||20210207 UserName:R0000001 ``` *** ### 在TestRestLibrary工具第二次登录:用token登录,正常 ``` strUserName: R0000001 strPassword: supervisor,1|||token:xv0MYpEV/s1ThB+LgQWkmYwO2NM|||20210207 strParameters: simulate=true,type=reader,client=dp2OPAC|1.0 返回结果 Rights:getreaderinfo,getbibliosummary,renew,reservation,search,getbiblioinfo,getiteminfo,getcommentinfo,getissueinfo,getorderinfo,setcommentinfo,setreaderinfo,changereaderpassword,getsystemparameter,listdbfroms,getres,searchbiblio,searchcharging,searchcomment,searchissue,searchitem,searchorder,patron UserName:R0000001 ``` *** ### 在浏览器用token方式进入OPAC,是未登录的状态(有个人信息等菜单,但点进去是登录界面)...