今天我采访Eduard Nedostupov。Eduard了识别作为一个科学家和一个IT专家。他的基本工作量化生态领域的开辟了创新方法在建模种群动态,作为应用研究的数据来源,包括在教育刊物推荐高等教育机构的研究。他的经验在软件工程跨度超过17年。
在这段时间里,他不仅确立了自己作为一名软件架构师和开发人员,但他开始了他的教学辅导经验的马蒂斯著名的应用数学部门——RSTU动向Tsiolkovsky命名的。
今天,我们要关注Eduard工作的跨国巨头,影响数亿人的日常任务。他的经验在软件测试自动化的棱镜银行系统(ABS),他是带领开发人员与“a银行”利益当读者很多,所以我们会发现很多有趣的细节。
Eduard,多年的经验在软件工程中,进行了量化生态领域的基本工作,和目前的工作作为一个导师,一个演讲者,和活动的专家,比如一DEVOPS, Avanpost挑战。一个IT巨头工作时你的角色是什么?
我很高兴参与创建全国nanoCAD计算机辅助设计系统。我现在为一个跨国巨头工作,影响数亿人的日常任务的结果我的团队的工作。今天我要与读者分享我的经验在软件测试自动化的棱镜银行系统(ABS),我与“a银行”时的首席开发人员。
你能向我们解释为什么测试是保证成功?
我将试着给简单的词语的解释,所以每个人都能理解我的视力。我们画之间的并行软件验收,说,选择一个新的笔记本电脑工作。你不会从最近的商店购买第一个可用,您将首先评估其维度,确保舒适的使用,确保屏幕的亮度足够的在外面阳光明媚的天气和评估工作方便的触控板和键盘。的说法,你会做“验收测试”。
在这个例子中,“为什么”的答案很简单:显然你想工作轻松,享受你的新“助理”了很长一段时间。同样,与软件,在接受一个产品之前你需要理解如果你能使用此应用程序来解决你的实际问题所需的时间:分析师是否正确地理解你的需求和制定发展的任务,开发人员是否错过了些东西,他是否影响相关工作功能,他是否考虑了用户的勤学好问,结果出乎意料的格式的数据输入。
谈到银行区域,是测试问题为何如此重要?
测试问题变得尤为重要,如果它是在银行领域功能的背景下大量的资金取决于项目的结果和影响广大群众的用户。让我们ABS计算系统的例子,我发展的直接参与和创建了一个数量的工具,包括领域的测试,旨在加速工业产品的发展和稳定。不正确操作该模块的一个小时,据粗略估计,可以发送几个数百亿卢比从自动流到手动控制,这意味着收件人付款不会看到钱的几分钟,但是5个工作日内。越多,支付去人工协调,越接近这一时期接近最大值。在今天的动态的世界,这种成本会影响用户的忠诚,另一方面使他们的经济损失。
爱德华·,你的主要目标是什么?
这些缺点,让我头脑中占据。我想要一个工具能够稳定的解决方案,但在更短的时间框架。在分析了操作系统的可用性工具,我做了一个决定,我获得管理层的支持,特别是来自我的同事从ABS支持服务设计和实现一个内部解决方案的自动化测试。
你的听众是很想知道更多关于在银行测试软件产品的特点。请你分享主的吗?
使读者能够理解的规模问题被解决,值得入手的描述软件的细节和它的执行环境。a银行的核心经营ABS糠虾幼体方程,IBMi操作系统运行。乍一看,这束OS和ABS甚至可能难题最有经验的开发人员,因为它从根本上不同于通常的Mac OS, Posix-like和窗户。
它具有以下主要特点:操作系统的紧密结合与关系数据库Db2 IBMi;开发人员在银行操作表和记录它,而不是文件;接口和操作系统(称为绿屏),提供24 x80或27 x132位置字符在屏幕和16个颜色。因此,程序可能由几十个相互关联的输入屏幕;糠虾幼体集成商的技术包标准,规范交互式万博体育登录首页组件应该包含相同或不同的部分。
爱德华·,你是选择项目的首席开发人员。高级功能的模块呢?
ABS的另一个特点是没有源代码本身与IBM RPG编写的附加功能和模块(报告程序生成器)——所有的代码都是外包,大大减少了管理所需的数据和重要的金融资源。我被选为的首席开发人员项目旨在迁移模块需频繁改变现代广泛的编程语言c++。这个过程密切相关的测试,因为功能必须保持不变,退化是不可接受的。
你还记得的时期过程中执行手册的格式吗?
我开始在银行的时候,所有的测试进行了专门的手动格式。这种类型有许多优点:可以发现错误显示的控件,您可以测试快速、逐点或试图运行一个意想不到的场景,但是主要的消极一点,这使我不断思考优化的可能性,是完成测试的时间。增加的事实,发布前有三个完整的测试周期:每一个开发,分析,和商业环境,这一阶段的发布周期最长、最昂贵的。
很明显,我的主要手段优化过程自动化手动测试。首先,它是必要的,以大大加快这一过程的软件验收,第二,减少人为因素,最后,增加稳定性。
爱德华·,你发明的自动化软件测试?
我设计并开发了一个自动化软件测试框架。这个框架的本质一个测试场景引入开发过程。一个文本文件,允许您使用预定义指令描述用户的行为。它介绍了选择的能力控制在屏幕上,输入一个值进去,然后确定他们的身份,模拟点击控制,控制屏幕之间过渡,预期的结果的描述。验证系统的行为的正确性,可以执行SQL查询来确定更改的值。
我的进步也影响这个过程的部分:提出了编写测试场景,应该覆盖所有这些固有的客户的需求的能力。
我提供和实施两个选项运行测试场景:背景和互动,能够查看用户行为仿真。第一个选项允许你运行所有的测试场景,来识别异常的现有的代码库进行进一步分析。第二个导致更快的调试。
这个解决方案定义的唯一性IBMi操作系统和从一侧Misys ABS。这种组合是用于一些资助银行,包括在五大商业银行在前苏联国家,并被认为是标准的发展,大大增加了它的重要性。此外,它允许解决的主要问题将遗留代码移植到现代编程语言。
的实现结果你满意你的工作吗?
主要成就可以在数字特征:当时框架被内部开发人员社区,大约有250的测试脚本,描述了主要修改,或密切相关的模块。他们的执行时间少于30分钟。如果我们试图比较,在手工测试,速度增加了16倍。一个额外的优势可以被认为是自动化测试的抗疲劳、外部因素。
万博体育登录首页技术也超过了所有的预期结果。框架,它的速度比IBMi图形界面功能的操作系统。引入延迟每一步的测试场景允许新的测试工具来调整硬件功能。
测试场景创建在写作阶段允许不仅加快测试阶段,但由于技术能力的框架就可以检查所有ABS功能,添加稳定通过最小化退化的可能性功能由于释放新老系统的特性。万博体育登录首页另外值得注意的是这个解决方案的集成到CI / CD链。允许增加早期缺陷检测,更高的生产率、更快速的发布周期。
另一个同样重要的结果是,代码移植的项目完成后,和,因此,外包发展资金得救了,银行拿到的源模块大部分暴露于立法的变化。功能没有影响,它直接的优点以及执行测试。
你认为是更好的对银行来说,他们只需要测试的代码吗?
绝对不是,测试是一个标准的发展。相反,它加速了开发过程,而不是放缓下来。你模仿的部分代码使用所谓的基于存根和验证你的代码正确执行。
我的经验包括停止在创业的目标是建立控制机器人的互动游戏平台“战斗”的土地——现场模拟流行的网络游戏“坦克”的世界。如果没有测试,我和团队将不得不花很多额外的时间测试交互的逻辑上的微小改变,在真正的机器人。
另一个例子是活动,像“一DEVOPS”和“Avanpost挑战”,最重要的专业比赛密歇根州立大学的创新科技中心举行“Vorobyovy血腥”,我有幸来判断。万博体育登录首页团队投入时间、最宝贵的资源在这样的比赛中,在测试中来到了终点线有稳定工作的解决方案,比他们的对手没有。
结论
测试软件产品的问题担忧数以百万计的开发者和商业客户。通过这个详细采访Eduard Nedostupov读者发现很多有趣的信息的自动化测试工具IBMi关键的银行应用程序的操作系统,确保稳定。爱德华·是最高水平的专家,他的成就是巨大的,甚至应该更详细的调查。这样一个创新的方法是令人印象深刻的,应该激励他人从未停止改进你的工作,不要害怕离开你的舒适区,以创造更舒适的工作环境。