ChatGPT能测试用例,那么测试人员会被取代吗?

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

ChatGPT4已经发布了并引起了巨大的反响有一些基于ChatGPT的应用还是令人印象深刻的比如

  • 画个草图让ChatGPT根据草图去生成一个有完备功能的网页

  • 让ChatGPT实现一个可以在网页上运行的贪吃蛇游戏

  • 看图说话

  • 调教ChatGPT让其在几小时内写一个chrome扩展

在GPT4的论文中有一句话是这么说的

GPT-4和类似的模型可能会从此引起失业甚至那些需要多年经验和教育的职位也可能逐渐消失比如法律服务。

简单理解就是GPT-4模型专治老专家作为功能测试人员领域经验往往是非常核心的竞争力从业年限越久老专家属性越明显。那么ChatGPT可以替代软件测试从业者么

我们不妨直接试一试先验证一下这个想法。

最简单的登录用例

ChatGPT4需要尊贵的会员才能使用bing的聊天功能就成了比较理想的平替了据说其背后也是gpt4模型。下面所有的内容均是使用bing生成的。

问我有一个web系统的登录页面其中有1个用户名的文本框密码文本框以及登录按钮请帮我写一些测试用例来验证登录功能

你好这是Bing。我可以帮你写一些测试用例来验证登录功能。根据网上的资料1234你可以从以下几个方面来设计测试用例

功能测试检查用户名、密码、验证码的输入和校验以及登录按钮的点击和跳转 性能测试检查登录界面的加载速度以及不同情况下的响应时间 界面测试检查登录界面的布局、样式、字体、颜色等是否符合设计要求 安全性测试检查是否有防止SQL注入、暴力破解、跨站脚本等攻击的措施 兼容性测试检查在不同的浏览器、操作系统、分辨率下是否能正常显示和使用 可用性测试检查是否支持Tab和Enter键以及提示语是否友好 你想要我给你具体的例子吗

问是的请给我一些功能测试的例子。

好的我可以给你一些功能测试的例子。根据网上的资料²³⁴你可以按照以下的表格来编写测试用例

测试点用例编码测试用例描述预期结果
正常登录001输入正确的用户名和密码点击登录按钮成功登录
用户名为空002输入空的用户名和正确的密码点击登录按钮提示用户名不能为空
密码为空003输入正确的用户名和空的密码点击登录按钮提示密码不能为空
用户名错误004输入不存在或错误的用户名和任意密码点击登录按钮提示用户名或密码错误
密码错误005输入正确的用户名和错误的密码点击登录按钮提示用户名或密码错误
验证码为空或错误如果有006-007输入正确或错误的验证码以及正确或错误的用户名和密码点击登录按钮根据验证码是否正确提示相应信息
连续多次输入错误如果有008-009连续输入3次或更多次错误的用户名或密码观察系统行为是否锁定账号、显示倒计时、要求重置等根据系统设计给出相应提示
使用Tab和Enter键如果有010-011使用Tab键在各个输入框之间切换使用Enter键代替点击登录按钮观察系统行为是否能正常切换、提交等根据系统设计给出相应响应

这些是一些基本的功能测试用例。你还想要我给你其他方面的测试用例吗

问是的更多用例

你想要我给你哪个方面的测试用例是性能测试、界面测试、安全性测试、兼容性测试还是可用性测试

问性能测试

好的我可以给你一些性能测试的例子。根据网上的资料¹²你可以按照以下的表格来编写测试用例

测试点用例编码测试目的并发用户数模拟用户行为预期结果
登录响应时间li_001测试100个虚拟用户并发时系统登录的响应时间100个1)进入登录界面 2)输入用户名和密码点击“登录”按钮系统登录的响应时间不能超过5秒
登录成功率li_002测试1000个虚拟用户并发时系统登录的成功率1000个1)进入登录界面 2)输入用户名和密码点击“登录”按钮系统登录的成功率不能低于95%
登录负载均衡li_003测试5000个虚拟用户并发时系统是否能够自动分配负载到不同服务器上5000个1)进入登录界面 2)输入用户名和密码点击“登录”按钮系统能够自动分配负载到不同服务器上并保证每台服务器的CPU、内存、网络等资源使用率不超过80%

这些是一些基本的性能测试用例。你还想要我给你其他方面的测试用例吗

源: 与必应的对话 2023/3/16(1) 性能测试中如何编写测试用例 - 知乎. https://zhuanlan.zhihu.com/p/373180730 访问时间 2023/3/16. (2) 登录功能常用测试用例 - 肖兔—随遇而安 - 博客园. https://www.cnblogs.com/Happy-To-Lucky/p/14183788.html 访问时间 2023/3/16. (3) 登录测试用例 - 知乎. https://zhuanlan.zhihu.com/p/375249371 访问时间 2023/3/16.

问用什么工具做性能测试呢

性能测试工具有很多种你可以根据你的需求和预算来选择。根据网上的资料¹²³⁴⁵一些主流的性能测试工具有

