登录

登录故事:参见以前的分析,《自动购买
根据故事描述,需要处理如下内容:
1、需要完成基本操作:
1)打开网页
2)输入文本框
3)识别验证码
4)点击按钮
2、然后在把以上动作按一定业务顺序穿起来。

重构项目

目标:
能根据用户配置访问网站,减少因网站和地址的差异而修改代码。
名词解释:
1、操作:是指一个用户访问网站的一个活动/操作,比如登录,查询等。
2、任务:是指一个用户通过在网上完成的一件事情,由一连续的操作/活动组成。
思路:
1、操作由网址、动作、结果组成,用户可以配置。
2、任务是一系列有顺序的操作,用户可以配置。
开发方案:
1、定义一系列标准操作,一般网站可以使用。个性化操作,可以另加代码处理。
2、定义驱动操作、任务的引擎,使得用户配置完后即可运行。

1.1自动登录最终方案

>1、方案介绍
由3部分完成:
1)自动购买服务器(master)
负责整个自动购买应用程序,发起登录、购买等行为。
2)中转站(transfer)
负责转发消息,在自动购买服务器与手机客户端(遥控器)之间传递消息。比如接受master发来的验证图片,转发至controller,并接受controller发回的识别结果,将结果转交给master.
3)手机客户端(遥控器,controller)
负责识别验证码,接受到中转站转来的消息后,通知人识别验证码,并返回给中转站服务器。

研发用户故事地图

下图描述了整个研发过程中的的自动登录用户故事:

登录
登录

故事1.1.1:自动输入验证码

在自动登录这个故事中,看起来很简单,但每个点都需要实现进行技术探针。
目前,遇到的比较难的点是自动完成验证码输入过程。
故事讲述:
作为理财机器人,我要识别验证码并输入,以便通过网站校验。
故事分解:
1、获取验证码图片
2、识别图片中的验证码
3、将识别的验证码输入验证码文本框
方案:
1、人工输入(难度低,但是没有达到自动理财目标)
2、采用图像识别技术(难度高)
3、人和机器配合各自完成一部分。(难度中,可以把最难的一部分交给人处理,把相对简单的交给机器)

故事1.1:自动登录

自动购买的第一步,不可回避的就是自动登录。

自动登录
讲述故事:
作为理财机器人,我需要能自动登录,以便实现自动购买。
技术分析:
1、由于访问https网站,无法用普通的js技术获取网页信息。
2、经过探索发现估计借用自动化测试工具selenium进行访问。
所以接下来一周(都业余时间)进行selenium探针实验。