测试方法及过程

在正式发布前,我们对后端代码、前后端接口、服务器以及前端的页面和功能做了多种测试,主要包括对后端代码的单元测试、针对接口的测试、压力测试以及功能测试。

后端代码单元测试

该部分测试主要是针对后端代码进行的单元测试,通过向后端代码发送构造的多种数据,对各种情况进行测试,部分代码如下:

    def test_ops_two(self):
data = {
"nets":{
"canvas_1":{
"name":"start",
"attribute":{
"start":"true"
},
"left":"206px",
"top":"182px"
}
},
"nets_conn":[ ],
"static":{
"epo":"",
"learning_r":"0.5",
"bat_si":"1"
}
}
result = ["Undefined"]
res = NeuralNetwork.translate.ops.main_func(data)
self.assertEqual(result, res)

接口测试

针对前后端的接口,我们都进行了相应的测试,检验接口的正确性,下面是测试用户注册的一个接口测试。

    def setUp(self):
self.user_info={
"username":"test1",
"password":"123456",
"email":"4372849@qq.com"
} def test_register(self):
client = APIClient()
response = client.post("/api/user/register/",data=self.user_info,format='json')
print(response)
self.assertEqual(response.status_code,201)

压力测试

同样通过badboy + jmeter的方式,对网站进行压力测试,设置并发数为100,对用户登录查看模型,查看帮助文档等进行测试。

功能测试

主要针对网站在不同平台下主要功能的测试,详情见下面的测试矩阵。

针对Gamma阶段的新功能、新特性发现的Bug

Gamma阶段我们主要对生成的代码进行优化以及优化前端界面,对生成的代码加入更多注释,便于理解,以及将参数框的弹出式改成了右边栏固定模式,鼠标放置在导航栏时高亮,并对帮助文档进行了更具体的介绍,极大地提升了用户体验。以下是测试过程中针对新功能发现的问题:

  • 参数输入中文没有报错(Gamma)
  • 在查看经典模型时,右边参数框和高亮没显示(Gamma)
  • 帮助界面与正文重叠(Beta)
  • 点击帮助、联系我们等再返回主界面时画布会清空(Beta)
  • 用户搭好模型之后想登录保存,登录之后画布清空(Beta)

针对新功能的场景测试

典型用户一

猿巨:不了解计算机,路人,一个偶然机会打开网站

需求和目标:试试网站的用途,用来增加闲时的乐趣

使用场景:

猿巨发现导航栏的高亮显示很有趣,于是对导航栏的每个链接进行点击,跳转到相应界面。

点击帮助文档时,发现里面有视频,观看之后,也想自己动手玩一玩。

于是回到画布按照视频开始搭建模型,在弹出的右边栏参数中输入参数后,生成代码。

典型用户二

车夫:对深度学习研究较深,经验丰富,希望能快速搭建出较复杂的模型

需求和目标:快速搭建较复杂的模型并且能实时修改,不用重新搭建

使用场景:

车夫注册了一个账号并登录。

查看帮助文档的最新介绍了,了解了网站的使用方法,于是回到画布开始搭建模型。

车夫利用帮助文档获得的信息,搭建了一个自己的模型,在右边栏输入相应模块的参数,在左边栏输入全局参数,保存模型。

车夫在搭建时遇到一些问题帮助文档不能完全为他解除困惑,于是他点击联系我们,为我们进行反馈。

回归测试

对一些错误处理情况等,我们做了回归测试

        def test_ops_one(self):

            data = {
"nets":{ },
"nets_conn":[ ],
"static":{
"epoch":"1",
"learning_rate":"0.5",
"batch_size":"1"
}
}
result = ["None"]
res = NeuralNetwork.translate.ops.main_func(data)
self.assertEqual(result, res)

测试矩阵

测试矩阵 功能测试 页面测试
测试浏览器 测试环境(浏览器版本) 组件拖拽 组件删除 组件连线 参数输入 点击事件(组件、按钮、链接)下拉框选择 报错情况 注册登录 保存模型 查看模型 删除模型 生成代码 代码下载 主页面 联系我们页面 帮助页面 代码生成页面 页面切换
chrome 74.0.3729.131 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
火狐 67.0(64位) 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
ie 11.765.17134.0 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
edge 42.17134.1.0 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
QQ 10.4.3505.400 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
UC 6.2.4098.3 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
Opera 60.0.3255.95 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
搜狗 8.5.10.30358 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
猎豹 6.5.115.18552 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常

Gamma版本的出口条件

在Gamma阶段,我们的目标是在之前的基础上,加入导航栏的高亮显示,参数框的右边栏固定以及帮助文档的细化和代码的具体解释。因此,我们将这一版本的出口条件设置为:

实现参数框的转移,导航栏链接鼠标放置或点击时高亮,帮助文档简单易懂,生成的代码解释清晰

目前项目的核心功能就是支持注册登录,并且用户可以通过组件的拖拽、连线、配置参数搭建模型,通过模型能生成相应的代码并且支持下载,用户登录之后还可以保存、修改及删除自己搭建的模型。在Beta版本中,我们基本完成了核心功能,这一阶段的最重要工作放在提升用户体验上,于是我们对交互方式(参数的不定弹出式变成固定式)和界面进行了优化。

