AI驱动的测试:Cypress的cy.prompt功能实践
测试人员的角色和测试工具正在迅速发展。Cypress 最近引入了一个实验性功能,可能会改变我们编写 Cypress 自动化测试的方式。
新的 cy.prompt 功能将允许我们使用自然语言提示来生成自动化测试。其想法是用普通的英语来编写测试步骤,Cypress 将自动生成测试代码。
什么是 Cypress cy.prompt?
Cypress 的 cy.prompt 使用生成式人工智能,将自然语言指令直接翻译成可执行的 Cypress 代码。
我们无需手动编写每一个测试步骤,而是可以直观地描述动作,Cypress 将其翻译成它自己的 Cypress 代码。这个功能的目标是节省编写测试的时间和精力。
原本需要这样写:
cy.visit('/login')
cy.get('#username').type('testUser')
cy.get('#password').type('secret')
cy.get('button[type="submit"]').click()
cy.contains('Welcome, testUser').should('be.visible')
但有了这个功能后,可以这样写:
-
pt(["Visit login page", "Enter username 'testUser' and password 'secret'", "Click login button", "Verify user sees welcome message" ])
为什么 Cypress 要将人工智能引入测试中?
在当今快节奏的世界中,软件团队面临着日益增长的需求:更快的交付速度、更高的质量以及不断增加的测试覆盖率。
这个想法是在测试过程中使用人工智能,使测试的创建和维护更加迅速和便捷:
-
更快的测试创建:减少脚本编写时间,更多时间用于测试复杂场景。
-
降低入门门槛:不熟悉 Cypress 语法的新测试人员和团队成员可以立即做出贡献。
-
减少测试维护工作:自我修复能力意味着在出现轻微 UI 变化后,测试中断的情况会更少。
可以到我的个人号:atstudy-js
☑️这里有10W+ 热情踊跃的测试小伙伴们
☑️一起交流行业热点、测试技术各种干货
☑️一起共享面试经验、跳槽求职各种好用的
即可加入领取 ⬇️⬇️⬇️
转行、入门、提升、需要的各种干货资料
内含AI测试、 车载测试、自动化测试、银行、金融、游戏、AIGC...
注意事项和当前限制
cy.prompt 目前仍处于实验阶段,测试人员需要注意以下几点:
-
准确性与稳定性:在最初使用时,要仔细检查生成的代码。
-
复杂场景:一些边缘情况可能仍然需要手动编写脚本。
-
早期访问:目前只能通过 Cypress 早期访问计划 获得。
建议和预期结果
为了充分发挥这一新功能的价值:
-
将提示与手动编辑相结合:让人工智能生成初始测试,然后手动进行增强或优化。
-
逐步采用:逐渐将 cy.prompt 引入到您的工作流程中。
-
清晰的提示:使用简单、直接的语言,以从人工智能中获得最佳结果。
在未来,我认为 Cypress 将会进一步改进这一功能,使用它进行测试将变得更加高效。我们可能会期待它在复杂交互方面具备更强大的能力,以及更准确的元素选择器预测。
Cypress 的 cy.prompt 是一个潜在的游戏规则改变者,可能会极大地简化自动化测试的创建。
你对 Cypress 的新人工智能驱动功能 cy.prompt 有何看法?你是否使用过类似的由人工智能驱动的测试工具?请在评论中分享你的想法和经验!