爬虫1.0测试报告
1、单元测试
模块类 |
输入 |
预期 |
实际 |
分析 |
网页分析 |
一个包含若干链接的网页 |
将页面上的URL作初步筛选过滤后提取出来 |
网页上的URL都被提取出来放在队列中 |
模块功能正常 |
队列 |
- |
队列里的URL项有序进入下载 |
无异常 |
模块功能正常 |
下载 |
提供URL项 |
按提供的地址获取该网页内容 |
该网页被下载 |
模块功能正常 |
分类 |
- |
将下载到的内容分类放到指定文件夹里 |
网页上的内容分块存放 |
模块功能正常 |
线程 |
- |
需要下载的URL数量非常多时分多线程同时下载提高效率 |
下载速度明显加快 |
模块功能正常 |
分模块测试的工作比较简单,主要是检查各模块和一些函数块是否正常工作。
2、本地站点测试
(测试:刘泽枫)
接下来进行全局测试,模拟爬取过程,分析整个程序运行的结果和性能。
先在本机上制作静态网页。第一个作为被爬取网页,设置10个链接:其中5项符合条件,有2个URL无效,还有3个不符合条件,用作筛选对比项。其他五个作为链接对象,分别设置ppt,word,html,pdf,等不同的格式和内容,用作分类参考项。
将第一个网页作为爬取对象,在界面输入该站点下的路径。程序运行后,除2个无效链接,其他URL被访问。按格式和内容的不同分别放在了预设的ppt,word,html,pdf,四个文件夹里。不符合条件的文件未被下载和分类。
初步测试程序运行正常,有必要的话可以修改网页内容进行多次反复测试。
3、爬取外链
(测试:由之望)
因为本地制作的网页有很多不足,给出的样例情况不够全面,因此进一步检测必须爬取一些外链作为实际参考数据。
项目/软件 |
网络爬虫 |
程序版本 |
1.0 |
|||
编制人 |
贾伟,邓嘉,吴翰雄,刘泽枫,祁彦博,由之望,闫生辉 |
|||||
编制时间 |
2012.10.15——2012.11.18 |
|||||
相关用例 |
无 |
|||||
功能特性 |
爬取URL,将网页分类并存储 |
|||||
测试目的 |
测试团队编写的爬虫程序能否良好的爬取网页及其工作的效率 |
|||||
预置条件 |
关于计算机方面的网页 |
特殊规程说明 |
有些网页不允许爬取 |
|||
参考信息 |
《亲自动手编写爬虫》 |
|||||
测试数据 |
操作步骤 |
期望结果 |
实际结果 |
|||
1 |
在代码中输入网址:http://fight.pcgames.com.cn/warcraft/dota/gl/1210/2667970.html 在界面中输入要爬取的URL数量:300 |
对网页的链接无重复爬取,尽量爬取网页的所有链接 |
爬取的网页无重复,但并不能爬取所有链接,爬取链接的顺序与原网页不一致 |
|||
2 |
在代码中输入网址:http://www.cnblogs.com/ 在界面中输入要爬取的URL数量:500 |
对网页的链接无重复爬取,尽量爬取网页的所有链接 |
网页爬取无重复且能爬取到所有链接 |
|||
3 |
在代码中输入网址:http://www.renren.com/ 在界面中输入要爬取的URL数量:500 |
对网页的链接无重复爬取,尽量爬取网页的所有链接 |
爬取的网页无重复 人人网的首页链接少的可怜,只爬到了42个…… |
|||
4 |
在代码中输入网址:http://user.qzone.qq.com/448326683?ptlang=2052 在界面中输入要爬取的URL数量:300 |
对网页的链接无重复爬取,尽量爬取网页的所有链接 |
这是邓嘉的qq空间…… 爬取的网页无重复,因为只爬到了1个url……
|
|||
5 |
在代码中输入网址: 在界面中输入要爬取的URL数量: |
对网页的链接无重复爬取,尽量爬取网页的所有链接 |
|
4、BUG收集整理
经过实际运行后发现一下问题:
|
问题描述 |
解决方案 |
1 |
某些网页大小未知,不会对其下载 |
不作处理。因为考虑到如果网页过大的话下载会造成问题 |
2 |
一些URL不同,但链接的网页内容基本上相同,导致下载的内容重复 |
暂时没有找到合适的解决方案 |
3 |
某些类型未知的非html类动态网页,下载后未对其进行分类 |
根据不同站点建立模版,将该类网页合理分类 |
4 |
一些和计算机无关但是有很多链接的网页,爬取效果差 |
对网页进行分析,按实际内容建立相应模版,将部分URL过滤掉不下载 |
5 |
某些网页分析内容的时候速度异常 |
根据网页内容建立模版分析解决 |
END
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库