赛普拉斯:过程未定义

Cypress: process is not defined

我为一个基本的 React 应用程序做了一个简单的 Cypress 测试。检查 <div>id container 是否存在,但失败了。怎么了?我是 Cypress 的新手。

观看此视频:https://www.youtube.com/watch?v=5ajwAkZDbwo

const cypress = require("cypress")

describe("renders the home page", () => {
    it("renders  correctly", () => {
        cypress.visit("/")
        cy.get("#container").should("exist")
    })
})
import './App.css';

function App() {
  return (
    <div className="App">
      <header className="App-header">
        <div id="container"></div>
      </header>
    </div>
  );
}

export default App;

基本上是导入“cypress”导致了错误。

你不需要导入它,它是全局设置的。

实际上有两个全局变量

  • cy 用于定义像 cy.visit()
  • 这样的命令
  • Cypress 使您可以访问 Cypress.config('baseUrl')
  • 等实用程序
// const cypress = require("cypress")  -- don't need this

describe("renders the home page", () => {
    it("renders  correctly", () => {
        // cypress.visit("/")  
        cy.visit("/")
        cy.get("#container").should("exist")
    })
})

你也应该知道 cy.get("#container").should("exist") 也可以通过 cy.get("#container") 完成。

cy.get() 命令有一个 built-in 存在性检查,例如,如果您在您的应用程序上使用 cy.get("#container2"),它将无法通过测试,因为 "#container2" 不存在。