这些只是一部分性能测试工具。你还想要我给你其他方面的信息吗

问能给一个jmeter进行登录测试的例子吗 JMeter是一款基于Java开发的性能测试工具可以对Web应用、数据库、FTP等进行压力测试支持多种协议和插件易于扩展和定制。³

要使用JMeter进行登录测试你需要先配置好HTTP请求的参数如协议、服务器名称或IP、端口号、路径等。然后你需要添加一个HTTP请求采样器填写登录接口的URL和请求方法通常是POST以及登录所需的参数如用户名和密码。²⁴⁵

如果登录接口需要携带Cookie或Session信息你还需要添加一个HTTP Cookie管理器或HTTP Header管理器来保存和发送这些信息。¹⁴

最后你可以添加一个查看结果树或聚合报告来查看登录测试的结果如响应时间、响应数据、错误率等。²⁴⁵

下面是一个JMeter进行登录测试的例子

Thread Group
  - Number of Threads: 10
  - Ramp-Up Period: 10
  - Loop Count: 2
HTTP Request Defaults
  - Protocol: http
  - Server Name or IP: www.example.com
  - Port Number: 80
HTTP Cookie Manager
HTTP Request (Login)
  - Path: /login
  - Method: POST
  - Parameters:
    - name: username, value: testuser
    - name: password, value: testpass
View Results Tree

这个例子表示在10秒内模拟10个用户对www.example.com/login接口进行POST请求发送用户名和密码参数并保存Cookie信息。循环执行两次共计20次请求并查看结果树。

希望这个例子能对你有所帮助。

问登录页面的安全测试怎么做

登录页面的安全测试是指对登录页面的安全性进行检查防止用户的信息被泄露或者被恶意攻击。²³⁴

登录页面的安全测试主要包括以下几个方面

  • 用户名和密码是否通过加密的方式发送给Web服务器避免被截取或者篡改。¹

  • 登录成功后生成的Cookie是否是httponly (否则容易被脚本盗取)。¹

  • 登录密码在数据库中不能明文显示要使用哈希或者加密算法进行存储。⁴

  • 登录密码要隐文显示不支持复制粘贴避免被他人窥视或者复制。³⁴

  • 登录用户名需要限制输入大小写避免因为大小写不一致而导致登录失败。⁴

  • 登录失败需要限制登录次数设置验证码或者锁定账号等措施防止暴力破解。²³⁴

  • 登录需要添加唯一识别标志如CSRF Token防止跨站请求伪造攻击。²⁴

这些是一些常见的登录页面安全测试点你还有其他问题吗

初步看来

生成的功能测试用例还是水平在线的特别是用例都有描述和预期结果起码生成的都是结构完备的测试用例。从功能覆盖率上说也没啥问题基本的要点都有而且异常情况也有比较多的覆盖。

在性能测试方面也没啥大问题尽管直接拿来执行不太可能不过测试的思路是有了的。

安全测试方面很惊艳比我自己考虑的都要全面。

难度升级

登录页面太简单来点复杂的。

问: 我有一个测试用例管理系统系统里有一个创建测试用例的功能。创建页面上有3个字段用例名称测试步骤预期结果这三个字段都是必填的还有一个创建按钮如果所有必填项都完备的话点击后会成功创建否则会给出错误提示。请根据我的描述尽可能多的生成测试用例

你好我是Bing。我可以帮助你生成一些测试用例但是你需要提供更多的信息比如测试目标、测试范围、测试环境等。根据你的描述我猜测你的系统是一个基于web的测试用例管理系统¹²⁴⁵如果是这样的话你可以参考以下的一些测试用例

  • 用例编号TC001

  • 所属模块创建测试用例

  • 测试标题验证所有必填字段都完备时可以成功创建测试用例

  • 重要级别高

  • 前置条件已登录系统并进入创建页面

  • 测试输入用例名称为“登录功能正常”测试步骤为“1.打开浏览器2.输入网址3.输入用户名和密码4.点击登录按钮”预期结果为“登录成功并跳转到首页”

  • 操作步骤

    • 1.在用例名称字段输入“登录功能正常”

    • 2.在测试步骤字段输入“1.打开浏览器2.输入网址3.输入用户名和密码4.点击登录按钮”

    • 3.在预期结果字段输入“登录成功并跳转到首页”

    • 4.点击创建按钮

  • 预期结果提示“创建成功”并显示刚刚创建的测试用例

  • 用例编号TC002

  • 所属模块创建测试用例

  • 测试标题验证缺少任意一个必填字段时无法创建测试用例并给出错误提示

  • 重要级别高

  • 前置条件已登录系统并进入创建页面

  • 测试输入

    • a)缺少用例名称其他字段正常填写

    • b)缺少测试步骤其他字段正常填写

    • c)缺少预期结果其他字段正常填写

  • 操作步骤

    • a)在用例名称字段不输入任何内容在其他两个字段正常填写后点击创建按钮

    • b)在测试步骤字段不输入任何内容在其他两个字段正常填写后点击创建按钮

    • c)在预期结果字段不输入任何内容在其他两个字段正常填写后点击创建按钮

  • 预期结果

    • a)提示“请输入用例名称”并且不会创建新的测试用例

    • b)提示“请输入测试步骤”并且不会创建新的测试用例

    • c)提示“请输入预期结果”并且不会创建新的测试用例

