大数跨境
0
0

AGI|在测试活动中如何利用AI寻找测试点?

AGI|在测试活动中如何利用AI寻找测试点? AI实践工程院
2024-12-03
1
导读:提高效率好帮手!



神州数码云基地

AGI专栏

在测试活动中如何利用AI寻找测试点

随着人工智能技术的迅猛发展,AI在软件测试领域的应用也越来越广泛。特别是在生成测试点方面,AI可以帮助测试工程师更高效地发现潜在问题,提高测试覆盖率和质量。


本文将从提示词的角度出发,详细介绍如何利用AI生成高效、全面的测试点。


 作者 

张青青 | 软件测试工程师




Part1

什么是提示词?


提示词(Prompt)是与AI交互的关键。它们是向AI提供信息和指令的文字输入,帮助AI理解用户需求并生成相应输出。在生成测试点时,提示词的设计至关重要,因为它直接影响到AI生成结果的准确性和有效性。



Part2

设计有效的提示词


为了生成一个完整的测试点,提示词需要包含以下几个关键内容:


1.系统模块或功能描述


首先,明确你要测试的系统模块或功能。例如:“用户登录功能”、“购物车模块”等。这个描述越具体,AI生成的测试点越精准。


示例提示词:“请为用户登录功能生成测试点”。


2.输入条件


明确输入条件,即系统在不同情况下的表现。例如,输入合法或非法的数据,正常或异常的操作等。


示例提示词:“请为用户登录功能生成测试点,用户可以使用用户名和密码登录,输入的用户名不存在,密码错误等”


3.预期输出


描述预期结果,这有助于AI理解目标行为。例如,成功登录、显示错误消息等。


示例提示词:“请为用户登录功能生成测试点,用户可以使用用户名和密码登录,输入的用户名不存在,密码错误则登录失败并提示用户错误信息,输入正确的用户名和密码则登录成功 ”


4.边界条件


边界条件是指系统在极限情况下的表现。例如,最小或最大输入值,空值等。也可以包含一些有关联影响的,例如:账号过期,数据失效等


示例提示词:“请为用户登录功能生成测试点,用户可以使用用户名和密码登录,登录的用户需要在系统注册且是有效的才可以登录成功,密码过期的也无法登录”


5.异常处理


考虑系统在异常情况下的处理方式,例如网络故障、服务器错误等。


示例提示词:“请为用户登录功能生成测试点,用户可以使用用户名和密码登录,登录的用户需要在系统注册且是有效的才可以登录成功,密码过期的也无法登录,并考虑异常处理,例如:网络故障时的表现。”



Part3

示例


● 生成测试点


例如,下图是智能体应用在chat页面的访问权限的需求



让AI根据生成这个需求测试点“应用访问权限如果是内部,则进入chat页面的时候需要先登录,且只能使用白名单组织内的用户登录,白名单外的用户无法登录”


得到的结果如下,可以看到输出的结果大部分是来源于我的提示词,AI将提示词分析并重新整合,输出一份测试点。这就意味着,提示词越详细输出的内容越会贴近想要的结果



如果需要AI输出异常场景、边界测试,需要告诉他哪些异常以及边界场景需要考虑


如(Prompt)


我是一名移动端软件测试工程师,下面这份需求帮我输出一份测试点


需求说明:应用访问权限如果是内部,则进入chat页面的时候需要先登录,且只能使用白名单组织内的用户登录,白名单外的用户无法登录


边界条件:用户名密码空


异常处理:用户权限被修改,需要重新获取用户权限,权限不足自动退出到登录页面


得到的结果如下:



2次测试你会发现,AI输出的测试点并不是很稳定,所以仍然需要在生成测试点后人工进行检查输出是否准确。


生成用例


有两种方式来处理需求相关事务。其一,如果需求点足够清楚的话,可以直接将需求描述写到说明中,采用这种方式,最终结果往往能与预想较为契合;其二,先将需求生成测试点,然后用测试点生成用例,通过这一流程操作,同样能让最终结果与预想不会相差甚远。


下面是直接贴上需求说明的例子:


我是一名移动端软件测试工程师,下面这份需求帮我输出一份测试点.


需求说明:应用访问权限是内部,进入chat页面的时候需要先登录,且只能使用白名单组织内的用户登录,白名单外的用户无法登录成功到chat页面


所属模块:chat权限


边界条件/预期结果:用户名或密码空不能登录成功,没有权限不能登录成功,登录失败要提示


异常处理:用户权限被修改,需要重新获取用户权限,权限不足自动退出到登录页面


输出要求:需要包含编号、用例名称(描述要测的内容)、所属模块(填写测试点所属模块名称)、前置条件(非必填,可为空)、测试步骤、预期结果


输出格式:表格显示



下面是使用测试点生成用例的例子:


编辑模版:


我是一名移动端软件测试工程师,下面这份需求帮我输出一份用测试用例


所属模块:chat权限


测试点:

* 测试应用访问权限为内部时,进入chat页面是否需要先登录。

* 测试应用访问权限为内部时,是否只能使用白名单组织内的用户登录。

* 测试应用访问权限为内部时,白名单外的用户是否无法登录。

* 测试当用户名为空时,是否无法登录。

* 测试当密码为空时,是否无法登录。

* 测试当用户权限被修改时,是否能够重新获取用户权限。

* 测试当用户权限不足时,是否会自动退出到登录页面。


输出要求:需要包含编号、用例名称(描述要测的内容)、所属模块(填写测试点所属模块名称)、前置条件(非必填,可为空)、测试步骤、预期结果


输出格式:表格显示


输出结果如下:



利用AI寻找测试点是提高软件测试效率和质量的一种有效方法,通过理解需求、定义提示词、自动生成测试点和用例,并不断进行优化和改进,我们可以显著提升测试活动的效果,但是也需要注意的是AI直接输出的结果,大部分不够准确,还是需要经过人工审核。





Hello~

这里是神州数码云基地
编程大法,技术前沿,尽在其中
超多原创技术干货持续输出ing~


想要第一时间获取
超硬技术干货
快快点击关注+设为星标



- END -

听说有AI大佬社群?怎么加入?

后台回复“AI”即可。


往期精选




LlamaIndex 进行 CRAG 开发用来强化检索增强生成




如何在神州问学-多云版创建工作流




探索跨模态大模型:桥接视觉与语言


了解云基地,就现在!


【声明】内容源于网络
0
0
AI实践工程院
我们致力于用数字技术重构企业价值,助力企业实现数字化转型升级。
内容 434
粉丝 0
AI实践工程院 我们致力于用数字技术重构企业价值,助力企业实现数字化转型升级。
总阅读409
粉丝0
内容434