出口目标可以概括为:

  • 参数框改为固定位置的形式
  • 导航栏的链接在鼠标放置或点击时高亮显示
  • 帮助文档全面且简单易懂
  • 生成的代码解释清晰

【Gamma】测试报告的更多相关文章

  1. gamma测试报告

    Gamma阶段测试报告 测试计划及结果 我们针对测试做了比较多的改进. 测试代码分为针对纯java部分的单元测试和需要android运行环境的自动化仪器化测试 单元测试 这一部分基本继承Beta阶段的 ...

  2. 【Gamma】PhyLab 测试报告

    PhyLab Gamma测试报告 测试中发现的bug Gamma阶段新Bug Bug 可能原因 部分错误码设置与原先抛异常的逻辑冲突 原先代码中使用了一些特殊的办法处理异常 Beta未发现Bug Bu ...

  3. 【Gamma】“北航社团帮”展示博客

    目录 团队介绍 项目愿景 整个项目的预期典型用户 功能展示 原预期用户数量 项目使用情况数据分析 用户量变化 学生认证人数 社长认证人数 入社申请数 活动发布 新闻发布 网页端使用情况 小程序打开次数 ...

  4. BuaaRedSun团队博客目录——北航社团项目

    目录 一.Scrum Meeting 1. Alpha 2. Beta 3. Gamma 二.测试报告 三.发布说明 四.技术博客 后端 前端 五.习得的软工原理/方法/技能? Alpha Beta ...

  5. Scrum Meeting 博客汇总

    Scrum Meeting 博客汇总 一.Scrum Meeting 1. Alpha 第一次 Scrum Meeting 第二次 Scrum Meeting 第三次 Scrum Meeting 第四 ...

  6. [Gamma阶段]测试报告

    [Gamma阶段]测试报告 博客目录 测试方法及过程 在正式发布前,为检验后端各接口功能的正确性,后端服务器对压力的耐受程度,以及前端各页面.功能的运行情况,我们对我们的服务器及小程序进行了多种测试. ...

  7. 【Gamma】“北航社团帮”测试报告——小程序v3.0

    目录 测试计划.过程和结果 后端测试--单元测试与覆盖率 后端测试--压力测试 展示部分数据 平均数据 前端测试--小程序v3.0 新功能 各页面均可正常打开,跳转,回退 授权登录与权限检查 页面数据 ...

  8. Gamma阶段测试报告

    测试计划 Gamma阶段依然以场景测试为主.我们归纳了三条场景主线: 一.典型用户:查看 访问排名页面 / 搜索课程 查看课程页面 查看教师页面 为他人评论点赞或点踩 二.典型用户:评论 登录网站 搜 ...

  9. [Gamma]阶段测试报告

    后端测试 我们进行了覆盖性测试,覆盖率达到77%. Beta阶段发现的Bug 项目显示的图片错误 无法使用搜索框 发布实验室项目的按钮点击无法跳转 连续点击发帖按钮可能发出多个相同的帖子 不需要点击我 ...

随机推荐

  1. java8时间处理实例

    实例: package com.javaBase.time; import java.time.Clock; import java.time.LocalDate; import java.time. ...

  2. java如何消除太多的if else判断?

    1.简介 if判断语句是很多编程语言的重要组成部分.但是,若我们最终编写了大量嵌套的if语句,这将使得我们的代码更加复杂和难以维护. 让我们看看能否使用别的方式来做呢. 设计模式是为了更好的代码重用性 ...

  3. 还不错的PHP导出EXCEL函数挺好用的

    直接上函数吧 //导出 $data内容二维数组 $title各个标题 $filename表名称 function exportexcelinfo($data=array(),$title=array( ...

  4. disconf的简单使用与远程配置更改为使用本地配置

    这几天因为阿里云迁移到腾讯云的原因,原来服务器上的disconf不再使用了.在这段时间里,系统出现的bug很难寻找原因(项目起不来),现在想要把disconf远程配置更改成直接使用本地配置.首先,了解 ...

  5. sqlserver 远程链接

    远程链接的文档就不说了,网上好多. 这里就说下我遇到的情况,如果是阿里云的服务器的话,他的端口配置都是要到阿里云里的安全组里去配置的,第一次一直没想到,搞了一天才发现,在这里提醒各位好友.

  6. JDK10、JDK11、JDK12新特性

    JDK10新特性 1.var声明变量 很多人抱怨Java是一种强类型,需要引入大量的样板代码.甚至在这些情况下,给定好变量名,通常很清楚发生了什么,明显类型声明往往被认为是不必要的.许多流行的编程语言 ...

  7. 【知识点】SPU&SKU

    SPU:标准化产品单元 SPU = Standard Product Unit (标准化产品单元),SPU是商品信息聚合的最小单位,是一组可复用.易检索的标准化信息的集合,该集合描述了一个产品的特性. ...

  8. ELK日志系统之说说logstash的各种配置

    当我们在设置配置logstash的conf文件内容时,日志数据的来源有以下几种配置: tcp形式:一个项目或其他日志数据来源用tcp协议的远程传输方式,将日志数据传入logstash input { ...

  9. Java枚举的用法和原理深入

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10843644.html 一:枚举的用法 1.定义和组织常量 在JDK1.5之前,我们定义常量都是:publi ...

  10. Linux shell if条件判断1

    shell 逻辑控制语句:            分支判断结构        if        case     循环结构         for         while         unt ...