《软件测试技术实战 设计、工具及管理》联载-13

简介: 《软件测试技术实战 设计、工具及管理》联载-13

3.1.6  通过查看Log日志探索


通信系统、嵌入式系统等是没有用户界面的,对这类系统进行探索式测试时,查看系统日志是一种最好的选择。在Linux/UNIX系统中,可以对日志文件进行以下操作(假设log日志为a.log):

>tail a.log |grep error

>tail a.log |grep fail


如果有查询结果,就可以顺藤摸瓜,查找问题所在。当然,并不是通信系统、嵌入式系统中才可以用这种方法,其他系统也可以使用,甚至会挖掘出一些隐藏的、没有爆发的缺陷。


案例3-5java.net.SocketException

在某网站接口测试中发现一个自动化测试用例没有通过,经过使用> tail a.log | grep error,发现如下结果:

java.net.SocketException:Software caused connection abort: socket write error

atjava.net.SocketOutputStream.socketWrite0(Native Method)

atjava.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)

atjava.net.SocketOutputStream.write(SocketOutputStream.java:136)

atorg.apache.jk.common.ChannelSocket.send(ChannelSocket.java:531)

atorg.apache.jk.common.JkInputStream.endMessage(JkInputStream.java:121)

atorg.apache.jk.core.MsgContext.action(MsgContext.java:301)


通过这个结果,开发人员进一步查询,发现到问题的根本原因是MgSQL的连接超时8小时。若空闲超过8小时,MgSQL就会自动断开连接造成的。


3.1.7  在开头/结尾处进行探索


在文件开头或者结尾处进行操作往往也会发现缺陷。


案例3-6:文章结尾的输入。

测试一个文本编辑软件,在编辑的文本中的其他地方插入一些文字都没有问题,但是在文本的最后插入一些文字,再保存后重新打开,被插入的文字不见了。


案例3-7:移动记录到第一条。

通过上下箭头试图把记录上下移动一个单位,测试发现当移动到非第一条时没有问题,但是移动到第一条时,系统立刻卡住没有任何反应。经过排查,发现是由于开发人员在计算时把第一个标记位的“0”记为“1”造成的问题。


3.1.8  多次执行同样操作进行探索


这也是一种经常发现缺陷的情形。比如,软件可以打开任意多个窗口,你试图打开这样的10个、20个、50个,甚至100个窗口,然后进行操作,看系统会有什么反应。这样的问题往往会导致响应速度变慢,甚至系统宕机。


案例3-8ERP软件多窗口操作。

ERP软件可以同时打开多个窗口来编辑库存信息。测试工程师小张打开130个窗口没有问题,但是打开第31个窗口后,系统发生了死机的情形。后来经需求、设计、项目经理、开发、测试等一起讨论,综合各方面因素后决定,最多只允许打开20个窗口,当用户试图打开第21个窗口时,系统将给出“本系统最多只允许打开20个窗口”的提示信息。


3.1.9  通过复制/粘贴进行探索


在文本框中编辑时,往往会用键盘手工进行输入,如果通过复制/粘贴进行操作,也许会发现一些缺陷。一种类型的缺陷是在复制时复制了字符串前后的空格,而程序没有对其进行判断,显示时也把前后空格显示出来。另外一种情形如图3-1所示。


image.png

3-1  富文本编辑器


这种类型的文本框不允许通过鼠标进行复制和粘贴,必须使用Ctrl+CCtrl+V。对于这种情形,需要认真测试。另外,这种情况下,从安全性角度考虑:可以输入简单的HTML标记符,如<a href="…">[J1] <b></b><br><font size="1"></font>…,但是不允许输入存在安全风险性的标记,如<script>[J2] </script>docment.cookiealert…等。


案例3-9:富文本编辑器安全性测试。

富文本框测试用例见表3-6


3-6                                                       富文本框测试用例

操作

期待输出

