代码之家  ›  专栏  ›  技术社区  ›  KiritoLyn

在Cypress中将index.html文件设置为baseUrl

  •  0
  • KiritoLyn  · 技术社区  · 2 年前

    是否可以使用文件(index.html)的路径设置baseUrl?

    我有一个 src 我的根Cypress项目上的文件夹,其中包含 index.html 我正在测试。

    在我的 cypress.config.js :

    module.exports = defineConfig({
      e2e: {
        baseUrl: 'C:/cypress-project-name/src/index.html',
      },
    })
    

    但赛普拉斯给了 Expected e2e.baseUrl to be a fully qualified URL (starting with http:// or https://). 错误

    同时添加http:// 不起作用

    0 回复  |  直到 2 年前
        1
  •  4
  •   Aladin Spaz    2 年前

    我认为你不能通过 baseUrl 由于验证的原因,但Cypress通常很乐意使用 cy.visit() 命令

    路径格式是相对于项目根目录的,尽管绝对路径也可以使用

    cy.visit('src/index.html')
    

    但需要注意的是,当你 src 需要一个框架(React、Angular、Vue)进行编译。

    只有浏览器能够理解的格式良好的HTML才能工作。

    如果您想要更普遍适用的东西,处理框架和捆绑,请查看 bahmutov/start-server-and-test


    baseUrl的替代配置

    虽然 baseUrl 设置具有有效性约束格式,可以使用 env 设置以绕过该验证。

    const { defineConfig } = require('cypress')
    
    module.exports = defineConfig({
      ...
      env: {
        myBaseUrl: 'src/index.html',
      },
    })
    
    cy.visit(Cypress.env('myBaseUrl'))