如何用ChatGPT做软件测试?(内附实操案例)

科技   2024-11-05 13:26   北京  

关注我们丨文末赠书


随着ChatGPT等大语言模型的成功应用,人工智能为软件领域带来了新的视角和强大的工具。

如今AI的热潮已持续近两年,大模型热点也层出不穷,但这一切似乎与我们的日常工作仍有很大距离。时至今日,大家最想问的问题仍然是:

我们到底要如何用AI来辅助工作?

《用ChatGPT做软件测试》一书正是在此背景下诞生的。本书的创作团队只想解决一个问题,那就是如何利用ChatGPT做软件测试,从而提高测试效率和质量。


点击下方,即可购书


Part.1

一个案例带你了解ChatGPT如何自动生成测试用例


测试用例的编写是测试人员必须认真面对的一件耗时费力、枯燥乏味的工作。如何才能快速高效地编写能够覆盖功能需求的测试用例,一直是软件测试领域的一个重要挑战
现在,我们借助 ChatGPT,可以采用一种方法来自动生成功能测试用例,从而提高功能测试用例编写的效率。
以下是自动生成测试用例的步骤:


问题定义:第一步是清晰地定义要测试的功能或特性,并提供足够的上下文信息。提供足够的上下文信息对 ChatGPT 生成准确的功能测试用例至关重要。


ChatGPT 交互:测试人员与 ChatGPT 进行交互,向其提供问题描述和上下文信息。ChatGPT 将根据这些信息来生成测试用例,在操作过程中必须注意提供清晰的问题描述和进行适时的追问。


测试用例生成:ChatGPT 生成的内容是自然语言描述,需要将其转化为可执行的测试用例。ChatGPT 生成的测试用例要符合测试用例设计规范,必须保证输出的测试用例格式一致,且每个测试用例都要有用例编号、用例名称、操作步骤以及预期结果。


用例评审和改进:ChatGPT 生成功能测试用例后,需要进行测试团队内、外部评审,收集相关评审意见,依据评审意见进行功能测试用例的修改与完善。功能测试用例必须要及时维护,以保证功能测试用例与软件系统及需求规格说明书的一致性。


接下来,我们以百度搜索项目为例,介绍如何应用 ChatGPT 来生成功能和安全测试用例。


问题定义:测试团队定义问题描述,着重测试百度搜索项目的核心业务,即关键字搜索业务,这是平时用户应用最为频繁的功能之一,是测试人员必测的内容。


ChatGPT 交互:测试团队与 ChatGPT 进行交互,向其提供问题描述;ChatGPT理解测试的范围,并迅速生成相应的测试用例。


在 ChatGPT 的输入框中输入:

请生成一份基于百度关键字搜索业务的测试用例集。你是一名资深测试专家,基于目前百度搜索业务,输出一份名称为“百度关键字搜索——测试用例集”的测试用例集文档,要求考虑等价类、边界值、判定表、正交实验法等测试用例设计方法,以及 SQL 注入、XSS 攻击等安全测试用例的设计。


查看ChatGPT输出的结果,如下图所示



测试用例生成:从生成的百度关键字搜索业务测试用例集来看,它并不符合测试用例的规范格式。一个测试用例通常至少包括测试编号、前置条件、测试步骤、预期结果这 4 项内容,目前 ChatGPT 给出的格式明显不符合要求。


因此,借助 ChatGPT 会话支持上下文的功能,我们继续输入“你并没有按照测试用例的

格式输出,请按照规范的测试用例格式输出相关用例。

输出结果如图所示。



这次 ChatGPT 输出的测试用例集完全符合要求。但这种测试用例还不够直观,能不能让其以表格的形式显示呢?继续输入“请以表格形式展示,谢谢。”

输出结果如图所示。



至此,ChatGPT 以表格形式生成了关于百度关键字搜索的测试用例集,但是细心的读者可能已经发现了问题,即尽管我们让其使用边界值用例设计方法来编写测试用例,但事实上在

已输出的测试用例集中并没有使用该用例设计方法的测试用例。

因此,我们不能盲目相信 ChatGPT 可以帮我们做好一切事情,必须认真检查其输出内容的正确性和完整性


用例评审和改进:对测试用例的评审和改进是确保软件质量的关键环节。结合前面 ChatGPT 生成的功能和安全测试用例,进行测试团队内部的测试用例评审,在进行内部评审时,测试团队成员发现了以下问题:


有的测试用例的测试步骤中夹杂着HTML 标签。

有的测试用例的测试步骤仅有 1 个步骤,却有序号。

有的测试用例重复,如 TC001(见图 3-3)和 TC019 测试用例就非常相似。

有的测试用例不一定包含真实数据库表,如 TC011 SQL 注入攻击测试用例可能就不存在 users 表等,需要和研发人员进一步确认是否存在该表。

限于篇幅,我们只罗列几点内容,测试团队针对评审意见进行了相关测试用例的问题修正与疑问明确,经过测试用例去重以后,形成基于百度关键字搜索业务的功能和安全测试用例集。



测试用例的评审和改进是一个持续的过程,随着项目的发展、需求变更和新功能的加入,测试用例必须不断地进行更新和优化。

至此,我们成功地利用ChatGPT自动生成了测试用例。而刚刚的内容都来源于《用ChatGPT做软件测试》一书的第3章“ChatGPT 自动生成测试用例”,由此可见本书的实用性和可操作性。


Part.2

这本书有什么亮点?


