nrwl-Nx 和 Cypress,验证超时并在 Windows 7 中失败 --smoke-test

Opt*_*tiq 1 node.js typescript angular-cli cypress nrwl-nx

我正在尝试按照NX 网站上的本教程进行操作。第二部分让我们使用 Cypress 设置 e2e 测试。我遵循了所说的一切,甚至注释掉了我的代码并将他们的代码粘贴到我的文件中。我在控制台中没有收到任何错误。我在 Node 中看到的错误说

Cypress 验证超时

该命令失败并显示以下输出:

C:.....\Cache\3.3.1\Cypress\Cypress.exe --smoke-test --ping=852

该教程还说我们的应用程序上应该弹出一个 UI,但我没有看到任何此类内容。

生成工作区和应用程序后,我们app.po.ts通过添加几个常量来修改文件,到目前为止我的看起来像这样

export const getGreeting = () => cy.get('h1');
export const getTodos = () => cy.get('li.todo');
export const getAddTodoButton = () => cy.get('button#add-todo');
Run Code Online (Sandbox Code Playgroud)

接下来它告诉我们通过添加以下内容来更新app.spec.tse2e 测试的文件

import { getAddTodoButton, getTodos } from '../support/app.po';

describe('TodoApps', () => {
  beforeEach(() => cy.visit('/'));

  it('should display todos', () => {
    getTodos().should(t => expect(t.length).equal(2));
    getAddTodoButton().click();
    getTodos().should(t => expect(t.length).equal(3));
  });
});
Run Code Online (Sandbox Code Playgroud)

生成的该文件的版本Nx已包含在其中

import { getGreeting } from '../support/app.po';

describe('todos', () => {
  beforeEach(() => cy.visit('/'));

  it('should display welcome message', () => {
    getGreeting().contains('Welcome to todos!');
  });
});
Run Code Online (Sandbox Code Playgroud)

我最初尝试在其下面添加额外的测试并添加新的导入。收到错误消息后,我想也许我需要将这些测试合并到一个测试中,如下所示。

describe('TodoApps', () => {
    beforeEach(() => cy.visit('/'));

    it('should display welcome message', () => {
    getGreeting().contains('Welcome to todos!');
  });

  it('should display todos', () => {
    getTodos().should(t => expect(t.length).equal(2));
    getAddTodoButton().click();
    getTodos().should(t => expect(t.length).equal(3));
  });
});
Run Code Online (Sandbox Code Playgroud)

我在 Node 中仍然遇到同样的错误,并且不知道我做错了什么。在开始该项目之前,我更新了node,npmangular cli. 我下载了Angular ConsoleVS Code但遇到了问题,所以我一直在使用节点终端和括号。有人可以帮忙吗?

小智 6

如果您在 Windows 中,则可以通过导航到以下地址来解决此验证超时问题:

'C:\Users\<user>\AppData\Local\Cypress\Cache\3.4.0\Cypress'
Run Code Online (Sandbox Code Playgroud)

然后双击 Cypress.exe。之后关闭它并返回到您的IDE或终端并重做引发错误的原因