在快速迭代的软件开发周期中,用户界面(UI)的自动化测试已成为提高效率和确保产品质量的关键。然而,随着应用程序变得日益复杂,传统的UI自动化方法逐渐显露出局限性。AI驱动的UI自动化出现了,但仍面临着准确性和可靠性的挑战。在这个背景下,本文提出一个创新的视角:通过实时调试技术,显著提升AI编写的UI自动化脚本的有效性。 这个问题不仅仅是技术上的挑战,它关系到如何在保证软件质量的同时加速软件的交付。本文将探讨实时调试如何帮助AI更准确地理解和执行UI测试脚本,以及这种方法如何能够为软件开发带来革命性的改变。
携程机票订单系统是由多个业务子系统组成,包括出票、改签、航变等等,获取订单行程信息复杂度较高。 例如:用户预订了一个包含了2个乘客的机票订单,该订单发生了航变,其中用户A选择了退票,用户B选择了改签。 业务系统需要获得该订单最新的行程信息以及行程变化轨迹,以进行展示和进一步处理。
携程酒店排序推荐广告工程(以下简称酒店推荐工程)在数据层面引入抽象化的统一数据协议UnifiedPB,解决了过去各场景各自维护,建立各自的数据流,网状开放式数据表,烟囱式迭代的问题,实现了全场景数据的标准化、规范化、统一化。 那么,UnifiedPB具体是什么呢?它是基于protobuf构建的统一工程、策略、数据三方的标准数据模型。从数据时效性上,我们抽象出三类:Online、NearLine、Offline;从数据类型归属上,我们抽象出四类:User、Item、User-Item、Common(公用字典)。
2023年初,科技圈最火爆的话题莫过于大语言模型了,它是一种全新的聊天机器人模型,除了能应对基本的日常聊天外,还能胜任如文案编写、旅游规划等各项工作。 携程信息安全部也紧跟时代步伐,在携程内部推出基于大语言模型的智能聊天机器人,并发布网页版1.0,让所有“程里人”可以便捷无门槛地享受大语言模型带来的便利。在运营半年多后,我们广泛收集了用户的使用感受以及建议,结合当下大语言模型的发展进程,新推出了网页版2.0,相较于1.0版本,简化了页面展示,增加了历史会话保存、自定义对话设置、支持插件、AI绘图等功能。 其中插件功能可以扩展大语言模型的个性化能力,让其如虎添翼,开发者可以根据特定需求定义特定插件供用户使用。目前网页版2.0版本支持10多种插件,如google搜索插件可以对输入的问题进行联网查询;base64插件可以对base64内容进行解密等。那么这些插件是如何实现的呢?让我们一探究竟吧。
2022 年底,我们在携程的 Github organization 下开源了 SQLlin,SQLlin 是一款基于 Kotlin DSL 及 KSP 技术的,支持众多平台的 Kotllin Multipllatform SQLite 数据库框架。感兴趣且不了解 SQLlin 的读者可以参考:《携程机票跨端 Kotlin DSL 数据库框架 SQLlin》一文。 SQLlin作为携程机票移动端团队最为完备的一款开源项目,在接近 1 年的时间内经历了不少升级与换血式的更新,也见证了这一年 Kotlin Multiplatform 技术的演进及社区生态的变化。本文将带领大家梳理这些更新,并探求这些更新背后所涉及到的 Kotlin Multiplatform 技术栈在这一年来的更迭与进化。
微服务架构下,产研分工精细,需求迭代频繁,随着需求的不断迭代,应用数、代码量及测试用例越积越多;需求迭代(尤其是有新人加入)的过程中,产品经理需要通过开发了解现状和历史逻辑,开发人员翻阅历史代码花费的时间和精力越来越大,测试人员上线前需要回归的用例也越来越多,严重影响了需求迭代的效率。
三年前 Facebook 开始思考在目前设计系统下面临的问题,那时它们在前端项目、系统组件等部分使用的是 cssmodule 的样式方案。 直至今日,Facebook 已经将所有的 Web 前端使用 React 进行重写的同时,也使用了一种新的 Atomic Css-in-JS 对于它们的 Css 方案进行了重写。 最近,Facebook 团队开源了他们内部的 Atomic Css 解决方案:stylex,正是这套解决方案让 Facebook 首页样式文件体积减少了至少 80%。 这篇文章中我们就着 Atomic Css 来聊聊 Facebook 最近刚好开源的 stylex。
携程拥有庞大的呼叫中心,涉及上万客服人员,覆盖机票、酒店、火车票、度假等产线的售前售后业务,每天的电话业务量超百万通。近年来,通信技术、人工智能技术和智能终端等都在不断革新,我们也一直在思考如何去做更智能化、自动化的呼叫中心,为未来海量的客户需求提供稳定和优质的服务。