关闭

简单搭建一个Python自动化测试框架

发表于:2023-12-18 09:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:软测老黄    来源:知乎

  1. 安装Python
  首先需要安装Python,可以从官网下载对应的版本。安装完成后,可以在终端中输入python来检查是否安装成功。
  2. 安装pip
  pip是Python的包管理工具,用于安装和管理Python模块。可以在终端中输入以下命令来安装pip:
  sudo easy_install pip
  或者
  sudo apt-get install python-pip
  3. 安装所需模块
  自动化测试常用的Python模块有:Selenium、Pytest、Requests等。可以使用pip安装这些模块,例如:
  pip install selenium
  pip install pytest
  pip install requests
  4. 编写测试用例
  测试用例是自动化测试框架的核心部分,需要编写测试用例来验证系统功能是否正常。可以使用Selenium WebDriver来模拟用户行为,例如:
  from selenium import webdriver
  def test_login():
      driver = webdriver.Chrome()
      driver.get("https://www.example.com/login")
      driver.find_element_by_name("username").send_keys("testuser")
      driver.find_element_by_name("password").send_keys("testpass")
      driver.find_element_by_css_selector("button[type='submit']").click()
      assert "Welcome" in driver.page_source
      driver.quit()
  5. 编写测试框架
  测试框架主要包括测试运行器和测试报告生成器两部分。可以使用Pytest来作为测试运行器,使用pytest-html来生成测试报告。例如:
  import pytest
  from selenium import webdriver
  @pytest.fixture(scope="module")
  def driver():
      driver = webdriver.Chrome()
      yield driver
      driver.quit()
  def test_login(driver):
      driver.get("https://www.example.com/login")
      driver.find_element_by_name("username").send_keys("testuser")
      driver.find_element_by_name("password").send_keys("testpass")
      driver.find_element_by_css_selector("button[type='submit']").click()
      assert "Welcome" in driver.page_source
  if __name__ == '__main__':
      pytest.main(["-v", "--html=report.html"])
  执行以上代码后,可以在当前目录下生成一个名为report.html的测试报告文件。
  6. 执行测试用例
  可以使用以下命令来执行测试用例:
  pytest test_sample.py
  也可以使用以下命令来执行所有测试用例:
  pytest
  执行完成后,可以在终端中看到测试结果。同时,也可以在生成的测试报告中查看详细的测试结果。
  以上就是搭建一个Python自动化测试框架的详细步骤。
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号