基于仿生智能软件适应性解决多浏览器兼容问题的解决方案

2021-03-07 10:34牟杨
网络安全技术与应用 2021年10期
关键词:自动测试浏览器适应性

◆牟杨

基于仿生智能软件适应性解决多浏览器兼容问题的解决方案

◆牟杨

(上海体育学院 上海 200438)

随着互联网技术的快速发展,通过浏览器访问各类网站成为获取信息和网上办事的主要方式,多种浏览器并存的现状造成了各类兼容性问题,大大降低了用户体验感,成为互联网信息化的一个“痛点”。在互联网的世界里,IE、火狐(Firefox)、谷歌(Chrome)、360安全浏览器、Safari和Opera等浏览器占据了互联网世界的大部分入口,瓜分了互联网世界的市场份额;就好比沙漠,海洋,高原,冰川等不同地理环境分割了整个地球,能够突破浏览器的限制在互联网世界里畅游的网络系统数量很少。另一方面,自然界的物种适应性比较强的动物却能在各种地貌环境自由生存,如狐狸既有沙漠狐也有北极狐,它们能够在极度干旱或严寒的环境中适应生存。那么受自然界生物适应性的启发,通过仿生智能软件开发的手段,借助软件诞生阶段的适应性应用,来解决浏览器兼容性问题就是本文要讨论的内容。诞生不过几十年的IT行业,向有着几亿年的生物界学习,既是大势所趋也是一种新颖可行的思考方式。

仿生软件;软件开发技术;人工智能;浏览器兼容性

1 浏览器兼容问题的现状

如今的网上办事系统多种多样,以高校为例,涵盖人事、教务、学工、研究生、财务等几十个业务系统,而往往一个网站系统只能兼容一到两种浏览器。当发生兼容问题时,只能安装新的浏览器或是更新浏览器版本,简单的网上事务却因为浏览器兼容问题花费较多时间的情况屡屡发生,师生怨声载道。

这种解决方式和大自然的生物适应性相比还是显得十分不足,好比大耳朵的沙漠狐误入了寒冷的冰川,通过外科手术去掉易于散热的耳朵,再植入一个保暖的毛绒小耳朵。这种后期打补丁似的生搬硬套的解决方式既不合理也没有艺术性,更给用户体验带来困惑和不便。

而大自然的解决方式是在问题出现的最早期便完美地解决了,它是通过上一代DNA遗传因子赋予了狐狸能够在所在地理环境所需要的各种生物特征,如北极狐就有一双适应极地生活的保暖毛绒小耳朵。IT界的解决方式也是应该在软件开发的最早期完成,才能给用户在畅游含有各种浏览器的互联网世界里流畅的无缝连接的较为完美的用户体验。

2 仿生智能软件在软件开发阶段解决兼容问题的思考

向狐狸等适应性强的生物去学习来解决IT浏览器的兼容性问题不是凭空想象而是有理论基础的。仿生软件工程的重要依据是软件和生物与生俱来的可比性。北京大学杨芙清教授指出,软件具有生物特性,应用软件的生产模式应该模拟生物的生产模式而非硬件的生产模式[1]。

2.1 提炼生物适应性可供学习的特点

为了能更准确通过IT技术手段对生物适应性进行学习和模拟,我们首先需要对生物适应性的特点进行归纳。还是以北极狐和沙漠狐为例,北极狐不仅耳朵较短小,尾巴和四肢也比较短小。有利于防止热量过分散失,是和寒冷的环境相适应的。沙漠狐能够通过较大的耳朵和其他器官,及时散失体内大量的热量,适应炎热的生活环境。狐狸的生物适应性是“与生俱来”的,从娘胎里带出来的,它生下来就是适应所在环境的。而生物的这种与环境相适应的生物特征是通过DNA遗传的,是经过上百万年的进化形成的。狐狸等动物的生物适应性可供学习的特点归纳如下:

(1)生物适应性“与生俱来”的,不是后天修补的;

(2)物种的生物适应性差异是经过百万年的进化浓缩到DNA遗传因子中去的;

(3)生物适应性过程是无人工干预的。

2.2 仿生智能软件构建与开发

2.2.1选择一款全自动软件开发框架

根据上文2.1的特点“生物适应性过程是无人工干预的”,那么在软件开发上需要全自动生成软件框架,当今的全自动开发软件虽然没有成为软件框架的主流,但也还是有一些仿生软件框架可供选择。由于资源有限姑且用一款“全周期生命态的自动编程”框架进行现行试验,需要预先构建以下的辅助模块与系统,如软件系统生成流程模块、网页控件生成及测试系统、系统事务性操作执行系统、网页整合集成模块以及模拟测试数据等系统及模块。其开发流程可见论文《关于生命科学应用于智能化软件开发的初步实践及思考》中开发框架部分,本文不作累述。

