首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【deepseek用例生成平台-34】用例生成篇章开始

【deepseek用例生成平台-34】用例生成篇章开始

作者头像
我去热饭
发布2025-07-14 09:17:43
发布2025-07-14 09:17:43
1280
举报
文章被收录于专栏:测试开发干货测试开发干货

本节课开始的是一个全新的篇章,用例设计。

前言:

先来看一个问题:如何用deepseek来生成测试用例呢?

本来在最初的很多同学眼里,无非就是直接把原始需求发给AI,然后让其生成测试用例就完事了。效果上来说呢,有一些瑕疵,比如生成的结果格式五花八门,比如生成的结果并不全面,漏测点太多。比如生成的结果中有重复的甚至是不可能存在的用例....

为此,便有一些同学会想进行迭代和优化:

比如在生成后格式上可以强烈要求固定格式,便于后续的自动整理/去重/统计/导出/阅读等等。

再比如可以在生成前的需求上下功夫,对于太长太多复杂功能的理解并不好,于是想着先拆分成一些子需求或者功能点,分别生成用例后再合起来。

还比如想到不同的功能点适用的用例设计方案也不同,可以针对不同功能点单独配置用例设计方案。

等等等等...

越改越多,越来越复杂,于是乎,自动化的AI用例生成平台就为此而诞生了,也就是本教程。

教程的这个平台分为三个阶段:

1. 生成前:在需求上下功夫

2. 生成中:生成测试用例

3. 生成后:对用例进行整理和使用等

那么,现在本教程进入到了哪个阶段了呢?当然是第二阶段了。


于是本节将正式开始做这个用例生成模块:

正文:

先来看看现在的平台样子:

图片
图片

我们首先,可以先对这个用例生成页面进行设计开发:

首先,我们先要获取到有多少个生成任务?

看一下:

图片
图片

也就是有13个生成任务。每一个生成任务,我的意思都是用一个子线程来做,用并发来跑。每一个子线程,都要带单独的原始需求+具体的用例设计方案+符合的需求功能点列表。

所以,我们这个用例生成页面,首先先应该给基本信息获取并展示出来,这样在漫长的生成过程中,使用者也可以有个数。

先来生成用例生成子页面吧:

新建:CaseMake.vue

图片
图片

内容如下:复制后需自行换行。

代码语言:javascript
复制
<template>    <div  style="text-align: left">         <span style="font-size: small">(生成结果较慢,请耐心等待,不要刷新或关闭页面)</span>        <div>            <br>            <el-card class="custom-card">            <template #header>              <div class="card-header">                  <el-button type="success" @click="srs_fj" style="position: absolute;right: 10px">开始生成</el-button>                <span>基本生成信息</span><span style="font-size: xx-small;color:gray">(请确保无误后点击右侧'开始生成按钮')</span>              </div>            </template>            <div class="card-content">            </div>          </el-card>         </div>    </div></template><script>    import axios from 'axios'    export default {        name: "CaseMake",        data(){            return{              old_srs:'',                new_srs:'',            }        },        methods:{        },        watch: {              'project.id': {                immediate: true, // 立即执行一次                handler(newId) {                  if (newId) {                     axios.get('http://localhost:8000/get_old_srs/?project_id='+this.project.id).then(res=>{                          this.old_srs = res.data                      })                    axios.get('http://localhost:8000/get_new_srs/?project_id='+this.project.id).then(res=>{                          this.new_srs = res.data                      })                  }                }              }            },        props:["project"],        computed: {            name: {              get() {                return this.project.id; // 从prop获取初始值              },            }          }    }</script><style scoped>.card-content{    margin-bottom: 5px;}.input-group {  display: flex;          /* 启用 Flex 布局 */  align-items: center;    /* 垂直居中 */  gap: 5px;             /* 元素间距 */  /* 如果不需要响应式可以固定高度 */  height: 40px;}</style>

然后去设置进入链接:ProjectDetail.vue中设置

图片
图片

结果如下:

图片
图片

看起来还不错!

然后就是把具体的数据信息拿过来了,看下面这段已经写好代码,你复制的也有:

图片
图片

事实上,我们已经有了old_srs ,new_srs 和 project.id了。也就不用再额外再写接口去获取了。直接用就好。

图片
图片

效果如下:可根据喜好自行添加:

图片
图片

好了,篇幅限制,本节到此结束,欢迎追更!




咨询培训请加v:qingwanjianhua

目前第十三期,有多重套餐选择,单买/+旧12期+新12期/全包永久 等。

图片
图片
图片
图片

任选一期上课截图如下:

图片
图片
图片
图片
图片
图片
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-07-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发干货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档