进入HTML编辑框,输入“<a href="https://www.baidu.com">百度</a>

显示“百度”,点击百度超链接后进入百度网站

进入HTML编辑框,输入“<font size="4">百度</font>

“百度”显示为4号字体


进入HTML编辑框,输入“<script>alert(document.cookies)</script>

显示提示信息:<script></script>docment.cookiesalert等敏感字符不允许输入

进入HTML编辑框,输入“<a href=#?id=1&drop table customer >

显示提示信息:drop table等敏感字符不允许输入

……

……


3.1.10  通过测试结果进行探索

通过某个测试的测试结果,还可以设计出更多、更深入的测试用例。比如,在用户注册时,发现【取消】按键的功能没有起作用,这样就必须对系统中所有表单提交功能中,对含有的【取消】按键都进行测试。再如,在对电子商务测试过程中发现,用支付宝付款存在问题,那就必须测试微信、银行借记卡、银行信用卡付款是否同样存在问题。另外,根据软件缺陷的80/20法则,如果在某个模块中测试出很多问题,那么就需要对这个模块进行更详尽的测试,以便发现更多的缺陷。关于软件缺陷的80/20法则,本书第1.2.4节“原则4缺陷集群性”进行了更深入的介绍。


案例3-10:关于删除的缺陷。

测试某个网站。

测试步骤。[J3]

1)登录系统。

2)对某一篇文章非本人提交的评论点击删除。

3)提示:你没有权限进行删除操作。

4)该评论没有被删除。

5)跳转到其他页面。

6)返回到刚才试图删除的文章页面。


结果:

该评论已经不存在。

根据这个测试结果,考虑到本网站还有BBS模块,于是测试工程师对BBS帖子的删除进行了类似的操作,发现了同样的问题。

测试步骤。[J4]

1)登录系统。

2)对某一条非本人提交的BBS回帖进行删除操作。

3)提示:你没有权限。

4)该回帖没有被删除。

5)跳转到其他页面。

6)返回到刚才试图删除的回帖页面。

结果:

该回帖已经不存在。


顾翔凡言:

敏捷具有适用性,即使用了敏捷,也不要做成假敏捷,掌握敏捷的真谛。

