搜索测试

最近学了一下搜索开发的框架lucene,顺便也把在学习过程当中积累的测试点给梳理一下。算法

毕竟身为一名测试人员,习惯性的会对测试点进行备份的。缓存

 

先看环境配置框架

对于大数据量的搜索的项目开发,那应该是离不开分布式的集群部署吧。分布式

 

部署学习

集群模式:1个merge和N个searcher测试

单机模式:1个merge和1个searcher大数据

节点的控制3d

启动节点blog

中止节点排序

启动部分节点

宕机的处理

节点策略,是不是hash一致的环形算法

宕机后数据是否有备份不影响使用

备份系统的切换

动态的切换主从系统

 

 基本功能

从整个搜索的体系来看,大体分为二个部分

1 索引的创建机制

3 查询结果的聚合体系

 

索引体系

分词解析策略

咱们知道索引的创建会经历单词的拆分与stopword、原型、提取常量等解析过程后行程;而对于结果的聚合,其实从查询开始也会经理关键字的拆解,随后是结果的聚合

聚合中须要关注:是否遗漏、是否重复、权重排序、敏感词过滤等

 

那么针对这些策略,咱们须要配置相应的测试用例。

分词策略

1 大小写转换 ALIBABA--->alibaba

2 原型形式   learned--->learn

3 无心义的字 has a ---> 删除

4 关联词 table tennis --->table--tennis (拆分没法搜索到)

....

....

同理在搜索的时候,关键词也会经历上面的统一的一个策略逻辑

即时更新策略

1 在原来基础上更新

2 擦除所有后更新

 

查询结果体系

1 是否命中缓存

2 是否经历了拦截器的拦截(擦除敏感信息)

3 查询排序的策略权重

4 即时更新的内容是否被搜索到

5 结果是否重复

6 结果是否遗漏

 

 

相关文章
相关标签/搜索