搜索測試

最近學了一下搜索開發的框架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 結果是否遺漏

 

 

相關文章
相關標籤/搜索