[软件工程]技术规格说明书

概述

后端技术

根据需求

手工标记Android游戏见面可点击区域构建训练数据,通过识别游戏界面可点击区域,模拟用户输入流,并识别异常状态,从而实现自动化异常检测

我们需要训练一个能够识别游戏界面的模型,并以此为测试的基础,因此使用TensorFlow。

对于自动化测试,我们使用monkeyrunner框架。monkeyrunner提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。

前端技术

采用Python常用的GUI库Tkinter进行开发。


使用环境

正常Windows环境。

对于输入输出的参数,除开界面交互的内容外,目前设计的有自由输入的地方之后对报告的编辑,我们将它作为文本处理,应当没有限制。但是由于仅存在设计中,暂时无法验证。


主要层次结构

UI组件

UI部分包含所有用户界面的定义,主要分为主界面、用户引导、测试、报告四个部分。

TitleBar页面框名
LogoArea放置logo
MainMenu主菜单栏,将所有功能放置在此,可以在此打开
GuideButton引导按钮,选择GuideButton弹出使用引导
TestButton测试按钮,选择TestButton弹出测试页面,实时显示目前状态和报告
ReportButton报告按钮,选择ReportButton进行对报告的相关操作
EditTest通过编辑测试用户可以自行编辑需要的测试行为或者运行自带的随机测试
API对接

此部分只是初步设计,可能内容不完善以及名称不规范,将在后续开发过程中补全。

名称功能
GetInteractArea接收游戏界面,需要打开游戏
ModReport接收测试内容和游戏界面,优化报告,使之更易读
TestPause测试中暂停,需要接受用户指令
GetDirectory获取文件列表,以打开或保存报告
GetDevice获取设备,需要连接需要测试的设备,手机或模拟器
ModTest接收测试代号,向测试序列添加对应的自定义测试
错误处理

在Exception中定义错误类型并集中错误处理

名称描述
DeviceException在连接设备时出现问题
InputException对各类输入处理遇到问题
BackException使用接口出现问题
LocalException将报告存储到本地遇到问题

耦合

通过封装接口,保证了程序模块间的独立性,降低了耦合。


应对变化的灵活性

最大的问题在于我们的图像是通过机器学习自动获取,而要做到对游戏界面的识别需要我们对模型进行足够多训练,这一方面我们会在开发过程中重点注意。

转载于:https://www.cnblogs.com/buaatbxl/p/10640189.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值