页面级测试是Web测试中的重要组成部分,它主要关注用户界面的展示、交互以及用户体验,在有赞以及整个业界,页面级测试往往涉及复杂的用户交互,这使得自动化测试面临很大挑战,部分工具如Selenium虽然可以模拟用户行为,但是维护成本高,随着页面功能和布局的频繁变化,维护测试脚本的成本也越来越高,且容易受前端页面变更的影响导致执行失败。 页面比对思路定位为一种视觉回归工具,用于捕获页面的屏幕截图进行比较,以检测页面在不同时间点之间的变化。相比其他UI工具Selenium、Cypress(用于模拟用户操作与页面进行交互,验证页面的功能是否按照预期运行)等,解决需要人工设置断言的问题,更聚焦在前端样式交互上。因为页面比对主要关注页面外观,避免了复杂的交互逻辑,所以维护成本更低,由于核心逻辑是捕获run的过程中页面变化的截图比对,相对UI自动化测试框架,执行速度取决于测试脚本的编写质量和所模拟的操作复杂程度,会相对比较耗时。综上所述,页面比对的思路是传统UIA的一种补充,聚焦前端交互,样式回归。
DNS是Kubernetes集群中非常重要的基础服务,在客户端设置不合理、集群规模较大等情况下比较容易出现解析超时、解析失败等现象,严重时可能会对业务造成相关影响。 尤其在节点异常宕机,或集群整体负载、coredns所分布在的节点负载较大时,该情况会非常常见,我们不定期会收到相关解析异常报警和业务线同学反馈,虽然每次持续时间较短,但在高峰期频繁出现也非常折磨。经过多种方案对比考量,我们最终决定对原生DNS架构做下改动: 将原架构集中请求pod→kube-dns svc→coredns pod的方式改造为:各node节点上的pod首选请求所在node本地的dns服务(后续称为q-dnsmasq),在q-dnsmasq服务不可用时再去请求kube-svc; 并将q-dnsmasq启用all-servers模式,让其识别请求域名是K8S内部(如cluster.local)还是外部,内部则同时转发多个Coredns并取最快响应结果; 如为K8S外部域名则在转发请求至公司dns-server时,也通过并发的方式同时请求3台公司dns-server(后续称为localdns),取最快响应结果;
人工智能生成内容(AIGC)在图像处理和创意设计中日益普及。通过阿里云的PAI-DSW(Data Science Workshop)和Free Prompt Editing算法,用户可以开发一个个性化的AIGC绘图小助理,实现图像智能编辑和生成。
此前《中国软件行业几乎全军覆没》一文火遍全网,引起了广泛的关注与讨论。该篇文章从一个片面的角度切入,得出了令人咋舌的观点结论。 本文作者作为软件行业 20 余年的从业老兵,对此问题有一些观点不吐不快,也由此发出了一个新的提问——SaaS 有可能成为中国软件行业的一枚解药吗?