小编loo*_*e96的帖子

如何在 Cypress 中使用模块“fs”?

我想从本地存储库导入 JSON 数据。

var fs = require('fs');
var data = fs.readFileSync('./profile.json', 'utf8');
console.log(data);

...
Run Code Online (Sandbox Code Playgroud)

然而Cypress出现了这个错误:

在此输入图像描述

这是我的 cypress 项目中的 package.json。

{
  "name": "cypress_test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "npx cypress run",
    "clean-reports": "rm -rf cypress/reports",
    "merge-report": "npx mochawesome-merge --reportDir cypress/reports/separate-reports cypress/reports/full_report.json",
    "generate-report": "npx mochawesome-report-generator --reportDir cypress/reports cypress/reports/full_report.json",
    "after:tests": "npm run merge-report; npm run generate-report",
    "cypress": "npm run clean-reports; npm run test; npm run after:tests"
  },
  "keywords": [],
  "type": "module",
  "author": "",
  "license": "ISC",
  "dependencies": {
    "@cypress/webpack-preprocessor": "^5.4.1", …
Run Code Online (Sandbox Code Playgroud)

javascript node.js cypress

18
推荐指数
1
解决办法
1万
查看次数

如何使用 Cypress 测试“HOVER”(.trigger('mouseover') 不起作用)

我想知道是否可以使用赛普拉斯测试可覆盖的下拉菜单栏。

例如,当您访问 Ebay( https://www.ebay.com ) 时,您会在页面右上角看到警报图标,如果您将鼠标悬停在该元素上,则会出现登录通知框出现。

这是我的代码,我按照赛普拉斯告诉我的去做,但我收到了一个错误,例如......

AssertionError 重试超时:期望找到元素:#ghn-err,但从未找到它。

 it('ebay hover test', () => {
        cy.visit('https://www.ebay.com')
        // 1. alert icon hover test.
        cy.get('#gh-Alerts-i').trigger('mouseover')
        cy.get('#ghn-err').should('be.visible')
        // 2. This is my another test.
        // cy.get('#gh-eb-My > .gh-menu > .gh-eb-li-a > .gh-sprRetina').trigger('mouseover')
        //cy.get('#gh-eb-My-o > .gh-eb-oa thrd').should('be.visible')
    })

Run Code Online (Sandbox Code Playgroud)

javascript testautomationfx cypress

8
推荐指数
2
解决办法
2万
查看次数

类型“AxiosResponse<any>”上不存在属性“blob”

我一直在使用 React/Typescript 项目处理文件下载链接,并遇到了这个问题。

     axios({
            method: "post",
            url: "http://localhost:8080/test",
            data: bodyFormData,
            headers: { "Content-Type": "multipart/form-data" },
            responseType: 'blob',
        })
            .then(res => res.blob())
            .then(blob => {
                const url = window.URL.createObjectURL(blob);
                const a = document.createElement('a');
                a.style.display = 'none';
                a.href = url;
                // the filename you want
                a.download = 'test.xml';
                document.body.appendChild(a);
                a.click();
                window.URL.revokeObjectURL(url);
                alert('your file has downloaded!')
            }).catch(function (e) {
                //handle error
                console.log(e);
            })
Run Code Online (Sandbox Code Playgroud)

参考:通过jQuery.Ajax下载文件

当我尝试这样做时,Typescript 声称出现错误。我还尝试将 res.blob() 更改为 res.data.blob() 然后它不会声明错误,但浏览器控制台说 blob() 不是函数。

typescript reactjs axios

3
推荐指数
2
解决办法
7433
查看次数