假设我有一个大型软件应用程序,这个应用程序是事件驱动的,即当用户按下按钮配置某个东西时,代码流就会执行。
除了这个应用程序之外,我还有一个系统,它可以模仿用户,并且可以执行用户可能执行的所有步骤的排列。因此,可以肯定地说,我可以将我的软件应用程序带到所有可能的状态。我已经完成了这方面的自动化,我只需要一个大脑,它可以说当前的状态是错误的(不想要的)。
现在的问题是:
是否可以通过机器学习确定我的系统是否已进入意外状态(Bug)?
一开始我想用Rete网来解决这个问题。其思想是创建一个知识库,它将模拟测试人员,并能够判断系统是否处于不一致的状态,但为此,每当向该软件应用程序添加新功能时,我都需要不断地向知识库提供新规则。
发布于 2019-04-28 14:11:50
对于机器学习方法来说是一项困难的任务。我认为有一些适合软件开发的方法更适合于这项任务。
通过机器学习,我可以认为过程分析是您所要寻找的:
我想您可能有这样的数据集:
[step1: click in LOGIN, step2: Click in Button A, step3: Click in Button B] -> [No Bug]
[step1: Click in LOGIN, step2: Click in Button Z] -> [Bug]
...业务流程分析()是可以应用于这些事件流以支持组织决策的一系列方法和工具。对过程事件的分析可以关注已完成过程的行为,评估当前正在运行的过程实例,或者集中于预测未来流程实例的行为。过程分析
是我所知道的分析中(与你的问题)最相似的过程
https://datascience.stackexchange.com/questions/51056
复制相似问题