解答系统的查全率、查准率测试方法的探讨

软件测试是通过执行软件来,对过程中的产物(开发文档和程序)进行走查,发现问题,报告软件质量。测试是程序的执行过程,目的在于发现错误;一个好的测试用例在于发现了至今未发现的错误;一个成功的测试是发现了至今未发现的错误的测试。一般软件测试我们主要从功能性、可靠性、易用性、维护性、可移植性、文档审阅等方面进行。作为第三方测评机构中的一名软件测试工程师,以我曾做过的一个项目为例,总结下测试的经验和方法。

一:项目基本情况

随着互联网的飞速发展,网络上的信息呈爆炸式增长。这使得人们在网上找到所需的信息越来越困难,这种情况下搜索引擎应运而生。越来越多的课程,使得学生的负担压力也越加严重,某解答系统通过对公式化结构数据的搜索算法、关键知识点等信息,在线上和线下整合的教育资源中进行寻找和选择,即时获得求解答案,并提供了相关知识点拓展学习的机会。

某解答系统是上海XX信息技术有限公司开发实施完成,该软件支持WEB端(如图1)和手机端访问,是一款教育软件,实现输入文字/公式、语音搜索初高中的题目,查看题目详细解析和相似题等功能。

上海XX信息技术有限公司以中学生普遍的困难——课后练习的求解、巩固、提高和知识点规律为切入点,将互联网线上及线下的中学理科教育资源进行了系统的整合,为广大中学生和教师、家长用户提供了一站式的“求解答”教育搜索引擎服务。

 

图1  某解答系统WEB端

二:项目具体实施

首先,收到客户提交的材料,第一件事就是查看送测材料,了解客户的测试需求、测试目的、熟悉客户信息及被测系统的基本资料(如:测试委托申请表、操作手册、设计说明书、任务书、合同等)。根据收到的材料,被测系统“某解答系统”需要针对WEB端和手机端的功能、《(课题)任务书》中的技术指标进行测评。其次,与客户联系了解测试服务器和客户端所需要的环境,被测系统搭建了测试环境,部署了一台测试服务器和5台搜索服务器;客户端支持Microsoft Windows系列、Apple iOS、Google Android等主流操作系统,满足市场中大部分的用户需求;采用MySQL数据库进行数据的管理和维护,通过定期手动拷贝的方式进行数据的备份与恢复操作;使用Apache Tomcat 7.0和Oracle JDK 1.7搭建服务器,通过Apache Tomcat记录访问、运行的日志数据,尤其是记录一些异常错误的日志信息。了解完测试服务器和客户端所需要的环境之后,根据收到的操作手册和设计说明书编制测试记录和测试用例。任何一个项目,一份考虑较周全的用例可以大大降低项目风险,增强测试人员乃至整个项目组的信心。我们通常在测黑盒测试(功能测试)时采取等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等方法设计测试用例,检测每个功能是否都能正常使用。同时在Apple和Android的应用市场中下载“某解答系统”APP。当所有准备工作准备好了之后,开始进行软件测试。

n 测试依据的标准是:

GB/T 16260.1-2006 《软件工程 产品质量 第1部分:质量模型》国家标准。

GB/T 25000.51-2010 《软件工程 软件产品质量要求与评价(SQuaRE)商业现货(COTS)软件产品的质量要求和测试细则》国家标准。

n 测试内容:

依据GB/T 25000.51-2010标准对软件质量进行测试,从功能性、可靠性、易用性、维护性、可移植性等特性进行测试,对提交的文档进行审阅。

依据《(课题)任务书》中技术指标,对以下指标进行测试:

1. 实现移动应用程序注册会员人数50万;

2. 智能科学搜索引擎查准率≥95%;查全率≥95%;

3. 图像中的中文和公式混合识别准确度≥75%。

根据已写好的测试用例,我们上门去客户单位现场进行功能测试,检测每个功能是否都能正常使用,并记录每个功能的测试操作数据、期望结果和实际执行结果。测试前,需要在服务器上放置监控文件,监控测试期间CPU和可用内存的使用情况(如图2)。本文将主要分析并分享一下技术指标的测试方法。

 

图2  监控CPU和可用内存的使用情况

u 技术指标1:实现移动应用程序注册会员人数50万。

上海XX信息技术有限公司购买了友盟的U-App(应用统计)的服务,统计并分析某解答系统iOS版与某解答系统Android版的活跃用户数。【友盟+】作为全球领先的第三方全域数据服务商。通过全面覆盖PC、手机、传感器、无线路由器等多种设备数据,打造全域数据平台。友盟提供iOS、Android和Windows Phone等多平台服务,为客户提供全业务链数据应用解决方案,包括基础统计、运营分析、数据决策和数据业务等,帮助企业实现数据化运营和管理。