《用ChatGPT做软件测试》有以下四大特点:


内容全面:本书涵盖了从需求规格说明书的生成到测试计划的制定,从功能测试用例到自动化测试的深度应用,再到接口测试和性能测试的高效实现等各个环节。每个章节都是精心设计的,确保读者能够获得关于ChatGPT在软件测试应用的全方位知识。


实用性强:书中不仅有理论讲解,更有大量实际案例和操作指南,帮助读者快速掌握如何使用ChatGPT生成测试数据、分析测试结果、编写测试报告等具体技能。无论是初学者还是经验丰富的测试工程师,都能从中受益。


易于上手:语言通俗易懂,实例丰富,即便是对AI技术不太熟悉的读者也能轻松上手,逐步掌握ChatGPT在软件测试中的应用技巧。


促进职业发展:除了技术层面的指导外,本书还特别强调了ChatGPT在个人职业发展中的应用,如技能提升、职业规划和求职准备等方面,为读者的职业生涯注入新的动力。


对于本书的内容,你可能还有很多疑问。为了解决读者的问题,作者和编辑团队在社群中收集了一些热门问题,并进行了解答。


Q

我是刚入门大语言模型的读者,可以看懂这本书吗?

A

当然可以!这本书专门为初学者设计,内容通俗易懂,从最基础的概念开始讲解。如果你对大语言模型还不熟悉,它也不会让你“满头问号”。书里的内容从基础开始讲,带你一步步走过各种案例,比如教你用ChatGPT写需求、编写测试计划、自动生成测试用例等。可以说,跟着本书学习,你会发现自己像带了个智能助手,工作效率噌噌上涨!

Q

想用ChatGPT做一些实际工作,本书对我有哪些帮助?

A

如果你想用大语言模型做实际工作,这本书绝对是你的“好帮手”!它不仅讲理论,更是满满的实操经验。以下是你能从中获得的帮助:

自动化工作,省时省力:书中教你如何用ChatGPT生成测试计划、功能测试用例、接口测试用例等,还能帮你自动化生成测试数据和分析结果。你可以大幅减少手工操作,把烦琐的工作交给模型处理,自己轻松做“掌控全局”的人。

提高工作效率,提升成果质量:通过学习书中的方法,你会发现大语言模型不仅能提升工作速度,还能提高测试的准确性。比如自动生成需求文档和测试脚本,不仅快,而且减少了人工错误。

持续集成与自动化测试的全面指导:本书还深入介绍了如何将ChatGPT集成到CI/CD(持续集成/持续交付)流程中,实现自动化测试和性能测试。这对你希望提升团队整体效率,或者参与大型项目非常有帮助。

适用于多种场景的案例分享:对于电商、社交媒体、自动驾驶等行业,书里都有实际案例供你参考。这些案例让你在实际项目中得心应手地应用。总之,这本书不仅能让你掌握大语言模型(ChatGPT)的应用,还能让你在工作中游刃有余,成为提升效率的“秘密武器”!

Q

我之前有过大语言模型(ChatGPT)的相关工作经验,有必要看这本书吗?

A

即使你已经有了大语言模型的相关工作经验,这本书对你来说仍然有很大的价值。

A

这本书可以给我的工作带来哪些帮助?

Q

这本书可以从多个方面为你的工作带来帮助,提升你的技能和工作效率:

更高效的自动化测试流程:通过本书,你可以学习如何利用ChatGPT自动化生成测试计划、测试用例和测试数据,从而大幅减少手动编写测试用例的时间。它还教你如何利用ChatGPT分析测试结果、生成报告和辅助持续集成(CI),帮助你将工作流程变得更加自动化和高效。

跨领域的实战应用:书中提供了不同领域的实际案例,这能让你在处理不同行业的项目时有更多借鉴,帮助你在新领域中更快找到应用大语言模型的方式。

深入集成现有工具链:本书讲解了如何将ChatGPT与主流的测试工具(如Postman、JMeter等)深度集成,提升测试自动化程度。这些进阶集成技巧可以帮助你优化现有的工作流程,减少重复性工作,提升团队的整体测试效率。

提升个人技能与团队合作:通过书中的方法,你可以在日常工作中更加高效地生成需求文档、测试用例等材料,还能在团队中发挥ChatGPT的协作能力,帮助团队更好地分工和沟通,进一步提升项目的整体效率。总之,这本书能帮助你优化现有工作流程,提升测试自动化水平,同时为你的职业发展提供更广泛的应用思路和技术支持。


Part.3

结语


技术的发展给软件研发和测试团队带来了前所未有的挑战,也对整个项目团队的工作效率提出了更高的要求。面对这样的环境,AI工具的出现既是我们的机遇,也是挑战。

《用ChatGPT做软件测试》不仅是一本技术指南,更是提升测试效率和质量的实用工具书。无论你是初学者还是经验丰富的测试工程师,都能从中找到有价值的实用技巧。通过本书的学习,你将掌握 AI 赋能的测试方法,迈向自动化和智能化的未来。

希望这本书能成为你职业发展道路上的有力助手,助你在软件测试领域取得更大的成就。


点击下方,即可购书




您认为到底要如何用AI来辅助工作?


在留言区参与互动,并点击在看和转发活动到朋友圈,我们将选1名读者获得e读版电子书1本,截止时间11月15日。


异步图书
人民邮电出版社IT专业图书品牌,发布最新纸书、电子书资讯,分享深度技术文章,与作译者互动交流。
 最新文章