公司:360
360(全称“三六零安全科技股份有限公司”)(上交所:601360)是中国大陆的一家主营安全相关的互联网公司,由周鸿祎于2005年9月成立。公司口号是“引领中国互联网开放潮流”,旗下的产品有360安全卫士、360杀毒、360搜索、360安全浏览器、360手机助手、360手机卫士等多项业务。
远程组件实践
什么是远程组件?这里是指在生产环境中,从服务端远程下载一个JS文件并注册成组件,使其能够使用。
使用selenium做UI自动化的正确姿势
易用性、可维护性是衡量一款自动化工具/框架是否好用的主要标准,那么针对大多数人着手测试自动化时最先接触到的、基于selenium的UI自动化框架,怎样才能做到这几点呢?下面将结合我们团队在实际项目上的应用和不断打磨沉淀出来的框架做个简要介绍。
如何在 Vue 中使用 防抖 和 节流
在本文中,你会了解到如何在 Vue 组件中 使用 防抖 和 节流 控制 观察者(watchers) 和 事件处理程序。
初识微信小程序
小程序的开发现在已经越来越火了,目前微信、支付宝、QQ等都已经推出了各自的小程序框架/解决方案,那么也就意味着拥有小程序开发的工程师也越来越受欢迎。而微信小程序凭借微信巨大的用户群和社交红利,微信小程序相对其他家在技术和生态建设上都处于绝对领先阶段。但是作为一个小程序侧的“小白”;或者说并没有详细了解过微信小程序的开发人员,想必大家会关注以下几个问题:
- 什么是微信小程序
- 微信小程序与传统的H5有什么区别?
- 微信小程序为什么会越来越受欢迎/优点是什么?
自动化系列一:接口自动化框架对比
自动化测试是把将手工驱动的测试行为转化为机器自动执行,通常操作是在某一框架下进行代码编写,实现用例自动发现与执行,托管在CI/CD平台上,通过条件触发或手工触发,进行回归测试&线上监控,代替部分的手工测试。
盘点Go代码质量提升的那些绝妙的测试方法
大家对于Go语言可能不陌生,但在日常工作当中,对Go语言本身提供的单元测试、覆盖率等工具可能并不熟悉。本文将简单介绍一下Go语言提供的各种方便提升代码质量的工具,供大家参考,并在工作中灵活使用,以提升代码的质量。
主要介绍内容包括,Go语言及其周边工具提供的单元测试能力、Benchmark功能、代码覆盖率、Fuzz测试能力以及数据竞争检查。
模块联邦在微前端架构中的实践
webpack几乎没办法做到不同应用之间进行插拔式的热更新。那怎么样去实现这种跨应用间的共用模块运用呢?于是乎webpack5内置了一个模块联邦的功能特性,这个功能可以让跨应用间做到模块共享真正的插拔式的便捷使用。
基于iOS的Wireshark抓包实践
在应用开发过程中,通过抓包调试服务端接口的场景时常出现。接上次我们分享的Charles抓包,今天,让我们再以iOS为例,聊一聊Wireshark抓包。
掌握 CORS 跨域请求,读这篇文章就够了
CORS 称为跨域资源共享,是 W3C 制定的一个通信标准,是现代浏览器支持跨域资源请求的一种方式。目前,几乎所有网站都存在 HTTP 跨域请求,这篇文章适合任何人阅读。
实时流量回放工具TCPCopy原理浅析
随着互联网技术的发展,服务端的架构愈加复杂,仅依赖QA个人的经验很难覆盖到全面的业务场景,真实的线上流量对于服务端的测试十分必要。TCPCopy就是一款开源,并广泛应用于各大公司的流量回放工具。
利用Pinpoint搭建全链路监控系统
随着项目微服务的进行,微服务数量逐渐增加,服务间的调用也越来越复杂,我们急切需要一个APM工具帮我们监控各个服务的性能及对服务间的调用进行跟踪,而通过调研多个开源APM工具后,最终我们选择了Pinpoint。
基于WVP的轻量化智能监控平台
当代智能监控平台不乏功能强大的产品,但由于涉及模块、组件多,产品容易臃肿,对私有化场景增加了一定的阻碍。于是,轻量化智能监控平台很有必要。
自研长链接压测概览
公司的长链接服务器,有以下等缺点:
● 触达率很低
● 没有点对点推送能力
● 排查问题困难
● 只支持m2,不支持mid
而我们商业化的项目众多,且非常依赖长链接服务,因此自研一套长连接系统提供服务,对标公司长链接服务。
自动化测试中对多断言的思考和实践
最近笔者在测试一个数据下载项目,测试过程中需要校验导出CSV文件中指标值的准确性。涉及指标数量400+,并且需要关注不同聚合层级、不同时间粒度指标计算的准确性。验证数据量大,手工验证效率低、人力成本高,因此通过自动化脚本的方式来提高测试效率以及方便回归验证。
在实现的过程中,最初采用unittest测试框架中内置的断言方法,进行数据的比对,实践发现内置断言并不能满足使用要求,进行了一系列的实践后,最终找到了合适的断言方案,本篇文章主要介绍了该方案的探索过程。
物联网测试数据构造实践
我们在测试过程中,经常遇到需要构造大量测试数据的业务需求,比如:统计和计费,我们需要统计近一个月甚至更长时间的测试数据来测试数据统计的变化趋势,统计值的准确性,这些数据有些需要通过数据库SQL生成,有些需要通过调用业务接口生成,有些需要通过kafka消费数据,有些需要借助平台、语言脚本、工具能力根据数据规则生成等等。
除了自己手动在数据库写入数据外,如果系统有暴露数据接口(通过接口可以构造产生大量的数据),我们优先通过调用数据接口去产生数据,这样不会产生大量的脏数量,也能保证数据的真实准确性。调用接口的好处是可以借助接口测试数据。可以根据数据构造的需求灵活使用接口调用工具,通过构造测试场景、定时器、数据构造脚本等方法,不需要手工输入大量的测试数据,就可以模拟用户使用来产生数据;
业务系统中,需要手工进行业务数据构造,可以将重复的操作步骤,制作成自动化脚本。
H5和微信小程序测试区别
H5和小程序的开发工具就非常不同,小程序都是依赖于微信客户端的,所以相对来说开发工具没有H5那么多;
而且两者的开发语言也都是不同的,微信小程序有自己的一套标签与样式语言,与标准的H5语言是不一样的;而且还独立了很多的原生app的组件,所以它在组件封装上面与H5也都是有所不同的。
因此,开发一个H5,需要从开发工具、前端框架、模块管理工具、任务管理工具,还有UI库选择、接口调用工具、浏览器兼容性等等,都需要考虑周到。尽管大多数开发者面对这些工具时,都有了自己的配置模板,但成本依然不低!
微信小程序的开发使用了改自js、CSS、HTML的语言,同时提供了各种自有的组件和API,是一套为微信量身打造的自定义的语法。因此,不用担心浏览器的兼容性,不用担心莫名其妙的bug,而且在微信中小程序的使用体验比普通H5更加顺畅、快捷。