目录
相关文章
|
7天前
|
人工智能 安全 API
CoPaw:5分钟部署你的 AI助理
源自阿里巴巴开源生态的个人 AI 助理——CoPaw。作为阿里倾力打造的开源力作,CoPaw 完美打通钉钉、飞书、Discord 等多平台对话通道,支持定时任务自动化。内置 PDF/Office 深度处理、新闻摘要等强大技能,更开放自定义扩展接口。坚持数据全程私有化部署,绝不上传云端,让每一位用户都能在大厂技术加持下,拥有安全、专属的智能助手。
|
10天前
|
人工智能 自然语言处理 JavaScript
2026年Windows+Ollama本地部署OpenClaw保姆级教程:本地AI Agent+阿里云上快速搭建
2026年OpenClaw凭借本地部署、私有化运行的特性,成为打造个人智能体的核心工具,而Ollama作为轻量级本地大模型管理工具,能让OpenClaw摆脱对云端大模型的依赖,实现**本地推理、数据不泄露、全流程私有化**的智能体验。本文基于Windows 11系统,从硬件环境准备、Ollama安装与模型定制、OpenClaw部署配置、技能扩展到常见问题排查,打造保姆级本地部署教程,同时补充阿里云OpenClaw(Clawdbot)快速部署步骤,兼顾本地私有化需求与云端7×24小时运行需求,文中所有代码命令均可直接复制执行,确保零基础用户也能快速搭建属于自己的本地智能体。
11193 89
|
8天前
|
人工智能 安全 JavaScript
阿里云上+本地部署OpenClaw(小龙虾)新手攻略:解锁10大必备Skills,零基础也能玩转AI助手
2026年,开源AI代理工具OpenClaw(昵称“小龙虾”)凭借“能实际做事”的核心优势,在GitHub斩获25万+星标,成为现象级AI工具。它最强大的魅力在于可扩展的Skills(技能包)系统——通过ClawHub插件市场的数百个技能,能让AI助手从简单聊天升级为处理办公、学习、日常事务的全能帮手。
7163 23
|
9天前
|
人工智能 自然语言处理 机器人
保姆级教程:Mac本地搭建OpenClaw及阿里云上1分钟部署OpenClaw+飞书集成实战指南
OpenClaw(曾用名Clawdbot、Moltbot)作为2026年最热门的开源个人AI助手平台,以“自然语言驱动自动化”为核心,支持对接飞书、Telegram等主流通讯工具,可替代人工完成文件操作、日历管理、邮件处理等重复性工作。其模块化架构适配多系统环境,既可以在Mac上本地化部署打造私人助手,也能通过阿里云实现7×24小时稳定运行,完美兼顾隐私性与便捷性。
6768 14
|
6天前
|
人工智能 JavaScript Ubuntu
5分钟上手龙虾AI!OpenClaw部署(阿里云+本地)+ 免费多模型配置保姆级教程(MiniMax、Claude、阿里云百炼)
OpenClaw(昵称“龙虾AI”)作为2026年热门的开源个人AI助手,由PSPDFKit创始人Peter Steinberger开发,核心优势在于“真正执行任务”——不仅能聊天互动,还能自动处理邮件、管理日程、订机票、写代码等,且所有数据本地处理,隐私完全可控。它支持接入MiniMax、Claude、GPT等多类大模型,兼容微信、Telegram、飞书等主流聊天工具,搭配100+可扩展技能,成为兼顾实用性与隐私性的AI工具首选。
5122 9
|
3天前
|
人工智能 JavaScript 测试技术
保姆级教程:OpenClaw阿里云及本地部署+Claude Code集成,打造全能 AI 编程助手
在AI编程工具百花齐放的2026年,Anthropic推出的Claude Code凭借72.5%的SWE-bench测试高分、25倍于GitHub Copilot的上下文窗口,成为开发者追捧的智能编程助手。但单一工具仍有局限——Claude Code擅长代码生成与审查,却缺乏灵活的部署与自动化执行能力;而OpenClaw(前身为Clawdbot)作为开源AI代理框架,能完美弥补这一短板,通过云端与本地双部署,实现“代码开发-测试-部署”全流程自动化。
2031 13
|
2天前
|
人工智能 安全 前端开发
Team 版 OpenClaw:HiClaw 开源,5 分钟完成本地安装
HiClaw 基于 OpenClaw、Higress AI Gateway、Element IM 客户端+Tuwunel IM 服务器(均基于 Matrix 实时通信协议)、MinIO 共享文件系统打造。
2791 7
|
11天前
|
人工智能 JSON JavaScript
手把手教你用 OpenClaw + 飞书,打造专属 AI 机器人
手把手教你用 OpenClaw(v2026.2.22-2)+ 飞书,10分钟零代码搭建专属AI机器人!内置飞书插件,无需额外安装;支持Claude等主流模型,命令行一键配置。告别复杂开发,像聊同事一样自然对话。
6630 17
手把手教你用 OpenClaw + 飞书,打造专属 AI 机器人
|
4天前
|
人工智能 JSON API
保姆级教程:OpenClaw阿里云及本地部署+模型切换流程+GLM5.0/Seedance2.0/MiniMax M2.5接入指南
2026年,GLM5.0、Seedance2.0、MiniMax M2.5等旗舰大模型相继发布,凭借出色的性能与极具竞争力的成本优势,成为AI工具的热门选择。OpenClaw作为灵活的AI Agent平台,支持无缝接入这些主流模型,通过简单配置即可实现“永久切换、快速切换、主备切换”三种模式,让不同场景下的任务执行更高效、更稳定。
2297 2