写点什么

软件测试 / 测试开发丨利用 ChatGPT 生成自动化测试脚本

作者:测试人
  • 2023-10-09
    北京
  • 本文字数:1258 字

    阅读完需:约 4 分钟

免费领取:测试资料+测试用例+简历模板+测试文档

简介

自动化测试脚本可以模拟用户与应用程序的交互,例如点击按钮、输入数据、导航到不同的页面等等,以验证应用程序的正确性、性能和稳定性。


自动化测试在回归测试、冒烟测试等测试流程中都可以极大地起到节省时间、节省人力的作用,所以目前自动化测试工程师,也是一个非常炙手可热的岗位。


在编写自动化测试的过程中,ChatGPT 可以作为一个非常好用的工具,极大提升编写效率。

实践演练

在使用 ChatGPT 编写自动化测试脚本的时候,提示词最好明确相关的技术栈,这样可以在生成的脚本基础之上做对应的修改。

  • 提示词:请帮我编写一个接口自动化测试脚本,要求使用 Pytest + Requests 。只需要对响应状态码完成断言即可。

ChatGPT 的响应信息为:

import pytestimport requests
# 定义测试用例def test_api_response_status_code(): # 设置API端点 api_url = "https://jsonplaceholder.typicode.com/posts/1"
# 发送GET请求 response = requests.get(api_url)
# 检查响应状态码是否为200 OK assert response.status_code == 200
# 运行测试if __name__ == "__main__": pytest.main(["-v", "test_api.py"])
复制代码
  • 提示词:请帮我编写一个 Web 自动化测试脚本,要求使用 Pytest + Playwright。

ChatGPT 的响应信息为:

import pytestfrom playwright.sync_api import sync_playwright
# 定义测试用例def test_web_page_title(): with sync_playwright() as p: browser = p.chromium.launch() page = browser.new_page()
# 打开网页 page.goto("https://example.com")
# 获取页面标题 title = page.title()
# 检查页面标题是否包含"Example Domain" assert "Example Domain" in title
# 关闭浏览器 browser.close()
# 运行测试if __name__ == "__main__": pytest.main(["-v", "test_web.py"])
复制代码
  • 请结合 Harmcrest 优化断言。

ChatGPT 的响应信息为:

import pytestfrom playwright.sync_api import sync_playwrightfrom hamcrest import assert_that, contains_string
# 定义测试用例def test_web_page_title(): with sync_playwright() as p: browser = p.chromium.launch() page = browser.new_page()
# 打开网页 page.goto("https://example.com")
# 获取页面标题 title = page.title()
# 使用Hamcrest断言检查页面标题是否包含"Example Domain" assert_that(title, contains_string("Example Domain"))
# 关闭浏览器 browser.close()
# 运行测试if __name__ == "__main__": pytest.main(["-v", "test_web.py"])
复制代码

总结

1.写清楚需求:在要求 ChatGPT 编写自动化测试脚本的时候,需要给它明确使用的技术栈,方便基于脚本做修改。

2.将复杂的任务拆分为更简单的子任务/系统地测试变化:通过多次提问,进一步修正 ChatGPT 的回复,直到满足需求。

发布于: 刚刚阅读数: 5
用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨利用ChatGPT 生成自动化测试脚本_人工智能_测试人_InfoQ写作社区