通过友盟+服务平台查看移动端的活跃用户数,能够查看到某解答系统iOS版累计用户数为:42,908;某解答系统Android版的累计用户数为:458,518;总数和为:501,426(超过50万注册会员人数)。

u 技术指标2:智能科学搜索引擎查准率≥95%。

查准率(精度)是衡量某一检索系统的信号噪声比的一种指标,即检出的相关文献与检出的全部文献的百分比。普遍表示为:查准率=(检索出的相关信息量/检索出的信息总量)x100%。

l 测试科目:

初高中的数学、物理、化学

l 测试数量:

100个数理化公式

l 测试公式:

Ø 单题查准率

 

Ø 总查准率

 

打开Google Chrome浏览器,输入网址:
#

 

图3  y=kx-b搜索的结果

查准率=检索出的正确结果总数/网页中检索出的结果总数*100%。网页中输入公式y=kx-b,检索出的正确结果总数为27个,检索出的结果总数为27个,单个公式的查准率=27/27*100%=100%,总查准率=1119/1119*100%=100%。满足智能科学搜索引擎查准率≥95%。(如表1、如表2)

表1  某解答系统查准率统计表

  

表2  某解答系统查准率详细记录表

 

u 技术指标3:智能科学搜索引擎查全率≥95%。

查全率(召回率),是衡量某一检索系统从文献集合中检出相关文献成功度的一项指标,即检出的相关文献量与检索系统中相关文献总量的比率。普遍表示为:查全率=(检索出的相关信息量/系统中的相关信息总量)x100%。

l 测试科目:

高中的数学竞赛

l 测试数量:

100个数学公式

l 测试公式:

Ø 单题查全率

Ø 总查全率

 

打开Google Chrome浏览器,输入网址:#

 

图4  |y|<1搜索的结果

 

查全率=检索出的正确结果总数/系统数据库中的结果总数*100%。网页中输入公式|y|<1,检索出的结果总数为2个,系统数据库中匹配到2个,单个公式的查全率=2/2*100%=100%,对100道公式进行查全率计算,平均查全率=(单个查全率n1+单个查全率n2+……+单个查全率n100)/100=(100%+100%+0%+……+75%)=98.75%,智能科学搜索引擎查全率≥95%。(如表3)

表3  某解答系统查准率详细记录表

u 技术指标4:图像中的中文和公式混合识别准确度≥75%。

某解答系统旨在以解决:

1. 中学生目前较为突出存在的购买教辅书繁多、书包和经济负担过重和不必要的补课等问题;

2. 部分师生(尤其是教育欠发达地区)所面临的教学资源和支持相对不足及低效的掣肘,以提高学生学习和教师工作的效率,实现“线上线下,终身学习,教学相长,无处不在”。

上海XX信息技术有限公司将市场上普遍在售的初高中的教辅书、参考书书籍、工具书、作业等题目进行录入系统,建立并整理成在线教育试题库,提高用户搜题识别的成功率。

通过从样本库中抽取100道初高中数学题目使用APP中拍照求解答功能,对100道题目拍照(如图5)并选取图像中的中文和公式进行识别,点击搜索,查找题目详细解析(如图6)(样本库由上海XX信息技术有限公司提供)。

 

图5  拍照的题目

 

 

图6  题目详细解析

 

在测试环境中,使用了某解答系统iOS版与某解答系统Android版APP对100道题目进行拍照、识别和搜索(样本库由上海XX信息技术有限公司提供)。样本库中的100道题目都能够识别并搜索到解题思路,准确度为100%。

最后按照实验室的报告模板《鉴定测试报告[12.2]》导出测试用例,编制软件测试报告。

三:总结与展望

查全率和查准率是评价搜题解题效果的两项重要指标。查全率和查准率与数据库系统和信息检索两个方面直接相关,也就是说,与数据库的收录范围、标引工作和检索式的正确表达等有着非常密切的关系。这两项重要指标类似于目前网络上的搜索引擎,面对大数据量能够自动的抓取万维网信息的程序或者脚本。作为搜索引擎的一个重要组成部分——网络爬虫相关的指标测试,将是我们接下来研究和探讨的主题。

 

版权所有 ©2021. 上海计算机软件技术开发中心 All Rights Reserved 沪公网安备 31011202012393号,沪ICP备14033306号-25