2.2.2将浏览量作为一个参数传入仿生智能软件开发框架中

根据2.1的特点“物种的生物适应性差异是经过百万年的进化浓缩到DNA遗传因子中去的”;那么在生物进化的过程中,如沙漠,冰原作为一种环境因素造成了同一物种的多种形态,用IT的语言来讲就是通过输入了“环境变量”来使生物多种多样。在具体的软件开发中,需要在最开始就把浏览器作为一个“环境变量”传入到仿生智能软件开发框架中去,当今的浏览器的“环境变量”的具体值为IE,Google,360等,让网站系统或软件自动去适应各种浏览器。

“全周期生命态的自动编程”的流程是第一个网页组件模仿生物的受精卵开始构建,到各个网页和部件的自动创建,直至最后系统全部完成,但其中每一步都需要对新增控件和部件进行自动测试[3]。这个自动测试对于网络系统的开发来说,就是调用具体的浏览器可执行文件进行自动测试。一般来讲,IE还是在当今最具统治力的浏览器,在自动测试的”浏览器输入参数”中输入IE所在的储存位置即可,例如:[C:Program FilesInternet Exploreriexplore.exe];在每一个控件和网页测试环境开发框架都会调用IE浏览器可执行文件去进行自动测试,如果到最后整个系统正常的构建完成,如果测试样例足够充分的话,那么最终开发完成的产品就是完全兼容IE浏览器的。

当想生成一款适合Google浏览器的产品又如何操作呢?只需把测试参数中的”浏览器输入参数”变为谷歌浏览器所在的储存位置即可,例如:[C:Program FilesGoogleChromeApplicationchrome.exe];在每一个控件和网页测试环境开发框架都会调用IE浏览器可执行文件去进行自动测试,如果到最后整个系统正常的构建完成,那么就形成了一套适合与谷歌浏览器的代码。

自动编程工具的优势也在此体现,适应不同浏览器的代码在切换测试浏览器就能实现。而生成的IE版产品,谷歌版产品,如同沙漠狐和北极狐一样适应着不同的地理环境。

2.3 建立浏览器差异“基因库”

在不同浏览器测试中出现问题该如何解决呢,在实际开发中我们不能像生物系统的进化一样让系统自动匹配。以IE早期浏览器“不支持“trim”函数为例,在开发框架中就应该写入自动判断代码,当测试浏览器为IE时,自动编写代码将不能调用“trim”函数,但可以通过原生js来扩展String方法的方式以实现“trim”函数的功能。这种建立浏览器差异“基因库”,就和不同地域同种生物的DNA差异一样,帮助软件产品能适应不同的浏览器。浏览器差异“基因库”的积累是一个长期的过程,但一旦构建完成,就可以通过智能编程工具生成适应不同浏览器的系统版本,从而解决浏览器兼容问题。

2.4 登录界面通过JS判断当前浏览器版本

在自动生成多套浏览器代码之后,我们需要在用户登录页面即系统的最初始页面,加上JavaScript 判断用户所使用的浏览器,加上逻辑判断匹配到对应的浏览器代码;这样从入口就匹配了浏览器种类,较为完备解决了浏览器兼容问题。

3 总结与展望

本文从解决浏览器兼容问题的角度出发,模拟生物环境适应性特征,利用仿生智能软件自动生成多套产品代码,通过登录界面自动适应用户所使用的浏览器。这样让用户无感知地通过各种浏览器畅游互联网世界,摆脱了多浏览器兼容问题带来的不便和困惑,不失为一种彻底的和带有前瞻性解决方案。

[1]杨芙清. 软件工程技术发展思索[J].软件学报,2005, 16(1):1-7.

[2]百度百科-狐-生物物种,动物https://baike.baidu.com/item/%E7%8B%90/3390860?fr=aladdin.

[3]牟杨. 关于生命科学应用于智能化软件开发的初步实践及思考[J]. 网络安全技术与应用,2019(11):60-63.

猜你喜欢
自动测试浏览器适应性
微软发布新Edge浏览器预览版下载换装Chrome内核
反浏览器指纹追踪
健全现代金融体系的适应性之“点论”
JXG-50S型相敏轨道电路接收器自动测试台
关于某型雷达自动测试系统的几点认识和建议
大型飞机A380-800在既有跑道起降的适应性研究
基于ATE与BIT组合的NAMP自动测试与故障诊断系统设计
固有免疫和适应性免疫与慢性丙肝的研究进展
一种卫星低频接口自动测试系统
低温环境适应性训练