问请补充更多用例

好的我可以根据你的需求再补充一些测试用例但是你需要明确你的测试目标是什么比如功能测试、性能测试、安全测试等。不同的测试目标需要考虑的因素和场景也不同。¹²³⁴⁵

假设你的测试目标是功能测试那么你可以参考以下的一些测试用例

  • 用例编号TC003

  • 所属模块创建测试用例

  • 测试标题验证输入非法字符时无法创建测试用例并给出错误提示

  • 重要级别中

  • 前置条件已登录系统并进入创建页面

  • 测试输入

    • a)在用例名称字段输入特殊字符或空格在其他两个字段正常填写后点击创建按钮

    • b)在测试步骤字段输入特殊字符或空格在其他两个字段正常填写后点击创建按钮

    • c)在预期结果字段输入特殊字符或空格在其他两个字段正常填写后点击创建按钮

  • 操作步骤

    • a)在用例名称字段输入“@#$%^&*”在其他两个字段正常填写后点击创建按钮

    • b)在测试步骤字段输入“@#$%^&*”在其他两个字段正常填写后点击创建按钮

    • c)在预期结果字段输入“@#$%^&*”在其他两个字段正常填写后点击创建按钮

  • 预期结果

    • a)提示“请输入有效的用例名称”并且不会创建新的测试用例

    • b)提示“请输入有效的测试步骤”并且不会创建新的测试用例

    • c)提示“请输入有效的预期结果”并且不会创建新的测试用例

  • 用例编号TC004

  • 所属模块创建测试用例

  • 测试标题验证超过最大长度限制时无法创建测试用例并给出错误提示

  • 重要级别中

  • 前置条件已登录系统并进入创建页面假设每个字段都有最大长度限制为1000个字符。

  • 测试输入

    • a)在用例名称字段输入超过1000个字符在其他两个字段正常填写后点击创建按钮

    • b)在测试步骤字段输入超过1000个字符在其他两个字段正常填写后点击创建按钮

    • c)在预期结果字段输入超过1000个字符在其他两个字段正常填写后点击创建按钮

  • 操作步骤

    • a)在用例名称字段输入“登录功能正常”重复200次在其他两个字段正常填写后点击创建按钮

    • b)在测试步骤字段输入“1.打开浏览器2.输入网址3.输入用户名和密码4.点击登录按钮”重复50次在其他两个字

表现惊艳

  • 不仅可以理解测试用例管理系统是什么而且还把登录用例作为测试数据放在了用例里

  • 基本上功能测试的点都能覆盖到

不过因为用例管理系统里有很多领域相关的知识比如用例编号应该有格式等这些是bing的搜索结果里所缺失的所以生成的用例偏common sense 专业程度不够。但如果基于特定的领域去做训练的话专业程度提升也是触手可得的事情。

我的看法

如果训练的材料足够多且精准ChatGPT完全可以替代测试人员进行用例的编写但是目前看来生成的用例还是需要人工去执行所以点来点去的工作短期无法取代不过后面AI的发展可能会从生成内容变成执行操作因此未来的某一天点点点的工作也可能被取代。不过gpt生成的用例是否合理并且有无遗漏这点还是要专业人士来评判所以测试老专家们大可不必担心以后的测试行为可能变成让AI写用例老司机修改和补充用例最后让初级和中级测试人员甚至是AI进行用例的执行和反馈。

除了写用例之外测试同学还可以使用ChatGPT来进行自动化代码的生成从而可以提高一些生产效率所以短期来看使用ChatGPT辅助进行自动化测试的生产力提升的操作还是可以期待一下的。这可以比较好的解决一些测试同学代码能力不足的问题不过凡是都有两面性尽管可以用AI来辅助做自动化测试但是AI生成的代码如果有问题需要修改的话还是需要很强的编程能力的。所以哪怕是辅助做自动化测试本质上还是利好老司机。

中期看来AI将会成为强大的测试提效工具比如生成一些测试文档用例等。

从足够远的远期来看最终大部分基于有限经验的进行测试的测试人员可能会被AI取代剩下一些老司机进行更具创造性的测试工作。测试人员的规模可能会减少但测试这个角色应该还会存在。

你的既有经验将被机器学习和传承你的创造力才是立身之本。

最后 下方这份完整的软件测试视频学习教程已经整理上传完成朋友们如果需要可以自行免费领取【保证100%免费】

在这里插入图片描述

 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: ChatGPT